From d47cee4fc3f4df2c422c0d881cbd0a9a8e7336c5 Mon Sep 17 00:00:00 2001 From: Segue Date: Fri, 18 Oct 2024 21:18:11 +0800 Subject: [PATCH 01/33] Merge main (#589) Co-authored-by: GingerLiu123 --- bindings/bin/distribute_deployed.hex | 2 +- bindings/bin/l1staking_deployed.hex | 2 +- bindings/bindings/distribute.go | 2 +- bindings/bindings/distribute_more.go | 2 +- bindings/bindings/l1staking.go | 160 +++++++++++++- bindings/bindings/l1staking_more.go | 2 +- contracts/contracts/l1/staking/IL1Staking.sol | 5 + contracts/contracts/l1/staking/L1Staking.sol | 11 +- contracts/contracts/l2/staking/Distribute.sol | 5 +- contracts/contracts/test/L2Staking.t.sol | 200 +++++++++++++++++- .../contracts/test/base/CommonTest.t.sol | 3 +- 11 files changed, 382 insertions(+), 12 deletions(-) diff --git a/bindings/bin/distribute_deployed.hex b/bindings/bin/distribute_deployed.hex index d1ea86eb7..de3304d96 100644 --- a/bindings/bin/distribute_deployed.hex +++ b/bindings/bin/distribute_deployed.hex @@ -1 +1 @@ -0x608060405234801561000f575f80fd5b5060043610610163575f3560e01c8063a766c529116100c7578063cd4281d01161007d578063d557714111610063578063d55771411461033e578063de6ac93314610365578063f2fde38b14610388575f80fd5b8063cd4281d014610304578063cdd0c50e1461032b575f80fd5b8063b809af0f116100ad578063b809af0f146102b6578063bf2dca0a146102c9578063c4d66de8146102f1575f80fd5b8063a766c5291461027b578063ac2ac640146102a3575f80fd5b8063807de4431161011c578063921ae9b811610102578063921ae9b8146102245780639889be5114610247578063996cba6814610268575f80fd5b8063807de443146101d45780638da5cb5b14610213575f80fd5b80635cf20c7b1161014c5780635cf20c7b146101a6578063715018a6146101b95780637f683ee3146101c1575f80fd5b8063273d8e82146101675780634eedab3214610191575b5f80fd5b61017a610175366004612514565b61039b565b60405161018892919061259f565b60405180910390f35b6101a461019f3660046125cc565b610729565b005b6101a46101b43660046125cc565b6107c7565b6101a46109a6565b6101a46101cf3660046125f4565b6109b9565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610188565b6033546001600160a01b03166101fb565b610237610232366004612514565b610bff565b6040516101889493929190612633565b61025a6102553660046126b2565b610f3c565b604051908152602001610188565b6101a46102763660046126e3565b611215565b61025a610289366004612514565b6001600160a01b03165f9081526067602052604090205490565b6101a46102b1366004612514565b611339565b6101a46102c4366004612729565b611482565b61025a6102d7366004612514565b6001600160a01b03165f9081526068602052604090205490565b6101a46102ff366004612514565b6115c0565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6101a46103393660046127d0565b61178a565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6103786103733660046126b2565b611aea565b6040519015158152602001610188565b6101a4610396366004612514565b611b15565b6001600160a01b0381165f90815260696020526040812060609182916103c090611ba5565b9050805f0361043c5760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f672072657761726400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b8067ffffffffffffffff8111156104555761045561286c565b60405190808252806020026020018201604052801561047e578160200160208202803683370190505b5092508067ffffffffffffffff81111561049a5761049a61286c565b6040519080825280602002602001820160405280156104c3578160200160208202803683370190505b5091505f5b6001600160a01b0385165f9081526069602052604090206104e890611ba5565b811015610722576001600160a01b0385165f9081526069602052604081206105109083611bae565b6001600160a01b038088165f908152606960209081526040808320938516835260039093019052908120549192509081908190805b6065548110156106bf576001600160a01b038087165f9081526066602090815260408083208584528252808320938f168352600490930190522054156105b9576001600160a01b038087165f9081526066602090815260408083208584528252808320938f16835260049093019052205492505b6001600160a01b0386165f9081526066602090815260408083208484529091529020600101541561060d576001600160a01b0386165f90815260666020908152604080832084845290915290206001015493505b6001600160a01b0386165f908152606660209081526040808320848452909152902054849061063d9085906128c6565b61064791906128dd565b6106519086612915565b6001600160a01b03808d165f908152606960209081526040808320938b16835260029093019052205490955060ff1680156106b357506001600160a01b03808c165f908152606960209081526040808320938a16835260049093019052205481145b6106bf57600101610545565b50848987815181106106d3576106d3612928565b60200260200101906001600160a01b031690816001600160a01b0316815250508388878151811061070657610706612928565b60209081029190910101525050600190930192506104c8915050565b5050915091565b610731611bc0565b6001600160a01b0382165f908152606760205260409020545b8181116107a8576001600160a01b0383165f908152606660209081526040808320848452909152812081815560018101829055906002820181818161078f82826124cb565b50505050505080806107a090612955565b91505061074a565b6001600160a01b039092165f9081526067602052604090209190915550565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461083f5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036108905760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806108ab575060016065546108a8919061298c565b82115b6108b557816108c4565b60016065546108c4919061298c565b90505f805b6001600160a01b0385165f9081526069602052604090206108e990611ba5565b81101561098f576001600160a01b0385165f9081526069602052604081206109119083611bae565b6001600160a01b0387165f9081526069602052604090209091506109359082611c1a565b801561096957506001600160a01b038087165f90815260696020908152604080832093851683526003909301905220548410155b1561098657610979818786611c3b565b6109839084612915565b92505b506001016108c9565b5080156109a0576109a0848261208f565b50505050565b6109ae611bc0565b6109b75f6122e5565b565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610a315760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0384165f9081526066602090815260408083208584529091529020600101819055811580610a8d57506001600160a01b038084165f908152606960209081526040808320938816835260039093019052205482145b15610b72576001600160a01b0384165f9081526066602090815260408083208584529091529020610ac1906002018461234e565b506001600160a01b038085165f90815260666020908152604080832086845282528083209387168352600490930181528282208290556069905220610b06908561234e565b506001600160a01b038381165f908152606960209081526040808320938816835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560038401825280832083905560049093019052908120556109a0565b6001600160a01b038084165f9081526069602090815260408083209388168352600290930190522080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001908117909155610bd0908361298c565b6001600160a01b038085165f908152606960209081526040808320938916835260049093019052205550505050565b6001600160a01b0381165f908152606960205260408120606091829182918291610c2890611ba5565b90505f8167ffffffffffffffff811115610c4457610c4461286c565b604051908082528060200260200182016040528015610c6d578160200160208202803683370190505b5090505f8267ffffffffffffffff811115610c8a57610c8a61286c565b604051908082528060200260200182016040528015610cb3578160200160208202803683370190505b5090505f8367ffffffffffffffff811115610cd057610cd061286c565b604051908082528060200260200182016040528015610cf9578160200160208202803683370190505b5090505f8467ffffffffffffffff811115610d1657610d1661286c565b604051908082528060200260200182016040528015610d3f578160200160208202803683370190505b5090505f5b85811015610f2b576001600160a01b038b165f908152606960205260409020610d6d9082611bae565b858281518110610d7f57610d7f612928565b60200260200101906001600160a01b031690816001600160a01b03168152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206002015f868381518110610dd857610dd8612928565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f9054906101000a900460ff16848281518110610e1e57610e1e612928565b9115156020928302919091018201526001600160a01b038c165f908152606990915260408120865160039091019190879084908110610e5f57610e5f612928565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054838281518110610e9957610e99612928565b60200260200101818152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206004015f868381518110610ede57610ede612928565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054828281518110610f1857610f18612928565b6020908102919091010152600101610d44565b509299919850965090945092505050565b6001600160a01b0381165f908152606960205260408120610f5c90611ba5565b5f03610fd05760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f67207265776172640000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b0382165f908152606960205260409020610ff19084611c1a565b6110625760405162461bcd60e51b8152602060048201526024808201527f6e6f2072656d61696e696e6720726577617264206f66207468652064656c656760448201527f61746565000000000000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b038083165f908152606960209081526040808320938716835260039093019052908120548190805b60655481101561120b576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205415611105576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205492505b6001600160a01b0387165f90815260666020908152604080832084845290915290206001015415611159576001600160a01b0387165f90815260666020908152604080832084845290915290206001015493505b6001600160a01b0387165f90815260666020908152604080832084845290915290205484906111899085906128c6565b61119391906128dd565b61119d9086612915565b6001600160a01b038088165f908152606960209081526040808320938c16835260029093019052205490955060ff1680156111ff57506001600160a01b038087165f908152606960209081526040808320938b16835260049093019052205481145b61120b57600101611091565b5050505092915050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461128d5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036112de5760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806112f9575060016065546112f6919061298c565b82115b6113035781611312565b6001606554611312919061298c565b90505f611320858584611c3b565b9050801561133257611332848261208f565b5050505050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146113b15760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0381165f908152606860205260409020546114155760405162461bcd60e51b815260206004820152601660248201527f6e6f20636f6d6d697373696f6e20746f20636c61696d000000000000000000006044820152606401610433565b6001600160a01b0381165f908152606860205260408120805491905561143b828261208f565b816001600160a01b03167f8e14daa5332205b1634040e1054e93d1f5396ec8bf0115d133b7fbaf4a52e4118260405161147691815260200190565b60405180910390a25050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146114fa5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0386165f9081526066602090815260408083208784529091529020600181018390556115309060020186612362565b506001600160a01b038087165f90815260666020908152604080832088845282528083209389168352600490930190522083905580156115b8576001600160a01b0385165f90815260696020526040902061158b9087612362565b506001600160a01b038086165f908152606960209081526040808320938a16835260039093019052208490555b505050505050565b5f54610100900460ff16158080156115de57505f54600160ff909116105b806115f75750303b1580156115f757505f5460ff166001145b6116695760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610433565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156116c5575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03821661171b5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e6572206164647265737300000000000000000000006044820152606401610433565b611724826122e5565b8015611786575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146118025760405162461bcd60e51b815260206004820152601c60248201527f6f6e6c79207265636f726420636f6e747261637420616c6c6f776564000000006044820152606401610433565b60658054905f61181183612955565b9190505550866001606554611826919061298c565b146118735760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642065706f636820696e646578000000000000000000000000006044820152606401610433565b828514801561188157508085145b6118cd5760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642064617461206c656e677468000000000000000000000000006044820152606401610433565b5f5b85811015611ae0578484828181106118e9576118e9612928565b9050602002013560665f89898581811061190557611905612928565b905060200201602081019061191a9190612514565b6001600160a01b0316815260208082019290925260409081015f9081208c825290925281209190915560669088888481811061195857611958612928565b905060200201602081019061196d9190612514565b6001600160a01b0316815260208082019290925260409081015f9081208b82529092529020600101541580156119a257505f88115b15611a635760665f8888848181106119bc576119bc612928565b90506020020160208101906119d19190612514565b6001600160a01b03166001600160a01b031681526020019081526020015f205f60018a6119fe919061298c565b81526020019081526020015f206001015460665f898985818110611a2457611a24612928565b9050602002016020810190611a399190612514565b6001600160a01b0316815260208082019290925260409081015f9081208c82529092529020600101555b828282818110611a7557611a75612928565b9050602002013560685f898985818110611a9157611a91612928565b9050602002016020810190611aa69190612514565b6001600160a01b03166001600160a01b031681526020019081526020015f205f828254611ad39190612915565b90915550506001016118cf565b5050505050505050565b6001600160a01b0382165f908152606960205260408120611b0b9083611c1a565b1590505b92915050565b611b1d611bc0565b6001600160a01b038116611b995760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610433565b611ba2816122e5565b50565b5f611b0f825490565b5f611bb98383612376565b9392505050565b6033546001600160a01b031633146109b75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610433565b6001600160a01b0381165f9081526001830160205260408120541515611bb9565b6001600160a01b0382165f908152606960205260408120611c5c9085611c1a565b611ca85760405162461bcd60e51b815260206004820152601360248201527f6e6f2072656d61696e696e6720726577617264000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190522054821015611d205760405162461bcd60e51b815260206004820152601260248201527f616c6c2072657761726420636c61696d656400000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190529081205481905b848111611f5d576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205415611dbf576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205491505b6001600160a01b0387165f90815260666020908152604080832084845290915290206001015415611e13576001600160a01b0387165f90815260666020908152604080832084845290915290206001015492505b6001600160a01b0387165f9081526066602090815260408083208484529091529020548390611e439084906128c6565b611e4d91906128dd565b611e579085612915565b6001600160a01b038088165f908152606960209081526040808320938c16835260029093019052205490945060ff168015611eb957506001600160a01b038087165f908152606960209081526040808320938b16835260049093019052205481145b15611f4b576001600160a01b0386165f908152606960205260409020611edf908861234e565b506001600160a01b038681165f908152606960209081526040808320938b16835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556003840182528083208390556004909301905290812055611f5d565b80611f5581612955565b915050611d4e565b50611f69846001612915565b6001600160a01b038087165f908152606960209081526040808320938b16835260039093018152828220939093556066909252812090611faa866001612915565b81526020019081526020015f206004015f866001600160a01b03166001600160a01b031681526020019081526020015f20545f03612030576001600160a01b0386165f9081526066602052604081208291612006876001612915565b815260208082019290925260409081015f9081206001600160a01b038a1682526004019092529020555b856001600160a01b0316856001600160a01b03167f7a84a08b02c91f3c62d572853f966fc799bbd121e8ad7833a4494ab8dcfcb404868660405161207e929190918252602082015260400190565b60405180910390a350509392505050565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561210c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612130919061299f565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156121ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121de91906129b6565b506040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561225c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612280919061299f565b90505f83118015612299575082612297828461298c565b145b6109a05760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610433565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f611bb9836001600160a01b03841661239c565b5f611bb9836001600160a01b03841661247f565b5f825f01828154811061238b5761238b612928565b905f5260205f200154905092915050565b5f8181526001830160205260408120548015612476575f6123be60018361298c565b85549091505f906123d19060019061298c565b9050818114612430575f865f0182815481106123ef576123ef612928565b905f5260205f200154905080875f01848154811061240f5761240f612928565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080612441576124416129d1565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050611b0f565b5f915050611b0f565b5f8181526001830160205260408120546124c457508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155611b0f565b505f611b0f565b5080545f8255905f5260205f2090810190611ba291905b808211156124f5575f81556001016124e2565b5090565b80356001600160a01b038116811461250f575f80fd5b919050565b5f60208284031215612524575f80fd5b611bb9826124f9565b5f815180845260208085019450602084015f5b838110156125655781516001600160a01b031687529582019590820190600101612540565b509495945050505050565b5f815180845260208085019450602084015f5b8381101561256557815187529582019590820190600101612583565b604081525f6125b1604083018561252d565b82810360208401526125c38185612570565b95945050505050565b5f80604083850312156125dd575f80fd5b6125e6836124f9565b946020939093013593505050565b5f805f8060808587031215612607575f80fd5b612610856124f9565b935061261e602086016124f9565b93969395505050506040820135916060013590565b608081525f612645608083018761252d565b8281036020848101919091528651808352878201928201905f5b8181101561267d57845115158352938301939183019160010161265f565b505084810360408601526126918188612570565b9250505082810360608401526126a78185612570565b979650505050505050565b5f80604083850312156126c3575f80fd5b6126cc836124f9565b91506126da602084016124f9565b90509250929050565b5f805f606084860312156126f5575f80fd5b6126fe846124f9565b925061270c602085016124f9565b9150604084013590509250925092565b8015158114611ba2575f80fd5b5f805f805f8060c0878903121561273e575f80fd5b612747876124f9565b9550612755602088016124f9565b945060408701359350606087013592506080870135915060a087013561277a8161271c565b809150509295509295509295565b5f8083601f840112612798575f80fd5b50813567ffffffffffffffff8111156127af575f80fd5b6020830191508360208260051b85010111156127c9575f80fd5b9250929050565b5f805f805f805f6080888a0312156127e6575f80fd5b87359650602088013567ffffffffffffffff80821115612804575f80fd5b6128108b838c01612788565b909850965060408a0135915080821115612828575f80fd5b6128348b838c01612788565b909650945060608a013591508082111561284c575f80fd5b506128598a828b01612788565b989b979a50959850939692959293505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082028115828204841417611b0f57611b0f612899565b5f82612910577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b80820180821115611b0f57611b0f612899565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361298557612985612899565b5060010190565b81810381811115611b0f57611b0f612899565b5f602082840312156129af575f80fd5b5051919050565b5f602082840312156129c6575f80fd5b8151611bb98161271c565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a +0x608060405234801561000f575f80fd5b5060043610610163575f3560e01c8063a766c529116100c7578063cd4281d01161007d578063d557714111610063578063d55771411461033e578063de6ac93314610365578063f2fde38b14610388575f80fd5b8063cd4281d014610304578063cdd0c50e1461032b575f80fd5b8063b809af0f116100ad578063b809af0f146102b6578063bf2dca0a146102c9578063c4d66de8146102f1575f80fd5b8063a766c5291461027b578063ac2ac640146102a3575f80fd5b8063807de4431161011c578063921ae9b811610102578063921ae9b8146102245780639889be5114610247578063996cba6814610268575f80fd5b8063807de443146101d45780638da5cb5b14610213575f80fd5b80635cf20c7b1161014c5780635cf20c7b146101a6578063715018a6146101b95780637f683ee3146101c1575f80fd5b8063273d8e82146101675780634eedab3214610191575b5f80fd5b61017a610175366004612512565b61039b565b60405161018892919061259d565b60405180910390f35b6101a461019f3660046125ca565b610729565b005b6101a46101b43660046125ca565b6107c7565b6101a46109a6565b6101a46101cf3660046125f2565b6109b9565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610188565b6033546001600160a01b03166101fb565b610237610232366004612512565b610bff565b6040516101889493929190612631565b61025a6102553660046126b0565b610f3c565b604051908152602001610188565b6101a46102763660046126e1565b611213565b61025a610289366004612512565b6001600160a01b03165f9081526067602052604090205490565b6101a46102b1366004612512565b611337565b6101a46102c4366004612727565b611480565b61025a6102d7366004612512565b6001600160a01b03165f9081526068602052604090205490565b6101a46102ff366004612512565b6115be565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6101a46103393660046127ce565b611788565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6103786103733660046126b0565b611ae8565b6040519015158152602001610188565b6101a4610396366004612512565b611b13565b6001600160a01b0381165f90815260696020526040812060609182916103c090611ba3565b9050805f0361043c5760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f672072657761726400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b8067ffffffffffffffff8111156104555761045561286a565b60405190808252806020026020018201604052801561047e578160200160208202803683370190505b5092508067ffffffffffffffff81111561049a5761049a61286a565b6040519080825280602002602001820160405280156104c3578160200160208202803683370190505b5091505f5b6001600160a01b0385165f9081526069602052604090206104e890611ba3565b811015610722576001600160a01b0385165f9081526069602052604081206105109083611bac565b6001600160a01b038088165f908152606960209081526040808320938516835260039093019052908120549192509081908190805b6065548110156106bf576001600160a01b038087165f9081526066602090815260408083208584528252808320938f168352600490930190522054156105b9576001600160a01b038087165f9081526066602090815260408083208584528252808320938f16835260049093019052205492505b6001600160a01b0386165f9081526066602090815260408083208484529091529020600101541561060d576001600160a01b0386165f90815260666020908152604080832084845290915290206001015493505b6001600160a01b0386165f908152606660209081526040808320848452909152902054849061063d9085906128c4565b61064791906128db565b6106519086612913565b6001600160a01b03808d165f908152606960209081526040808320938b16835260029093019052205490955060ff1680156106b357506001600160a01b03808c165f908152606960209081526040808320938a16835260049093019052205481145b6106bf57600101610545565b50848987815181106106d3576106d3612926565b60200260200101906001600160a01b031690816001600160a01b0316815250508388878151811061070657610706612926565b60209081029190910101525050600190930192506104c8915050565b5050915091565b610731611bbe565b6001600160a01b0382165f908152606760205260409020545b8181116107a8576001600160a01b0383165f908152606660209081526040808320848452909152812081815560018101829055906002820181818161078f82826124c9565b50505050505080806107a090612953565b91505061074a565b6001600160a01b039092165f9081526067602052604090209190915550565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461083f5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036108905760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806108ab575060016065546108a8919061298a565b82115b6108b557816108c4565b60016065546108c4919061298a565b90505f805b6001600160a01b0385165f9081526069602052604090206108e990611ba3565b81101561098f576001600160a01b0385165f9081526069602052604081206109119083611bac565b6001600160a01b0387165f9081526069602052604090209091506109359082611c18565b801561096957506001600160a01b038087165f90815260696020908152604080832093851683526003909301905220548410155b1561098657610979818786611c39565b6109839084612913565b92505b506001016108c9565b5080156109a0576109a0848261208d565b50505050565b6109ae611bbe565b6109b75f6122e3565b565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610a315760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0384165f9081526066602090815260408083208584529091529020600101819055811580610a8d57506001600160a01b038084165f908152606960209081526040808320938816835260039093019052205482145b15610b72576001600160a01b0384165f9081526066602090815260408083208584529091529020610ac1906002018461234c565b506001600160a01b038085165f90815260666020908152604080832086845282528083209387168352600490930181528282208290556069905220610b06908561234c565b506001600160a01b038381165f908152606960209081526040808320938816835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560038401825280832083905560049093019052908120556109a0565b6001600160a01b038084165f9081526069602090815260408083209388168352600290930190522080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001908117909155610bd0908361298a565b6001600160a01b038085165f908152606960209081526040808320938916835260049093019052205550505050565b6001600160a01b0381165f908152606960205260408120606091829182918291610c2890611ba3565b90505f8167ffffffffffffffff811115610c4457610c4461286a565b604051908082528060200260200182016040528015610c6d578160200160208202803683370190505b5090505f8267ffffffffffffffff811115610c8a57610c8a61286a565b604051908082528060200260200182016040528015610cb3578160200160208202803683370190505b5090505f8367ffffffffffffffff811115610cd057610cd061286a565b604051908082528060200260200182016040528015610cf9578160200160208202803683370190505b5090505f8467ffffffffffffffff811115610d1657610d1661286a565b604051908082528060200260200182016040528015610d3f578160200160208202803683370190505b5090505f5b85811015610f2b576001600160a01b038b165f908152606960205260409020610d6d9082611bac565b858281518110610d7f57610d7f612926565b60200260200101906001600160a01b031690816001600160a01b03168152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206002015f868381518110610dd857610dd8612926565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f9054906101000a900460ff16848281518110610e1e57610e1e612926565b9115156020928302919091018201526001600160a01b038c165f908152606990915260408120865160039091019190879084908110610e5f57610e5f612926565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054838281518110610e9957610e99612926565b60200260200101818152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206004015f868381518110610ede57610ede612926565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054828281518110610f1857610f18612926565b6020908102919091010152600101610d44565b509299919850965090945092505050565b6001600160a01b0381165f908152606960205260408120610f5c90611ba3565b5f03610fd05760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f67207265776172640000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b0382165f908152606960205260409020610ff19084611c18565b6110625760405162461bcd60e51b8152602060048201526024808201527f6e6f2072656d61696e696e6720726577617264206f66207468652064656c656760448201527f61746565000000000000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b038083165f9081526069602090815260408083209387168352600390930190529081205481905b60655481101561120a576001600160a01b038087165f9081526066602090815260408083208584528252808320938916835260049093019052205415611104576001600160a01b038087165f9081526066602090815260408083208584528252808320938916835260049093019052205491505b6001600160a01b0386165f90815260666020908152604080832084845290915290206001015415611158576001600160a01b0386165f90815260666020908152604080832084845290915290206001015492505b6001600160a01b0386165f90815260666020908152604080832084845290915290205483906111889084906128c4565b61119291906128db565b61119c9085612913565b6001600160a01b038087165f908152606960209081526040808320938b16835260029093019052205490945060ff1680156111fe57506001600160a01b038086165f908152606960209081526040808320938a16835260049093019052205481145b61120a57600101611090565b50505092915050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461128b5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036112dc5760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806112f7575060016065546112f4919061298a565b82115b6113015781611310565b6001606554611310919061298a565b90505f61131e858584611c39565b9050801561133057611330848261208d565b5050505050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146113af5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0381165f908152606860205260409020546114135760405162461bcd60e51b815260206004820152601660248201527f6e6f20636f6d6d697373696f6e20746f20636c61696d000000000000000000006044820152606401610433565b6001600160a01b0381165f9081526068602052604081208054919055611439828261208d565b816001600160a01b03167f8e14daa5332205b1634040e1054e93d1f5396ec8bf0115d133b7fbaf4a52e4118260405161147491815260200190565b60405180910390a25050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146114f85760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0386165f90815260666020908152604080832087845290915290206001810183905561152e9060020186612360565b506001600160a01b038087165f90815260666020908152604080832088845282528083209389168352600490930190522083905580156115b6576001600160a01b0385165f9081526069602052604090206115899087612360565b506001600160a01b038086165f908152606960209081526040808320938a16835260039093019052208490555b505050505050565b5f54610100900460ff16158080156115dc57505f54600160ff909116105b806115f55750303b1580156115f557505f5460ff166001145b6116675760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610433565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156116c3575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0382166117195760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e6572206164647265737300000000000000000000006044820152606401610433565b611722826122e3565b8015611784575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146118005760405162461bcd60e51b815260206004820152601c60248201527f6f6e6c79207265636f726420636f6e747261637420616c6c6f776564000000006044820152606401610433565b60658054905f61180f83612953565b9190505550866001606554611824919061298a565b146118715760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642065706f636820696e646578000000000000000000000000006044820152606401610433565b828514801561187f57508085145b6118cb5760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642064617461206c656e677468000000000000000000000000006044820152606401610433565b5f5b85811015611ade578484828181106118e7576118e7612926565b9050602002013560665f89898581811061190357611903612926565b90506020020160208101906119189190612512565b6001600160a01b0316815260208082019290925260409081015f9081208c825290925281209190915560669088888481811061195657611956612926565b905060200201602081019061196b9190612512565b6001600160a01b0316815260208082019290925260409081015f9081208b82529092529020600101541580156119a057505f88115b15611a615760665f8888848181106119ba576119ba612926565b90506020020160208101906119cf9190612512565b6001600160a01b03166001600160a01b031681526020019081526020015f205f60018a6119fc919061298a565b81526020019081526020015f206001015460665f898985818110611a2257611a22612926565b9050602002016020810190611a379190612512565b6001600160a01b0316815260208082019290925260409081015f9081208c82529092529020600101555b828282818110611a7357611a73612926565b9050602002013560685f898985818110611a8f57611a8f612926565b9050602002016020810190611aa49190612512565b6001600160a01b03166001600160a01b031681526020019081526020015f205f828254611ad19190612913565b90915550506001016118cd565b5050505050505050565b6001600160a01b0382165f908152606960205260408120611b099083611c18565b1590505b92915050565b611b1b611bbe565b6001600160a01b038116611b975760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610433565b611ba0816122e3565b50565b5f611b0d825490565b5f611bb78383612374565b9392505050565b6033546001600160a01b031633146109b75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610433565b6001600160a01b0381165f9081526001830160205260408120541515611bb7565b6001600160a01b0382165f908152606960205260408120611c5a9085611c18565b611ca65760405162461bcd60e51b815260206004820152601360248201527f6e6f2072656d61696e696e6720726577617264000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190522054821015611d1e5760405162461bcd60e51b815260206004820152601260248201527f616c6c2072657761726420636c61696d656400000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190529081205481905b848111611f5b576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205415611dbd576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205491505b6001600160a01b0387165f90815260666020908152604080832084845290915290206001015415611e11576001600160a01b0387165f90815260666020908152604080832084845290915290206001015492505b6001600160a01b0387165f9081526066602090815260408083208484529091529020548390611e419084906128c4565b611e4b91906128db565b611e559085612913565b6001600160a01b038088165f908152606960209081526040808320938c16835260029093019052205490945060ff168015611eb757506001600160a01b038087165f908152606960209081526040808320938b16835260049093019052205481145b15611f49576001600160a01b0386165f908152606960205260409020611edd908861234c565b506001600160a01b038681165f908152606960209081526040808320938b16835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556003840182528083208390556004909301905290812055611f5b565b80611f5381612953565b915050611d4c565b50611f67846001612913565b6001600160a01b038087165f908152606960209081526040808320938b16835260039093018152828220939093556066909252812090611fa8866001612913565b81526020019081526020015f206004015f866001600160a01b03166001600160a01b031681526020019081526020015f20545f0361202e576001600160a01b0386165f9081526066602052604081208291612004876001612913565b815260208082019290925260409081015f9081206001600160a01b038a1682526004019092529020555b856001600160a01b0316856001600160a01b03167f7a84a08b02c91f3c62d572853f966fc799bbd121e8ad7833a4494ab8dcfcb404868660405161207c929190918252602082015260400190565b60405180910390a350509392505050565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561210a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061212e919061299d565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156121b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121dc91906129b4565b506040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561225a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061227e919061299d565b90505f83118015612297575082612295828461298a565b145b6109a05760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610433565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f611bb7836001600160a01b03841661239a565b5f611bb7836001600160a01b03841661247d565b5f825f01828154811061238957612389612926565b905f5260205f200154905092915050565b5f8181526001830160205260408120548015612474575f6123bc60018361298a565b85549091505f906123cf9060019061298a565b905081811461242e575f865f0182815481106123ed576123ed612926565b905f5260205f200154905080875f01848154811061240d5761240d612926565b5f918252602080832090910192909255918252600188019052604090208390555b855486908061243f5761243f6129cf565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050611b0d565b5f915050611b0d565b5f8181526001830160205260408120546124c257508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155611b0d565b505f611b0d565b5080545f8255905f5260205f2090810190611ba091905b808211156124f3575f81556001016124e0565b5090565b80356001600160a01b038116811461250d575f80fd5b919050565b5f60208284031215612522575f80fd5b611bb7826124f7565b5f815180845260208085019450602084015f5b838110156125635781516001600160a01b03168752958201959082019060010161253e565b509495945050505050565b5f815180845260208085019450602084015f5b8381101561256357815187529582019590820190600101612581565b604081525f6125af604083018561252b565b82810360208401526125c1818561256e565b95945050505050565b5f80604083850312156125db575f80fd5b6125e4836124f7565b946020939093013593505050565b5f805f8060808587031215612605575f80fd5b61260e856124f7565b935061261c602086016124f7565b93969395505050506040820135916060013590565b608081525f612643608083018761252b565b8281036020848101919091528651808352878201928201905f5b8181101561267b57845115158352938301939183019160010161265d565b5050848103604086015261268f818861256e565b9250505082810360608401526126a5818561256e565b979650505050505050565b5f80604083850312156126c1575f80fd5b6126ca836124f7565b91506126d8602084016124f7565b90509250929050565b5f805f606084860312156126f3575f80fd5b6126fc846124f7565b925061270a602085016124f7565b9150604084013590509250925092565b8015158114611ba0575f80fd5b5f805f805f8060c0878903121561273c575f80fd5b612745876124f7565b9550612753602088016124f7565b945060408701359350606087013592506080870135915060a08701356127788161271a565b809150509295509295509295565b5f8083601f840112612796575f80fd5b50813567ffffffffffffffff8111156127ad575f80fd5b6020830191508360208260051b85010111156127c7575f80fd5b9250929050565b5f805f805f805f6080888a0312156127e4575f80fd5b87359650602088013567ffffffffffffffff80821115612802575f80fd5b61280e8b838c01612786565b909850965060408a0135915080821115612826575f80fd5b6128328b838c01612786565b909650945060608a013591508082111561284a575f80fd5b506128578a828b01612786565b989b979a50959850939692959293505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082028115828204841417611b0d57611b0d612897565b5f8261290e577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b80820180821115611b0d57611b0d612897565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361298357612983612897565b5060010190565b81810381811115611b0d57611b0d612897565b5f602082840312156129ad575f80fd5b5051919050565b5f602082840312156129c4575f80fd5b8151611bb78161271a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a diff --git a/bindings/bin/l1staking_deployed.hex b/bindings/bin/l1staking_deployed.hex index 1d6c0a947..401476f33 100644 --- a/bindings/bin/l1staking_deployed.hex +++ b/bindings/bin/l1staking_deployed.hex @@ -1 +1 @@ -0x6080604052600436106102ed575f3560e01c80637a9262a211610186578063a4f209b0116100dc578063d096c3c611610087578063df15503311610062578063df155033146108ca578063e2a6ad5f14610901578063f2fde38b14610920575f80fd5b8063d096c3c614610855578063d51c90a914610874578063dd4785f514610889575f80fd5b8063bfa02ba9116100b7578063bfa02ba9146107f8578063c7cd469a14610817578063cde4cd1114610836575f80fd5b8063a4f209b0146107a5578063ab8c53dc146107c4578063ae81de53146107d9575f80fd5b80639168ae721161013c5780639d48f417116101175780639d48f417146107465780639fb82db914610772578063a3066aab14610786575f80fd5b80639168ae72146106b7578063927ede2d146106e55780639b19251a14610718575f80fd5b8063831cfb581161016c578063831cfb58146106485780638a565ac31461067b5780638da5cb5b1461069a575f80fd5b80637a9262a2146105fd5780638142951a14610629575f80fd5b806341de239b11610246578063692c565b116101f157806374fe27b7116101cc57806374fe27b71461057d578063797adbde146105a35780637a4e87c3146105c2575f80fd5b8063692c565b1461051b5780636f1e85331461054a578063715018a614610569575f80fd5b80634d64903a116102215780634d64903a146104d257806352d472eb146104e757806368015791146104fc575f80fd5b806341de239b1461047d57806343352d611461049257806345bc4d10146104b3575f80fd5b8063320ff860116102a65780633cb747bf116102815780633cb747bf146104235780633ccfd60b146104555780633ee2a1f914610469575f80fd5b8063320ff860146103a757806335928991146103c65780633a9bbede146103e5575f80fd5b80632a28e5a3116102d65780632a28e5a31461032f5780632e407a6f14610344578063303afb9e14610370575f80fd5b80630d13fd7b146102f15780632108db351461031a575b5f80fd5b3480156102fc575f80fd5b506103076101a65481565b6040519081526020015b60405180910390f35b348015610325575f80fd5b50610307609c5481565b61034261033d36600461333a565b61093f565b005b34801561034f575f80fd5b5061030761035e366004613394565b6101a16020525f908152604090205481565b34801561037b575f80fd5b5061038f61038a3660046133b4565b610d3a565b6040516001600160a01b039091168152602001610311565b3480156103b2575f80fd5b506103426103c13660046133cb565b610d59565b3480156103d1575f80fd5b506103426103e03660046133b4565b611074565b3480156103f0575f80fd5b506104136103ff366004613394565b609f6020525f908152604090205460ff1681565b6040519015158152602001610311565b34801561042e575f80fd5b507f000000000000000000000000000000000000000000000000000000000000000061038f565b348015610460575f80fd5b50610342611121565b348015610474575f80fd5b506103426112ed565b348015610488575f80fd5b5061030760995481565b34801561049d575f80fd5b506104a66112ff565b6040516103119190613473565b3480156104be575f80fd5b506103076104cd3660046133b4565b611345565b3480156104dd575f80fd5b5061030760985481565b3480156104f2575f80fd5b50610307609a5481565b348015610507575f80fd5b50610413610516366004613394565b61164b565b348015610526575f80fd5b506104136105353660046133b4565b6101a46020525f908152604090205460ff1681565b348015610555575f80fd5b50610413610564366004613394565b6116e6565b348015610574575f80fd5b5061034261175f565b348015610588575f80fd5b506104136105973660046134f5565b60019695505050505050565b3480156105ae575f80fd5b5061038f6105bd3660046133b4565b611770565b3480156105cd575f80fd5b506104136105dc36600461359b565b80516020818301810180516101a38252928201919093012091525460ff1681565b348015610608575f80fd5b50610307610617366004613394565b6101a56020525f908152604090205481565b348015610634575f80fd5b506103426106433660046135d5565b611799565b348015610653575f80fd5b5061038f7f000000000000000000000000000000000000000000000000000000000000000081565b348015610686575f80fd5b506103426106953660046133b4565b611c5b565b3480156106a5575f80fd5b506033546001600160a01b031661038f565b3480156106c2575f80fd5b506106d66106d1366004613394565b611cfe565b60405161031193929190613670565b3480156106f0575f80fd5b5061038f7f000000000000000000000000000000000000000000000000000000000000000081565b348015610723575f80fd5b50610413610732366004613394565b609e6020525f908152604090205460ff1681565b348015610751575f80fd5b506107656107603660046133b4565b611db1565b60405161031191906136a0565b34801561077d575f80fd5b50610765611ece565b348015610791575f80fd5b506103426107a0366004613394565b61207c565b3480156107b0575f80fd5b506103426107bf3660046133b4565b6121ac565b3480156107cf575f80fd5b50610307609d5481565b3480156107e4575f80fd5b506103426107f33660046133b4565b61225c565b348015610803575f80fd5b5060975461038f906001600160a01b031681565b348015610822575f80fd5b506103426108313660046136ec565b6122ff565b348015610841575f80fd5b50610342610850366004613394565b6124a0565b348015610860575f80fd5b5061030761086f366004613394565b61250e565b34801561087f575f80fd5b50610307609b5481565b348015610894575f80fd5b506108b86108a3366004613394565b61019f6020525f908152604090205460ff1681565b60405160ff9091168152602001610311565b3480156108d5575f80fd5b506104136108e4366004613394565b6001600160a01b03165f9081526101a16020526040902054151590565b34801561090c575f80fd5b5061030761091b366004613753565b612588565b34801561092b575f80fd5b5061034261093a366004613394565b6126ba565b335f818152609e602052604090205460ff166109a25760405162461bcd60e51b815260206004820152601060248201527f6e6f7420696e2077686974656c6973740000000000000000000000000000000060448201526064015b60405180910390fd5b335f9081526101a260205260409020546001600160a01b031615610a085760405162461bcd60e51b815260206004820152601260248201527f616c7265616479207265676973746572656400000000000000000000000000006044820152606401610999565b8215801590610a2657505f8381526101a4602052604090205460ff16155b610a725760405162461bcd60e51b815260206004820152601960248201527f696e76616c69642074656e6465726d696e74207075626b6579000000000000006044820152606401610999565b8151610100148015610aa557506101a382604051610a909190613792565b9081526040519081900360200190205460ff16155b610af15760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420626c73207075626b657900000000000000000000000000006044820152606401610999565b6098543414610b425760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c756500000000000000000000006044820152606401610999565b6040518060600160405280610b543390565b6001600160a01b03908116825260208083018790526040928301869052335f9081526101a28252839020845181547fffffffffffffffffffffffff00000000000000000000000000000000000000001693169290921782558301516001820155908201516002820190610bc79082613842565b50905050610bda610bd53390565b612747565b60016101a383604051610bed9190613792565b90815260408051918290036020908101909220805493151560ff199485161790555f8681526101a49092529020805490911660011790557fb9c7babb56df9f2da4a30811a6c778e4e68af88b72712d56cf62c5516e20e199610c4c3390565b8484604051610c5d93929190613670565b60405180910390a1335f9081526101a26020908152604091829020825160608101845281546001600160a01b03168152600182015492810192909252600281018054610d359484019190610cb0906137ad565b80601f0160208091040260200160405190810160405280929190818152602001828054610cdc906137ad565b8015610d275780601f10610cfe57610100808354040283529160200191610d27565b820191905f5260205f20905b815481529060010190602001808311610d0a57829003601f168201915b505050505081525050612855565b505050565b60a08160ff8110610d49575f80fd5b01546001600160a01b0316905081565b610d6161297d565b5f5b815181101561103057610d8e828281518110610d8157610d81613940565b602002602001015161164b565b610e005760405162461bcd60e51b815260206004820152602160248201527f6f6e6c7920616374697665207374616b65722063616e2062652072656d6f766560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610999565b6101a55f838381518110610e1657610e16613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20545f14610e8c5760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e670000000000000000000000000000000000000000006044820152606401610999565b609954610e99904361399a565b6101a55f848481518110610eaf57610eaf613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2081905550610efc828281518110610eef57610eef613940565b60200260200101516129d7565b818181518110610f0e57610f0e613940565b60200260200101516001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d56101a55f858581518110610f5657610f56613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054604051610f8d91815260200190565b60405180910390a2609e5f838381518110610faa57610faa613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f848481518110610ff757610ff7613940565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610d63565b507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161106091906136a0565b60405180910390a161107181612ac9565b50565b61107c61297d565b5f8111801561108e57506101a6548114155b6110da5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c7565006044820152606401610999565b6101a680549082905560408051828152602081018490527f36f971a40478225aeb80cfbf5e80306e8cb76d3bf7d56fdc5e490945cddb7d5591015b60405180910390a15050565b61112a3361164b565b6111765760405162461bcd60e51b815260206004820152601260248201527f6f6e6c7920616374697665207374616b657200000000000000000000000000006044820152606401610999565b335f9081526101a56020526040902054156111d35760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e670000000000000000000000000000000000000000006044820152606401610999565b6099546111e0904361399a565b335f8181526101a560205260409020919091556111fc906129d7565b335f8181526101a560209081526040918290205491519182527f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5910160405180910390a2335f908152609e60209081526040808320805460ff19908116909155609f83528184208054909116600190811790915581518181528083019092529091828101908036833701905050905033815f8151811061129e5761129e613940565b60200260200101906001600160a01b031690816001600160a01b0316815250507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161106091906136a0565b6112f561297d565b6112fd612bc1565b565b611307613207565b60408051611fe08101918290529060a09060ff9082845b81546001600160a01b0316815260019091019060200180831161131e575050505050905090565b6097545f906001600160a01b0316336001600160a01b0316146113aa5760405162461bcd60e51b815260206004820152601460248201527f6f6e6c7920726f6c6c757020636f6e74726163740000000000000000000000006044820152606401610999565b6113b2612e8c565b5f6113bc83611db1565b90505f805b825181101561156e575f6101a55f8584815181106113e1576113e1613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20541115611464576101a55f84838151811061142557611425613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f90556098548261145d919061399a565b9150611566565b61149e83828151811061147957611479613940565b60200260200101516001600160a01b03165f9081526101a16020526040902054151590565b611566576098546114af908361399a565b91506114c6838281518110610eef57610eef613940565b609e5f8483815181106114db576114db613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f85848151811061152857611528613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b6001016113c1565b505f6064609a548361158091906139ad565b61158a91906139c4565b905061159681836139fc565b609d5f8282546115a6919061399a565b90915550506097546115c1906001600160a01b031682612ee5565b7f654f4a61849f1b3ad10abb283d27f02d5fece7b820acc5a3b874713b58748b5a836040516115f091906136a0565b60405180910390a17f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848360405161162791906136a0565b60405180910390a161163883612ac9565b925050506116466001606555565b919050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361167457505f919050565b6001600160a01b0382165f81815261019f602052604090205460a09061169f9060019060ff16613a0f565b60ff1660ff81106116b2576116b2613940565b01546001600160a01b03161480156116e057506001600160a01b0382165f9081526101a16020526040902054155b92915050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361170f57505f919050565b6001600160a01b0382165f81815261019f602052604090205460a09061173a9060019060ff16613a0f565b60ff1660ff811061174d5761174d613940565b01546001600160a01b03161492915050565b61176761297d565b6112fd5f612f95565b6101a08181548110611780575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f54610100900460ff16158080156117b757505f54600160ff909116105b806117d05750303b1580156117d057505f5460ff166001145b6118425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610999565b5f805460ff191660011790558015611880575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0388166118d65760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420726f6c6c757020636f6e74726163740000000000000000006044820152606401610999565b5f87116119255760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c756500000000000000000000006044820152606401610999565b5f86116119745760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c7565006044820152606401610999565b5f85116119c35760405162461bcd60e51b815260206004820152601e60248201527f696e76616c6964207769746864726177616c206c6f636b20626c6f636b7300006044820152606401610999565b5f8311611a125760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420676173206c696d697420616464207374616b6572000000006044820152606401610999565b5f8211611a615760405162461bcd60e51b815260206004820181905260248201527f696e76616c696420676173206c696d69742072656d6f7665207374616b6572736044820152606401610999565b5f84118015611a71575060648411155b611ae25760405162461bcd60e51b8152602060048201526024808201527f696e76616c6964206368616c6c656e676572207265776172642070657263656e60448201527f74616765000000000000000000000000000000000000000000000000000000006064820152608401610999565b611aea612ffe565b611af2613082565b609780547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038a16179055609a84905560988790556101a68690556099859055609b839055609c829055604080515f8152602081018590527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910160405180910390a1604080515f8152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910160405180910390a1604080515f8152602081018690527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910160405180910390a18015611c51575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b611c6361297d565b5f81118015611c745750609c548114155b611cc05760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d697400000000000000000000006044820152606401610999565b609c80549082905560408051828152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f79101611115565b6101a26020525f90815260409020805460018201546002830180546001600160a01b03909316939192611d30906137ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611d5c906137ad565b8015611da75780601f10611d7e57610100808354040283529160200191611da7565b820191905f5260205f20905b815481529060010190602001808311611d8a57829003601f168201915b5050505050905083565b6060600182901c5f5b8115611de157611dcb81600161399a565b9050611dd86001836139fc565b82169150611dba565b8067ffffffffffffffff811115611dfa57611dfa613270565b604051908082528060200260200182016040528015611e23578160200160208202803683370190505b5092505f60015b60ff8160ff1611611ec557600160ff82161b861615611eb35760a0611e50600183613a0f565b60ff1660ff8110611e6357611e63613940565b015485516001600160a01b0390911690869084908110611e8557611e85613940565b6001600160a01b0390921660209283029190910190910152611ea882600161399a565b915082821015611ec5575b80611ebd81613a28565b915050611e2a565b50505050919050565b6040805160ff80825261200082019092526060915f91829160208201611fe0803683370190505090505f5b60ff811015611f9d575f60a08260ff8110611f1657611f16613940565b01546001600160a01b031614801590611f5e57506101a15f60a08360ff8110611f4157611f41613940565b01546001600160a01b0316815260208101919091526040015f2054155b15611f955782611f6d81613a46565b9350506001828281518110611f8457611f84613940565b911515602092830291909101909101525b600101611ef9565b505f8267ffffffffffffffff811115611fb857611fb8613270565b604051908082528060200260200182016040528015611fe1578160200160208202803683370190505b5090505f805b60ff8110156120725783818151811061200257612002613940565b60200260200101511561206a5760a08160ff811061202257612022613940565b015483516001600160a01b039091169084908490811061204457612044613940565b6001600160a01b03909216602092830291909101909101528161206681613a46565b9250505b600101611fe7565b5090949350505050565b612084612e8c565b335f9081526101a560205260409020546120e05760405162461bcd60e51b815260206004820152601460248201527f7769746864726177616c206e6f742065786973740000000000000000000000006044820152606401610999565b335f9081526101a5602052604090205443101561213f5760405162461bcd60e51b815260206004820152601160248201527f7769746864726177616c206c6f636b65640000000000000000000000000000006044820152606401610999565b335f9081526101a56020526040812055612157612bc1565b604080516001600160a01b0383168152905133917f89309c9b2aeaffbdce717113df9427298b20448c05919bf889e05f8c3094254b919081900360200190a26121a281609854612ee5565b6110716001606555565b6121b461297d565b5f811180156121c4575060648111155b80156121d25750609a548114155b61221e5760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642070657263656e74616765000000000000006044820152606401610999565b609a80549082905560408051828152602081018490527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba9101611115565b61226461297d565b5f811180156122755750609b548114155b6122c15760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d697400000000000000000000006044820152606401610999565b609b80549082905560408051828152602081018490527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c9101611115565b61230761297d565b5f5b838110156123ff57609f5f86868481811061232657612326613940565b905060200201602081019061233b9190613394565b6001600160a01b0316815260208101919091526040015f205460ff16156123a45760405162461bcd60e51b815260206004820152600f60248201527f696e2072656d6f766564206c69737400000000000000000000000000000000006044820152606401610999565b6001609e5f8787858181106123bb576123bb613940565b90506020020160208101906123d09190613394565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101612309565b505f5b8181101561245c57609e5f84848481811061241f5761241f613940565b90506020020160208101906124349190613394565b6001600160a01b0316815260208101919091526040015f20805460ff19169055600101612402565b507fe375867e538b40218c1b3db2ccceaf875eb073e38b510449e6088c1539ac8622848484846040516124929493929190613ac2565b60405180910390a150505050565b6124a861297d565b6124b0612e8c565b609d546124bd8282612ee5565b5f609d55604080516001600160a01b0384168152602081018390527fa1fefb6c5328a92a416e321ed50997303fe7135fd88c28b0592b21ce42b5cdd9910160405180910390a1506110716001606555565b5f612518826116e6565b6125645760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b65720000000000000000000000000000000000006044820152606401610999565b506001600160a01b03165f90815261019f6020526040902054600160ff9091161b90565b5f60ff8211156125da5760405162461bcd60e51b815260206004820152601c60248201527f7374616b657273206c656e677468206f7574206f6620626f756e6473000000006044820152606401610999565b5f5b828110156126b35761260e8484838181106125f9576125f9613940565b90506020020160208101906105649190613394565b61265a5760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b65720000000000000000000000000000000000006044820152606401610999565b61019f5f85858481811061267057612670613940565b90506020020160208101906126859190613394565b6001600160a01b0316815260208101919091526040015f2054600160ff90911681901b9290921791016125dc565b5092915050565b6126c261297d565b6001600160a01b03811661273e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610999565b61107181612f95565b5f5b60ff8160ff16101561280c575f60a060ff80841690811061276c5761276c613940565b01546001600160a01b031603612804578160a08260ff1660ff811061279357612793613940565b0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556127d5816001613af3565b6001600160a01b03929092165f90815261019f60205260409020805460ff191660ff9093169290921790915550565b600101612749565b5060405162461bcd60e51b815260206004820152600960248201527f736c6f742066756c6c00000000000000000000000000000000000000000000006044820152606401610999565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f846040516024016128b79190613b0c565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f6d454d5100000000000000000000000000000000000000000000000000000000179052609b5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261294d9493929190600401613b43565b5f604051808303815f87803b158015612964575f80fd5b505af1158015612976573d5f803e3d5ffd5b5050505050565b6033546001600160a01b031633146112fd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b6001600160a01b0381165f9081526101a1602052604090205415612a3d5760405162461bcd60e51b815260206004820152601560248201527f616c726561647920696e2064656c6574654c69737400000000000000000000006044820152606401610999565b6101a080546001810182555f919091527f7980fe0f714a613298681d64b7b8ffa7b148338dd52429f307d72798d5c317c40180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316179055609954612aad904361399a565b6001600160a01b039091165f9081526101a16020526040902055565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f84604051602401612b2b91906136a0565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0be67fcc00000000000000000000000000000000000000000000000000000000179052609c5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261294d9493929190600401613b43565b5f5b6101a05481101561107157436101a15f6101a08481548110612be757612be7613940565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205411612e7a5760a0600161019f5f6101a08581548110612c2c57612c2c613940565b5f9182526020808320909101546001600160a01b03168352820192909252604001902054612c5d919060ff16613a0f565b60ff1660ff8110612c7057612c70613940565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556101a0805461019f915f9184908110612cb257612cb2613940565b5f9182526020808320909101546001600160a01b031683528201929092526040018120805460ff191690556101a080546101a292919084908110612cf857612cf8613940565b5f9182526020808320909101546001600160a01b03168352820192909252604001812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590612d566002830182613226565b50506101a15f6101a08381548110612d7057612d70613940565b5f9182526020808320909101546001600160a01b031683528201929092526040018120556101a08054612da5906001906139fc565b81548110612db557612db5613940565b5f918252602090912001546101a080546001600160a01b039092169183908110612de157612de1613940565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506101a0805480612e1e57612e1e613b7b565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055019055612bc3565b80612e8481613a46565b915050612bc3565b600260655403612ede5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610999565b6002606555565b8015612f8a575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114612f34576040519150601f19603f3d011682016040523d82523d5f602084013e612f39565b606091505b5050905080610d355760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610999565b5050565b6001606555565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff1661307a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b6112fd613106565b5f54610100900460ff166130fe5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b6112fd61318b565b5f54610100900460ff166131825760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b6112fd33612f95565b5f54610100900460ff16612f8e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b60405180611fe0016040528060ff906020820280368337509192915050565b508054613232906137ad565b5f825580601f10613241575050565b601f0160209004905f5260205f209081019061107191905b8082111561326c575f8155600101613259565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156132c6576132c6613270565b604052919050565b5f82601f8301126132dd575f80fd5b813567ffffffffffffffff8111156132f7576132f7613270565b61330a6020601f19601f8401160161329d565b81815284602083860101111561331e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f806040838503121561334b575f80fd5b82359150602083013567ffffffffffffffff811115613368575f80fd5b613374858286016132ce565b9150509250929050565b80356001600160a01b0381168114611646575f80fd5b5f602082840312156133a4575f80fd5b6133ad8261337e565b9392505050565b5f602082840312156133c4575f80fd5b5035919050565b5f60208083850312156133dc575f80fd5b823567ffffffffffffffff808211156133f3575f80fd5b818501915085601f830112613406575f80fd5b81358181111561341857613418613270565b8060051b915061342984830161329d565b8181529183018401918481019088841115613442575f80fd5b938501935b83851015613467576134588561337e565b82529385019390850190613447565b98975050505050505050565b611fe0810181835f5b60ff8110156134a45781516001600160a01b031683526020928301929091019060010161347c565b50505092915050565b5f8083601f8401126134bd575f80fd5b50813567ffffffffffffffff8111156134d4575f80fd5b6020830191508360208260051b85010111156134ee575f80fd5b9250929050565b5f805f805f806080878903121561350a575f80fd5b86359550602087013567ffffffffffffffff80821115613528575f80fd5b6135348a838b016134ad565b9097509550604089013594506060890135915080821115613553575f80fd5b818901915089601f830112613566575f80fd5b813581811115613574575f80fd5b8a6020828501011115613585575f80fd5b6020830194508093505050509295509295509295565b5f602082840312156135ab575f80fd5b813567ffffffffffffffff8111156135c1575f80fd5b6135cd848285016132ce565b949350505050565b5f805f805f805f60e0888a0312156135eb575f80fd5b6135f48861337e565b9960208901359950604089013598606081013598506080810135975060a0810135965060c00135945092505050565b5f5b8381101561363d578181015183820152602001613625565b50505f910152565b5f815180845261365c816020860160208601613623565b601f01601f19169290920160200192915050565b6001600160a01b0384168152826020820152606060408201525f6136976060830184613645565b95945050505050565b602080825282518282018190525f9190848201906040850190845b818110156136e05783516001600160a01b0316835292840192918401916001016136bb565b50909695505050505050565b5f805f80604085870312156136ff575f80fd5b843567ffffffffffffffff80821115613716575f80fd5b613722888389016134ad565b9096509450602087013591508082111561373a575f80fd5b50613747878288016134ad565b95989497509550505050565b5f8060208385031215613764575f80fd5b823567ffffffffffffffff81111561377a575f80fd5b613786858286016134ad565b90969095509350505050565b5f82516137a3818460208701613623565b9190910192915050565b600181811c908216806137c157607f821691505b6020821081036137f8577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b601f821115610d3557805f5260205f20601f840160051c810160208510156138235750805b601f840160051c820191505b81811015612976575f815560010161382f565b815167ffffffffffffffff81111561385c5761385c613270565b6138708161386a84546137ad565b846137fe565b602080601f8311600181146138c2575f841561388c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555613938565b5f85815260208120601f198616915b828110156138f0578886015182559484019460019091019084016138d1565b508582101561392c57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808201808211156116e0576116e061396d565b80820281158282048414176116e0576116e061396d565b5f826139f7577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b818103818111156116e0576116e061396d565b60ff82811682821603908111156116e0576116e061396d565b5f60ff821660ff8103613a3d57613a3d61396d565b60010192915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613a7657613a7661396d565b5060010190565b8183525f60208085019450825f5b85811015613ab7576001600160a01b03613aa48361337e565b1687529582019590820190600101613a8b565b509495945050505050565b604081525f613ad5604083018688613a7d565b8281036020840152613ae8818587613a7d565b979650505050505050565b60ff81811683821601908111156116e0576116e061396d565b602081526001600160a01b038251166020820152602082015160408201525f60408301516060808401526135cd6080840182613645565b6001600160a01b0385168152836020820152608060408201525f613b6a6080830185613645565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a +0x6080604052600436106102f8575f3560e01c80637a9262a211610191578063ab8c53dc116100dc578063d51c90a911610087578063e2a6ad5f11610062578063e2a6ad5f1461090c578063f2fde38b1461092b578063f4fe7fef1461094a575f80fd5b8063d51c90a91461087f578063dd4785f514610894578063df155033146108d5575f80fd5b8063c7cd469a116100b7578063c7cd469a14610822578063cde4cd1114610841578063d096c3c614610860575f80fd5b8063ab8c53dc146107cf578063ae81de53146107e4578063bfa02ba914610803575f80fd5b8063927ede2d1161013c5780639fb82db9116101175780639fb82db91461077d578063a3066aab14610791578063a4f209b0146107b0575f80fd5b8063927ede2d146106f05780639b19251a146107235780639d48f41714610751575f80fd5b80638a565ac31161016c5780638a565ac3146106865780638da5cb5b146106a55780639168ae72146106c2575f80fd5b80637a9262a2146106085780638142951a14610634578063831cfb5814610653575f80fd5b806341de239b11610251578063692c565b116101fc57806374fe27b7116101d757806374fe27b714610588578063797adbde146105ae5780637a4e87c3146105cd575f80fd5b8063692c565b146105265780636f1e853314610555578063715018a614610574575f80fd5b80634d64903a1161022c5780634d64903a146104dd57806352d472eb146104f25780636801579114610507575f80fd5b806341de239b1461048857806343352d611461049d57806345bc4d10146104be575f80fd5b8063320ff860116102b15780633cb747bf1161028c5780633cb747bf1461042e5780633ccfd60b146104605780633ee2a1f914610474575f80fd5b8063320ff860146103b257806335928991146103d15780633a9bbede146103f0575f80fd5b80632a28e5a3116102e15780632a28e5a31461033a5780632e407a6f1461034f578063303afb9e1461037b575f80fd5b80630d13fd7b146102fc5780632108db3514610325575b5f80fd5b348015610307575f80fd5b506103126101a65481565b6040519081526020015b60405180910390f35b348015610330575f80fd5b50610312609c5481565b61034d610348366004613407565b610969565b005b34801561035a575f80fd5b50610312610369366004613461565b6101a16020525f908152604090205481565b348015610386575f80fd5b5061039a610395366004613481565b610d64565b6040516001600160a01b03909116815260200161031c565b3480156103bd575f80fd5b5061034d6103cc366004613498565b610d83565b3480156103dc575f80fd5b5061034d6103eb366004613481565b61109e565b3480156103fb575f80fd5b5061041e61040a366004613461565b609f6020525f908152604090205460ff1681565b604051901515815260200161031c565b348015610439575f80fd5b507f000000000000000000000000000000000000000000000000000000000000000061039a565b34801561046b575f80fd5b5061034d61114b565b34801561047f575f80fd5b5061034d611317565b348015610493575f80fd5b5061031260995481565b3480156104a8575f80fd5b506104b1611329565b60405161031c9190613540565b3480156104c9575f80fd5b506103126104d8366004613481565b61136f565b3480156104e8575f80fd5b5061031260985481565b3480156104fd575f80fd5b50610312609a5481565b348015610512575f80fd5b5061041e610521366004613461565b611675565b348015610531575f80fd5b5061041e610540366004613481565b6101a46020525f908152604090205460ff1681565b348015610560575f80fd5b5061041e61056f366004613461565b611710565b34801561057f575f80fd5b5061034d611789565b348015610593575f80fd5b5061041e6105a23660046135c2565b60019695505050505050565b3480156105b9575f80fd5b5061039a6105c8366004613481565b61179a565b3480156105d8575f80fd5b5061041e6105e7366004613668565b80516020818301810180516101a38252928201919093012091525460ff1681565b348015610613575f80fd5b50610312610622366004613461565b6101a56020525f908152604090205481565b34801561063f575f80fd5b5061034d61064e3660046136a2565b6117c3565b34801561065e575f80fd5b5061039a7f000000000000000000000000000000000000000000000000000000000000000081565b348015610691575f80fd5b5061034d6106a0366004613481565b611c85565b3480156106b0575f80fd5b506033546001600160a01b031661039a565b3480156106cd575f80fd5b506106e16106dc366004613461565b611d28565b60405161031c9392919061373d565b3480156106fb575f80fd5b5061039a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561072e575f80fd5b5061041e61073d366004613461565b609e6020525f908152604090205460ff1681565b34801561075c575f80fd5b5061077061076b366004613481565b611ddb565b60405161031c919061376d565b348015610788575f80fd5b50610770611ef8565b34801561079c575f80fd5b5061034d6107ab366004613461565b6120a6565b3480156107bb575f80fd5b5061034d6107ca366004613481565b6121d6565b3480156107da575f80fd5b50610312609d5481565b3480156107ef575f80fd5b5061034d6107fe366004613481565b612286565b34801561080e575f80fd5b5060975461039a906001600160a01b031681565b34801561082d575f80fd5b5061034d61083c3660046137b9565b612329565b34801561084c575f80fd5b5061034d61085b366004613461565b6124ca565b34801561086b575f80fd5b5061031261087a366004613461565b612538565b34801561088a575f80fd5b50610312609b5481565b34801561089f575f80fd5b506108c36108ae366004613461565b61019f6020525f908152604090205460ff1681565b60405160ff909116815260200161031c565b3480156108e0575f80fd5b5061041e6108ef366004613461565b6001600160a01b03165f9081526101a16020526040902054151590565b348015610917575f80fd5b50610312610926366004613820565b6125b2565b348015610936575f80fd5b5061034d610945366004613461565b6126e4565b348015610955575f80fd5b5061034d610964366004613481565b612771565b335f818152609e602052604090205460ff166109cc5760405162461bcd60e51b815260206004820152601060248201527f6e6f7420696e2077686974656c6973740000000000000000000000000000000060448201526064015b60405180910390fd5b335f9081526101a260205260409020546001600160a01b031615610a325760405162461bcd60e51b815260206004820152601260248201527f616c72656164792072656769737465726564000000000000000000000000000060448201526064016109c3565b8215801590610a5057505f8381526101a4602052604090205460ff16155b610a9c5760405162461bcd60e51b815260206004820152601960248201527f696e76616c69642074656e6465726d696e74207075626b65790000000000000060448201526064016109c3565b8151610100148015610acf57506101a382604051610aba919061385f565b9081526040519081900360200190205460ff16155b610b1b5760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420626c73207075626b6579000000000000000000000000000060448201526064016109c3565b6098543414610b6c5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109c3565b6040518060600160405280610b7e3390565b6001600160a01b03908116825260208083018790526040928301869052335f9081526101a28252839020845181547fffffffffffffffffffffffff00000000000000000000000000000000000000001693169290921782558301516001820155908201516002820190610bf1908261390f565b50905050610c04610bff3390565b612814565b60016101a383604051610c17919061385f565b90815260408051918290036020908101909220805493151560ff199485161790555f8681526101a49092529020805490911660011790557fb9c7babb56df9f2da4a30811a6c778e4e68af88b72712d56cf62c5516e20e199610c763390565b8484604051610c879392919061373d565b60405180910390a1335f9081526101a26020908152604091829020825160608101845281546001600160a01b03168152600182015492810192909252600281018054610d5f9484019190610cda9061387a565b80601f0160208091040260200160405190810160405280929190818152602001828054610d069061387a565b8015610d515780601f10610d2857610100808354040283529160200191610d51565b820191905f5260205f20905b815481529060010190602001808311610d3457829003601f168201915b505050505081525050612922565b505050565b60a08160ff8110610d73575f80fd5b01546001600160a01b0316905081565b610d8b612a4a565b5f5b815181101561105a57610db8828281518110610dab57610dab613a0d565b6020026020010151611675565b610e2a5760405162461bcd60e51b815260206004820152602160248201527f6f6e6c7920616374697665207374616b65722063616e2062652072656d6f766560448201527f640000000000000000000000000000000000000000000000000000000000000060648201526084016109c3565b6101a55f838381518110610e4057610e40613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20545f14610eb65760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e6700000000000000000000000000000000000000000060448201526064016109c3565b609954610ec39043613a67565b6101a55f848481518110610ed957610ed9613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2081905550610f26828281518110610f1957610f19613a0d565b6020026020010151612aa4565b818181518110610f3857610f38613a0d565b60200260200101516001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d56101a55f858581518110610f8057610f80613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054604051610fb791815260200190565b60405180910390a2609e5f838381518110610fd457610fd4613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f84848151811061102157611021613a0d565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610d8d565b507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161108a919061376d565b60405180910390a161109b81612b96565b50565b6110a6612a4a565b5f811180156110b857506101a6548114155b6111045760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c75650060448201526064016109c3565b6101a680549082905560408051828152602081018490527f36f971a40478225aeb80cfbf5e80306e8cb76d3bf7d56fdc5e490945cddb7d5591015b60405180910390a15050565b61115433611675565b6111a05760405162461bcd60e51b815260206004820152601260248201527f6f6e6c7920616374697665207374616b6572000000000000000000000000000060448201526064016109c3565b335f9081526101a56020526040902054156111fd5760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e6700000000000000000000000000000000000000000060448201526064016109c3565b60995461120a9043613a67565b335f8181526101a5602052604090209190915561122690612aa4565b335f8181526101a560209081526040918290205491519182527f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5910160405180910390a2335f908152609e60209081526040808320805460ff19908116909155609f83528184208054909116600190811790915581518181528083019092529091828101908036833701905050905033815f815181106112c8576112c8613a0d565b60200260200101906001600160a01b031690816001600160a01b0316815250507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161108a919061376d565b61131f612a4a565b611327612c8e565b565b6113316132d4565b60408051611fe08101918290529060a09060ff9082845b81546001600160a01b03168152600190910190602001808311611348575050505050905090565b6097545f906001600160a01b0316336001600160a01b0316146113d45760405162461bcd60e51b815260206004820152601460248201527f6f6e6c7920726f6c6c757020636f6e747261637400000000000000000000000060448201526064016109c3565b6113dc612f59565b5f6113e683611ddb565b90505f805b8251811015611598575f6101a55f85848151811061140b5761140b613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054111561148e576101a55f84838151811061144f5761144f613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f9055609854826114879190613a67565b9150611590565b6114c88382815181106114a3576114a3613a0d565b60200260200101516001600160a01b03165f9081526101a16020526040902054151590565b611590576098546114d99083613a67565b91506114f0838281518110610f1957610f19613a0d565b609e5f84838151811061150557611505613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f85848151811061155257611552613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b6001016113eb565b505f6064609a54836115aa9190613a7a565b6115b49190613a91565b90506115c08183613ac9565b609d5f8282546115d09190613a67565b90915550506097546115eb906001600160a01b031682612fb2565b7f654f4a61849f1b3ad10abb283d27f02d5fece7b820acc5a3b874713b58748b5a8360405161161a919061376d565b60405180910390a17f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c8483604051611651919061376d565b60405180910390a161166283612b96565b925050506116706001606555565b919050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361169e57505f919050565b6001600160a01b0382165f81815261019f602052604090205460a0906116c99060019060ff16613adc565b60ff1660ff81106116dc576116dc613a0d565b01546001600160a01b031614801561170a57506001600160a01b0382165f9081526101a16020526040902054155b92915050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361173957505f919050565b6001600160a01b0382165f81815261019f602052604090205460a0906117649060019060ff16613adc565b60ff1660ff811061177757611777613a0d565b01546001600160a01b03161492915050565b611791612a4a565b6113275f613062565b6101a081815481106117aa575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f54610100900460ff16158080156117e157505f54600160ff909116105b806117fa5750303b1580156117fa57505f5460ff166001145b61186c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016109c3565b5f805460ff1916600117905580156118aa575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0388166119005760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420726f6c6c757020636f6e747261637400000000000000000060448201526064016109c3565b5f871161194f5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109c3565b5f861161199e5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c75650060448201526064016109c3565b5f85116119ed5760405162461bcd60e51b815260206004820152601e60248201527f696e76616c6964207769746864726177616c206c6f636b20626c6f636b73000060448201526064016109c3565b5f8311611a3c5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420676173206c696d697420616464207374616b65720000000060448201526064016109c3565b5f8211611a8b5760405162461bcd60e51b815260206004820181905260248201527f696e76616c696420676173206c696d69742072656d6f7665207374616b65727360448201526064016109c3565b5f84118015611a9b575060648411155b611b0c5760405162461bcd60e51b8152602060048201526024808201527f696e76616c6964206368616c6c656e676572207265776172642070657263656e60448201527f746167650000000000000000000000000000000000000000000000000000000060648201526084016109c3565b611b146130cb565b611b1c61314f565b609780547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038a16179055609a84905560988790556101a68690556099859055609b839055609c829055604080515f8152602081018590527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910160405180910390a1604080515f8152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910160405180910390a1604080515f8152602081018690527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910160405180910390a18015611c7b575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b611c8d612a4a565b5f81118015611c9e5750609c548114155b611cea5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d6974000000000000000000000060448201526064016109c3565b609c80549082905560408051828152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910161113f565b6101a26020525f90815260409020805460018201546002830180546001600160a01b03909316939192611d5a9061387a565b80601f0160208091040260200160405190810160405280929190818152602001828054611d869061387a565b8015611dd15780601f10611da857610100808354040283529160200191611dd1565b820191905f5260205f20905b815481529060010190602001808311611db457829003601f168201915b5050505050905083565b6060600182901c5f5b8115611e0b57611df5816001613a67565b9050611e02600183613ac9565b82169150611de4565b8067ffffffffffffffff811115611e2457611e2461333d565b604051908082528060200260200182016040528015611e4d578160200160208202803683370190505b5092505f60015b60ff8160ff1611611eef57600160ff82161b861615611edd5760a0611e7a600183613adc565b60ff1660ff8110611e8d57611e8d613a0d565b015485516001600160a01b0390911690869084908110611eaf57611eaf613a0d565b6001600160a01b0390921660209283029190910190910152611ed2826001613a67565b915082821015611eef575b80611ee781613af5565b915050611e54565b50505050919050565b6040805160ff80825261200082019092526060915f91829160208201611fe0803683370190505090505f5b60ff811015611fc7575f60a08260ff8110611f4057611f40613a0d565b01546001600160a01b031614801590611f8857506101a15f60a08360ff8110611f6b57611f6b613a0d565b01546001600160a01b0316815260208101919091526040015f2054155b15611fbf5782611f9781613b13565b9350506001828281518110611fae57611fae613a0d565b911515602092830291909101909101525b600101611f23565b505f8267ffffffffffffffff811115611fe257611fe261333d565b60405190808252806020026020018201604052801561200b578160200160208202803683370190505b5090505f805b60ff81101561209c5783818151811061202c5761202c613a0d565b6020026020010151156120945760a08160ff811061204c5761204c613a0d565b015483516001600160a01b039091169084908490811061206e5761206e613a0d565b6001600160a01b03909216602092830291909101909101528161209081613b13565b9250505b600101612011565b5090949350505050565b6120ae612f59565b335f9081526101a5602052604090205461210a5760405162461bcd60e51b815260206004820152601460248201527f7769746864726177616c206e6f7420657869737400000000000000000000000060448201526064016109c3565b335f9081526101a560205260409020544310156121695760405162461bcd60e51b815260206004820152601160248201527f7769746864726177616c206c6f636b656400000000000000000000000000000060448201526064016109c3565b335f9081526101a56020526040812055612181612c8e565b604080516001600160a01b0383168152905133917f89309c9b2aeaffbdce717113df9427298b20448c05919bf889e05f8c3094254b919081900360200190a26121cc81609854612fb2565b61109b6001606555565b6121de612a4a565b5f811180156121ee575060648111155b80156121fc5750609a548114155b6122485760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642070657263656e746167650000000000000060448201526064016109c3565b609a80549082905560408051828152602081018490527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910161113f565b61228e612a4a565b5f8111801561229f5750609b548114155b6122eb5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d6974000000000000000000000060448201526064016109c3565b609b80549082905560408051828152602081018490527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910161113f565b612331612a4a565b5f5b8381101561242957609f5f86868481811061235057612350613a0d565b90506020020160208101906123659190613461565b6001600160a01b0316815260208101919091526040015f205460ff16156123ce5760405162461bcd60e51b815260206004820152600f60248201527f696e2072656d6f766564206c697374000000000000000000000000000000000060448201526064016109c3565b6001609e5f8787858181106123e5576123e5613a0d565b90506020020160208101906123fa9190613461565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101612333565b505f5b8181101561248657609e5f84848481811061244957612449613a0d565b905060200201602081019061245e9190613461565b6001600160a01b0316815260208101919091526040015f20805460ff1916905560010161242c565b507fe375867e538b40218c1b3db2ccceaf875eb073e38b510449e6088c1539ac8622848484846040516124bc9493929190613b8f565b60405180910390a150505050565b6124d2612a4a565b6124da612f59565b609d546124e78282612fb2565b5f609d55604080516001600160a01b0384168152602081018390527fa1fefb6c5328a92a416e321ed50997303fe7135fd88c28b0592b21ce42b5cdd9910160405180910390a15061109b6001606555565b5f61254282611710565b61258e5760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b657200000000000000000000000000000000000060448201526064016109c3565b506001600160a01b03165f90815261019f6020526040902054600160ff9091161b90565b5f60ff8211156126045760405162461bcd60e51b815260206004820152601c60248201527f7374616b657273206c656e677468206f7574206f6620626f756e64730000000060448201526064016109c3565b5f5b828110156126dd5761263884848381811061262357612623613a0d565b905060200201602081019061056f9190613461565b6126845760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b657200000000000000000000000000000000000060448201526064016109c3565b61019f5f85858481811061269a5761269a613a0d565b90506020020160208101906126af9190613461565b6001600160a01b0316815260208101919091526040015f2054600160ff90911681901b929092179101612606565b5092915050565b6126ec612a4a565b6001600160a01b0381166127685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016109c3565b61109b81613062565b612779612a4a565b5f8111801561278a57506098548114155b6127d65760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109c3565b609880549082905560408051828152602081018490527f91e3ed304d49776a78bbe0df6bf7156f5433763621e5e728a3c2adfe7de74368910161113f565b5f5b60ff8160ff1610156128d9575f60a060ff80841690811061283957612839613a0d565b01546001600160a01b0316036128d1578160a08260ff1660ff811061286057612860613a0d565b0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556128a2816001613bc0565b6001600160a01b03929092165f90815261019f60205260409020805460ff191660ff9093169290921790915550565b600101612816565b5060405162461bcd60e51b815260206004820152600960248201527f736c6f742066756c6c000000000000000000000000000000000000000000000060448201526064016109c3565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f846040516024016129849190613bd9565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f6d454d5100000000000000000000000000000000000000000000000000000000179052609b5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b168152612a1a9493929190600401613c10565b5f604051808303815f87803b158015612a31575f80fd5b505af1158015612a43573d5f803e3d5ffd5b5050505050565b6033546001600160a01b031633146113275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109c3565b6001600160a01b0381165f9081526101a1602052604090205415612b0a5760405162461bcd60e51b815260206004820152601560248201527f616c726561647920696e2064656c6574654c697374000000000000000000000060448201526064016109c3565b6101a080546001810182555f919091527f7980fe0f714a613298681d64b7b8ffa7b148338dd52429f307d72798d5c317c40180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316179055609954612b7a9043613a67565b6001600160a01b039091165f9081526101a16020526040902055565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f84604051602401612bf8919061376d565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0be67fcc00000000000000000000000000000000000000000000000000000000179052609c5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b168152612a1a9493929190600401613c10565b5f5b6101a05481101561109b57436101a15f6101a08481548110612cb457612cb4613a0d565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205411612f475760a0600161019f5f6101a08581548110612cf957612cf9613a0d565b5f9182526020808320909101546001600160a01b03168352820192909252604001902054612d2a919060ff16613adc565b60ff1660ff8110612d3d57612d3d613a0d565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556101a0805461019f915f9184908110612d7f57612d7f613a0d565b5f9182526020808320909101546001600160a01b031683528201929092526040018120805460ff191690556101a080546101a292919084908110612dc557612dc5613a0d565b5f9182526020808320909101546001600160a01b03168352820192909252604001812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590612e2360028301826132f3565b50506101a15f6101a08381548110612e3d57612e3d613a0d565b5f9182526020808320909101546001600160a01b031683528201929092526040018120556101a08054612e7290600190613ac9565b81548110612e8257612e82613a0d565b5f918252602090912001546101a080546001600160a01b039092169183908110612eae57612eae613a0d565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506101a0805480612eeb57612eeb613c48565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055019055612c90565b80612f5181613b13565b915050612c90565b600260655403612fab5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016109c3565b6002606555565b8015613057575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613001576040519150601f19603f3d011682016040523d82523d5f602084013e613006565b606091505b5050905080610d5f5760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c6564000000000060448201526064016109c3565b5050565b6001606555565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166131475760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b6113276131d3565b5f54610100900460ff166131cb5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b611327613258565b5f54610100900460ff1661324f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b61132733613062565b5f54610100900460ff1661305b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b60405180611fe0016040528060ff906020820280368337509192915050565b5080546132ff9061387a565b5f825580601f1061330e575050565b601f0160209004905f5260205f209081019061109b91905b80821115613339575f8155600101613326565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156133935761339361333d565b604052919050565b5f82601f8301126133aa575f80fd5b813567ffffffffffffffff8111156133c4576133c461333d565b6133d76020601f19601f8401160161336a565b8181528460208386010111156133eb575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215613418575f80fd5b82359150602083013567ffffffffffffffff811115613435575f80fd5b6134418582860161339b565b9150509250929050565b80356001600160a01b0381168114611670575f80fd5b5f60208284031215613471575f80fd5b61347a8261344b565b9392505050565b5f60208284031215613491575f80fd5b5035919050565b5f60208083850312156134a9575f80fd5b823567ffffffffffffffff808211156134c0575f80fd5b818501915085601f8301126134d3575f80fd5b8135818111156134e5576134e561333d565b8060051b91506134f684830161336a565b818152918301840191848101908884111561350f575f80fd5b938501935b83851015613534576135258561344b565b82529385019390850190613514565b98975050505050505050565b611fe0810181835f5b60ff8110156135715781516001600160a01b0316835260209283019290910190600101613549565b50505092915050565b5f8083601f84011261358a575f80fd5b50813567ffffffffffffffff8111156135a1575f80fd5b6020830191508360208260051b85010111156135bb575f80fd5b9250929050565b5f805f805f80608087890312156135d7575f80fd5b86359550602087013567ffffffffffffffff808211156135f5575f80fd5b6136018a838b0161357a565b9097509550604089013594506060890135915080821115613620575f80fd5b818901915089601f830112613633575f80fd5b813581811115613641575f80fd5b8a6020828501011115613652575f80fd5b6020830194508093505050509295509295509295565b5f60208284031215613678575f80fd5b813567ffffffffffffffff81111561368e575f80fd5b61369a8482850161339b565b949350505050565b5f805f805f805f60e0888a0312156136b8575f80fd5b6136c18861344b565b9960208901359950604089013598606081013598506080810135975060a0810135965060c00135945092505050565b5f5b8381101561370a5781810151838201526020016136f2565b50505f910152565b5f81518084526137298160208601602086016136f0565b601f01601f19169290920160200192915050565b6001600160a01b0384168152826020820152606060408201525f6137646060830184613712565b95945050505050565b602080825282518282018190525f9190848201906040850190845b818110156137ad5783516001600160a01b031683529284019291840191600101613788565b50909695505050505050565b5f805f80604085870312156137cc575f80fd5b843567ffffffffffffffff808211156137e3575f80fd5b6137ef8883890161357a565b90965094506020870135915080821115613807575f80fd5b506138148782880161357a565b95989497509550505050565b5f8060208385031215613831575f80fd5b823567ffffffffffffffff811115613847575f80fd5b6138538582860161357a565b90969095509350505050565b5f82516138708184602087016136f0565b9190910192915050565b600181811c9082168061388e57607f821691505b6020821081036138c5577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b601f821115610d5f57805f5260205f20601f840160051c810160208510156138f05750805b601f840160051c820191505b81811015612a43575f81556001016138fc565b815167ffffffffffffffff8111156139295761392961333d565b61393d81613937845461387a565b846138cb565b602080601f83116001811461398f575f84156139595750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555613a05565b5f85815260208120601f198616915b828110156139bd5788860151825594840194600190910190840161399e565b50858210156139f957878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561170a5761170a613a3a565b808202811582820484141761170a5761170a613a3a565b5f82613ac4577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b8181038181111561170a5761170a613a3a565b60ff828116828216039081111561170a5761170a613a3a565b5f60ff821660ff8103613b0a57613b0a613a3a565b60010192915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613b4357613b43613a3a565b5060010190565b8183525f60208085019450825f5b85811015613b84576001600160a01b03613b718361344b565b1687529582019590820190600101613b58565b509495945050505050565b604081525f613ba2604083018688613b4a565b8281036020840152613bb5818587613b4a565b979650505050505050565b60ff818116838216019081111561170a5761170a613a3a565b602081526001600160a01b038251166020820152602082015160408201525f604083015160608084015261369a6080840182613712565b6001600160a01b0385168152836020820152608060408201525f613c376080830185613712565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a diff --git a/bindings/bindings/distribute.go b/bindings/bindings/distribute.go index cd09855e4..d251237d9 100644 --- a/bindings/bindings/distribute.go +++ b/bindings/bindings/distribute.go @@ -32,7 +32,7 @@ var ( // DistributeMetaData contains all meta data concerning the Distribute contract. var DistributeMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CommissionClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"upToEpoch\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"RewardClaimed\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"L2_STAKING_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MORPH_TOKEN_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RECORD_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"targetEpochIndex\",\"type\":\"uint256\"}],\"name\":\"claim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"targetEpochIndex\",\"type\":\"uint256\"}],\"name\":\"claimAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"claimCommission\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"targetEpochIndex\",\"type\":\"uint256\"}],\"name\":\"cleanDistributions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"isRewardClaimed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"claimed\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"effectiveEpoch\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"newDelegation\",\"type\":\"bool\"}],\"name\":\"notifyDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"effectiveEpoch\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalAmount\",\"type\":\"uint256\"}],\"name\":\"notifyUndelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"}],\"name\":\"queryAllUnclaimed\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"delegatees\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"rewards\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"}],\"name\":\"queryAllUnclaimedEpochs\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bool[]\",\"name\":\"\",\"type\":\"bool[]\"},{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"queryOldestDistribution\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"epochIndex\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"}],\"name\":\"queryUnclaimed\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"queryUnclaimedCommission\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"epochIndex\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"sequencers\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"delegatorRewards\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"commissionsAmount\",\"type\":\"uint256[]\"}],\"name\":\"updateEpochReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", - Bin: "0x60e060405234801562000010575f80fd5b5073530000000000000000000000000000000000001360805273530000000000000000000000000000000000001560a05273530000000000000000000000000000000000001260c0526200006362000069565b62000127565b5f54610100900460ff1615620000d55760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000125575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b60805160a05160c051612a0b620001915f395f8181610309015261178d01525f81816101d9015281816107ca015281816109bc015281816112180152818161133c015261148501525f8181610343015281816120bf01528181612172015261220f0152612a0b5ff3fe608060405234801561000f575f80fd5b5060043610610163575f3560e01c8063a766c529116100c7578063cd4281d01161007d578063d557714111610063578063d55771411461033e578063de6ac93314610365578063f2fde38b14610388575f80fd5b8063cd4281d014610304578063cdd0c50e1461032b575f80fd5b8063b809af0f116100ad578063b809af0f146102b6578063bf2dca0a146102c9578063c4d66de8146102f1575f80fd5b8063a766c5291461027b578063ac2ac640146102a3575f80fd5b8063807de4431161011c578063921ae9b811610102578063921ae9b8146102245780639889be5114610247578063996cba6814610268575f80fd5b8063807de443146101d45780638da5cb5b14610213575f80fd5b80635cf20c7b1161014c5780635cf20c7b146101a6578063715018a6146101b95780637f683ee3146101c1575f80fd5b8063273d8e82146101675780634eedab3214610191575b5f80fd5b61017a610175366004612514565b61039b565b60405161018892919061259f565b60405180910390f35b6101a461019f3660046125cc565b610729565b005b6101a46101b43660046125cc565b6107c7565b6101a46109a6565b6101a46101cf3660046125f4565b6109b9565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610188565b6033546001600160a01b03166101fb565b610237610232366004612514565b610bff565b6040516101889493929190612633565b61025a6102553660046126b2565b610f3c565b604051908152602001610188565b6101a46102763660046126e3565b611215565b61025a610289366004612514565b6001600160a01b03165f9081526067602052604090205490565b6101a46102b1366004612514565b611339565b6101a46102c4366004612729565b611482565b61025a6102d7366004612514565b6001600160a01b03165f9081526068602052604090205490565b6101a46102ff366004612514565b6115c0565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6101a46103393660046127d0565b61178a565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6103786103733660046126b2565b611aea565b6040519015158152602001610188565b6101a4610396366004612514565b611b15565b6001600160a01b0381165f90815260696020526040812060609182916103c090611ba5565b9050805f0361043c5760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f672072657761726400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b8067ffffffffffffffff8111156104555761045561286c565b60405190808252806020026020018201604052801561047e578160200160208202803683370190505b5092508067ffffffffffffffff81111561049a5761049a61286c565b6040519080825280602002602001820160405280156104c3578160200160208202803683370190505b5091505f5b6001600160a01b0385165f9081526069602052604090206104e890611ba5565b811015610722576001600160a01b0385165f9081526069602052604081206105109083611bae565b6001600160a01b038088165f908152606960209081526040808320938516835260039093019052908120549192509081908190805b6065548110156106bf576001600160a01b038087165f9081526066602090815260408083208584528252808320938f168352600490930190522054156105b9576001600160a01b038087165f9081526066602090815260408083208584528252808320938f16835260049093019052205492505b6001600160a01b0386165f9081526066602090815260408083208484529091529020600101541561060d576001600160a01b0386165f90815260666020908152604080832084845290915290206001015493505b6001600160a01b0386165f908152606660209081526040808320848452909152902054849061063d9085906128c6565b61064791906128dd565b6106519086612915565b6001600160a01b03808d165f908152606960209081526040808320938b16835260029093019052205490955060ff1680156106b357506001600160a01b03808c165f908152606960209081526040808320938a16835260049093019052205481145b6106bf57600101610545565b50848987815181106106d3576106d3612928565b60200260200101906001600160a01b031690816001600160a01b0316815250508388878151811061070657610706612928565b60209081029190910101525050600190930192506104c8915050565b5050915091565b610731611bc0565b6001600160a01b0382165f908152606760205260409020545b8181116107a8576001600160a01b0383165f908152606660209081526040808320848452909152812081815560018101829055906002820181818161078f82826124cb565b50505050505080806107a090612955565b91505061074a565b6001600160a01b039092165f9081526067602052604090209190915550565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461083f5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036108905760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806108ab575060016065546108a8919061298c565b82115b6108b557816108c4565b60016065546108c4919061298c565b90505f805b6001600160a01b0385165f9081526069602052604090206108e990611ba5565b81101561098f576001600160a01b0385165f9081526069602052604081206109119083611bae565b6001600160a01b0387165f9081526069602052604090209091506109359082611c1a565b801561096957506001600160a01b038087165f90815260696020908152604080832093851683526003909301905220548410155b1561098657610979818786611c3b565b6109839084612915565b92505b506001016108c9565b5080156109a0576109a0848261208f565b50505050565b6109ae611bc0565b6109b75f6122e5565b565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610a315760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0384165f9081526066602090815260408083208584529091529020600101819055811580610a8d57506001600160a01b038084165f908152606960209081526040808320938816835260039093019052205482145b15610b72576001600160a01b0384165f9081526066602090815260408083208584529091529020610ac1906002018461234e565b506001600160a01b038085165f90815260666020908152604080832086845282528083209387168352600490930181528282208290556069905220610b06908561234e565b506001600160a01b038381165f908152606960209081526040808320938816835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560038401825280832083905560049093019052908120556109a0565b6001600160a01b038084165f9081526069602090815260408083209388168352600290930190522080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001908117909155610bd0908361298c565b6001600160a01b038085165f908152606960209081526040808320938916835260049093019052205550505050565b6001600160a01b0381165f908152606960205260408120606091829182918291610c2890611ba5565b90505f8167ffffffffffffffff811115610c4457610c4461286c565b604051908082528060200260200182016040528015610c6d578160200160208202803683370190505b5090505f8267ffffffffffffffff811115610c8a57610c8a61286c565b604051908082528060200260200182016040528015610cb3578160200160208202803683370190505b5090505f8367ffffffffffffffff811115610cd057610cd061286c565b604051908082528060200260200182016040528015610cf9578160200160208202803683370190505b5090505f8467ffffffffffffffff811115610d1657610d1661286c565b604051908082528060200260200182016040528015610d3f578160200160208202803683370190505b5090505f5b85811015610f2b576001600160a01b038b165f908152606960205260409020610d6d9082611bae565b858281518110610d7f57610d7f612928565b60200260200101906001600160a01b031690816001600160a01b03168152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206002015f868381518110610dd857610dd8612928565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f9054906101000a900460ff16848281518110610e1e57610e1e612928565b9115156020928302919091018201526001600160a01b038c165f908152606990915260408120865160039091019190879084908110610e5f57610e5f612928565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054838281518110610e9957610e99612928565b60200260200101818152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206004015f868381518110610ede57610ede612928565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054828281518110610f1857610f18612928565b6020908102919091010152600101610d44565b509299919850965090945092505050565b6001600160a01b0381165f908152606960205260408120610f5c90611ba5565b5f03610fd05760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f67207265776172640000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b0382165f908152606960205260409020610ff19084611c1a565b6110625760405162461bcd60e51b8152602060048201526024808201527f6e6f2072656d61696e696e6720726577617264206f66207468652064656c656760448201527f61746565000000000000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b038083165f908152606960209081526040808320938716835260039093019052908120548190805b60655481101561120b576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205415611105576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205492505b6001600160a01b0387165f90815260666020908152604080832084845290915290206001015415611159576001600160a01b0387165f90815260666020908152604080832084845290915290206001015493505b6001600160a01b0387165f90815260666020908152604080832084845290915290205484906111899085906128c6565b61119391906128dd565b61119d9086612915565b6001600160a01b038088165f908152606960209081526040808320938c16835260029093019052205490955060ff1680156111ff57506001600160a01b038087165f908152606960209081526040808320938b16835260049093019052205481145b61120b57600101611091565b5050505092915050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461128d5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036112de5760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806112f9575060016065546112f6919061298c565b82115b6113035781611312565b6001606554611312919061298c565b90505f611320858584611c3b565b9050801561133257611332848261208f565b5050505050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146113b15760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0381165f908152606860205260409020546114155760405162461bcd60e51b815260206004820152601660248201527f6e6f20636f6d6d697373696f6e20746f20636c61696d000000000000000000006044820152606401610433565b6001600160a01b0381165f908152606860205260408120805491905561143b828261208f565b816001600160a01b03167f8e14daa5332205b1634040e1054e93d1f5396ec8bf0115d133b7fbaf4a52e4118260405161147691815260200190565b60405180910390a25050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146114fa5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0386165f9081526066602090815260408083208784529091529020600181018390556115309060020186612362565b506001600160a01b038087165f90815260666020908152604080832088845282528083209389168352600490930190522083905580156115b8576001600160a01b0385165f90815260696020526040902061158b9087612362565b506001600160a01b038086165f908152606960209081526040808320938a16835260039093019052208490555b505050505050565b5f54610100900460ff16158080156115de57505f54600160ff909116105b806115f75750303b1580156115f757505f5460ff166001145b6116695760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610433565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156116c5575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03821661171b5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e6572206164647265737300000000000000000000006044820152606401610433565b611724826122e5565b8015611786575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146118025760405162461bcd60e51b815260206004820152601c60248201527f6f6e6c79207265636f726420636f6e747261637420616c6c6f776564000000006044820152606401610433565b60658054905f61181183612955565b9190505550866001606554611826919061298c565b146118735760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642065706f636820696e646578000000000000000000000000006044820152606401610433565b828514801561188157508085145b6118cd5760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642064617461206c656e677468000000000000000000000000006044820152606401610433565b5f5b85811015611ae0578484828181106118e9576118e9612928565b9050602002013560665f89898581811061190557611905612928565b905060200201602081019061191a9190612514565b6001600160a01b0316815260208082019290925260409081015f9081208c825290925281209190915560669088888481811061195857611958612928565b905060200201602081019061196d9190612514565b6001600160a01b0316815260208082019290925260409081015f9081208b82529092529020600101541580156119a257505f88115b15611a635760665f8888848181106119bc576119bc612928565b90506020020160208101906119d19190612514565b6001600160a01b03166001600160a01b031681526020019081526020015f205f60018a6119fe919061298c565b81526020019081526020015f206001015460665f898985818110611a2457611a24612928565b9050602002016020810190611a399190612514565b6001600160a01b0316815260208082019290925260409081015f9081208c82529092529020600101555b828282818110611a7557611a75612928565b9050602002013560685f898985818110611a9157611a91612928565b9050602002016020810190611aa69190612514565b6001600160a01b03166001600160a01b031681526020019081526020015f205f828254611ad39190612915565b90915550506001016118cf565b5050505050505050565b6001600160a01b0382165f908152606960205260408120611b0b9083611c1a565b1590505b92915050565b611b1d611bc0565b6001600160a01b038116611b995760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610433565b611ba2816122e5565b50565b5f611b0f825490565b5f611bb98383612376565b9392505050565b6033546001600160a01b031633146109b75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610433565b6001600160a01b0381165f9081526001830160205260408120541515611bb9565b6001600160a01b0382165f908152606960205260408120611c5c9085611c1a565b611ca85760405162461bcd60e51b815260206004820152601360248201527f6e6f2072656d61696e696e6720726577617264000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190522054821015611d205760405162461bcd60e51b815260206004820152601260248201527f616c6c2072657761726420636c61696d656400000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190529081205481905b848111611f5d576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205415611dbf576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205491505b6001600160a01b0387165f90815260666020908152604080832084845290915290206001015415611e13576001600160a01b0387165f90815260666020908152604080832084845290915290206001015492505b6001600160a01b0387165f9081526066602090815260408083208484529091529020548390611e439084906128c6565b611e4d91906128dd565b611e579085612915565b6001600160a01b038088165f908152606960209081526040808320938c16835260029093019052205490945060ff168015611eb957506001600160a01b038087165f908152606960209081526040808320938b16835260049093019052205481145b15611f4b576001600160a01b0386165f908152606960205260409020611edf908861234e565b506001600160a01b038681165f908152606960209081526040808320938b16835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556003840182528083208390556004909301905290812055611f5d565b80611f5581612955565b915050611d4e565b50611f69846001612915565b6001600160a01b038087165f908152606960209081526040808320938b16835260039093018152828220939093556066909252812090611faa866001612915565b81526020019081526020015f206004015f866001600160a01b03166001600160a01b031681526020019081526020015f20545f03612030576001600160a01b0386165f9081526066602052604081208291612006876001612915565b815260208082019290925260409081015f9081206001600160a01b038a1682526004019092529020555b856001600160a01b0316856001600160a01b03167f7a84a08b02c91f3c62d572853f966fc799bbd121e8ad7833a4494ab8dcfcb404868660405161207e929190918252602082015260400190565b60405180910390a350509392505050565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561210c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612130919061299f565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156121ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121de91906129b6565b506040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561225c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612280919061299f565b90505f83118015612299575082612297828461298c565b145b6109a05760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610433565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f611bb9836001600160a01b03841661239c565b5f611bb9836001600160a01b03841661247f565b5f825f01828154811061238b5761238b612928565b905f5260205f200154905092915050565b5f8181526001830160205260408120548015612476575f6123be60018361298c565b85549091505f906123d19060019061298c565b9050818114612430575f865f0182815481106123ef576123ef612928565b905f5260205f200154905080875f01848154811061240f5761240f612928565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080612441576124416129d1565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050611b0f565b5f915050611b0f565b5f8181526001830160205260408120546124c457508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155611b0f565b505f611b0f565b5080545f8255905f5260205f2090810190611ba291905b808211156124f5575f81556001016124e2565b5090565b80356001600160a01b038116811461250f575f80fd5b919050565b5f60208284031215612524575f80fd5b611bb9826124f9565b5f815180845260208085019450602084015f5b838110156125655781516001600160a01b031687529582019590820190600101612540565b509495945050505050565b5f815180845260208085019450602084015f5b8381101561256557815187529582019590820190600101612583565b604081525f6125b1604083018561252d565b82810360208401526125c38185612570565b95945050505050565b5f80604083850312156125dd575f80fd5b6125e6836124f9565b946020939093013593505050565b5f805f8060808587031215612607575f80fd5b612610856124f9565b935061261e602086016124f9565b93969395505050506040820135916060013590565b608081525f612645608083018761252d565b8281036020848101919091528651808352878201928201905f5b8181101561267d57845115158352938301939183019160010161265f565b505084810360408601526126918188612570565b9250505082810360608401526126a78185612570565b979650505050505050565b5f80604083850312156126c3575f80fd5b6126cc836124f9565b91506126da602084016124f9565b90509250929050565b5f805f606084860312156126f5575f80fd5b6126fe846124f9565b925061270c602085016124f9565b9150604084013590509250925092565b8015158114611ba2575f80fd5b5f805f805f8060c0878903121561273e575f80fd5b612747876124f9565b9550612755602088016124f9565b945060408701359350606087013592506080870135915060a087013561277a8161271c565b809150509295509295509295565b5f8083601f840112612798575f80fd5b50813567ffffffffffffffff8111156127af575f80fd5b6020830191508360208260051b85010111156127c9575f80fd5b9250929050565b5f805f805f805f6080888a0312156127e6575f80fd5b87359650602088013567ffffffffffffffff80821115612804575f80fd5b6128108b838c01612788565b909850965060408a0135915080821115612828575f80fd5b6128348b838c01612788565b909650945060608a013591508082111561284c575f80fd5b506128598a828b01612788565b989b979a50959850939692959293505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082028115828204841417611b0f57611b0f612899565b5f82612910577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b80820180821115611b0f57611b0f612899565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361298557612985612899565b5060010190565b81810381811115611b0f57611b0f612899565b5f602082840312156129af575f80fd5b5051919050565b5f602082840312156129c6575f80fd5b8151611bb98161271c565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a", + Bin: "0x60e060405234801562000010575f80fd5b5073530000000000000000000000000000000000001360805273530000000000000000000000000000000000001560a05273530000000000000000000000000000000000001260c0526200006362000069565b62000127565b5f54610100900460ff1615620000d55760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000125575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b60805160a05160c051612a09620001915f395f8181610309015261178b01525f81816101d9015281816107ca015281816109bc015281816112160152818161133a015261148301525f8181610343015281816120bd01528181612170015261220d0152612a095ff3fe608060405234801561000f575f80fd5b5060043610610163575f3560e01c8063a766c529116100c7578063cd4281d01161007d578063d557714111610063578063d55771411461033e578063de6ac93314610365578063f2fde38b14610388575f80fd5b8063cd4281d014610304578063cdd0c50e1461032b575f80fd5b8063b809af0f116100ad578063b809af0f146102b6578063bf2dca0a146102c9578063c4d66de8146102f1575f80fd5b8063a766c5291461027b578063ac2ac640146102a3575f80fd5b8063807de4431161011c578063921ae9b811610102578063921ae9b8146102245780639889be5114610247578063996cba6814610268575f80fd5b8063807de443146101d45780638da5cb5b14610213575f80fd5b80635cf20c7b1161014c5780635cf20c7b146101a6578063715018a6146101b95780637f683ee3146101c1575f80fd5b8063273d8e82146101675780634eedab3214610191575b5f80fd5b61017a610175366004612512565b61039b565b60405161018892919061259d565b60405180910390f35b6101a461019f3660046125ca565b610729565b005b6101a46101b43660046125ca565b6107c7565b6101a46109a6565b6101a46101cf3660046125f2565b6109b9565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610188565b6033546001600160a01b03166101fb565b610237610232366004612512565b610bff565b6040516101889493929190612631565b61025a6102553660046126b0565b610f3c565b604051908152602001610188565b6101a46102763660046126e1565b611213565b61025a610289366004612512565b6001600160a01b03165f9081526067602052604090205490565b6101a46102b1366004612512565b611337565b6101a46102c4366004612727565b611480565b61025a6102d7366004612512565b6001600160a01b03165f9081526068602052604090205490565b6101a46102ff366004612512565b6115be565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6101a46103393660046127ce565b611788565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6103786103733660046126b0565b611ae8565b6040519015158152602001610188565b6101a4610396366004612512565b611b13565b6001600160a01b0381165f90815260696020526040812060609182916103c090611ba3565b9050805f0361043c5760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f672072657761726400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b8067ffffffffffffffff8111156104555761045561286a565b60405190808252806020026020018201604052801561047e578160200160208202803683370190505b5092508067ffffffffffffffff81111561049a5761049a61286a565b6040519080825280602002602001820160405280156104c3578160200160208202803683370190505b5091505f5b6001600160a01b0385165f9081526069602052604090206104e890611ba3565b811015610722576001600160a01b0385165f9081526069602052604081206105109083611bac565b6001600160a01b038088165f908152606960209081526040808320938516835260039093019052908120549192509081908190805b6065548110156106bf576001600160a01b038087165f9081526066602090815260408083208584528252808320938f168352600490930190522054156105b9576001600160a01b038087165f9081526066602090815260408083208584528252808320938f16835260049093019052205492505b6001600160a01b0386165f9081526066602090815260408083208484529091529020600101541561060d576001600160a01b0386165f90815260666020908152604080832084845290915290206001015493505b6001600160a01b0386165f908152606660209081526040808320848452909152902054849061063d9085906128c4565b61064791906128db565b6106519086612913565b6001600160a01b03808d165f908152606960209081526040808320938b16835260029093019052205490955060ff1680156106b357506001600160a01b03808c165f908152606960209081526040808320938a16835260049093019052205481145b6106bf57600101610545565b50848987815181106106d3576106d3612926565b60200260200101906001600160a01b031690816001600160a01b0316815250508388878151811061070657610706612926565b60209081029190910101525050600190930192506104c8915050565b5050915091565b610731611bbe565b6001600160a01b0382165f908152606760205260409020545b8181116107a8576001600160a01b0383165f908152606660209081526040808320848452909152812081815560018101829055906002820181818161078f82826124c9565b50505050505080806107a090612953565b91505061074a565b6001600160a01b039092165f9081526067602052604090209190915550565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461083f5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036108905760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806108ab575060016065546108a8919061298a565b82115b6108b557816108c4565b60016065546108c4919061298a565b90505f805b6001600160a01b0385165f9081526069602052604090206108e990611ba3565b81101561098f576001600160a01b0385165f9081526069602052604081206109119083611bac565b6001600160a01b0387165f9081526069602052604090209091506109359082611c18565b801561096957506001600160a01b038087165f90815260696020908152604080832093851683526003909301905220548410155b1561098657610979818786611c39565b6109839084612913565b92505b506001016108c9565b5080156109a0576109a0848261208d565b50505050565b6109ae611bbe565b6109b75f6122e3565b565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610a315760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0384165f9081526066602090815260408083208584529091529020600101819055811580610a8d57506001600160a01b038084165f908152606960209081526040808320938816835260039093019052205482145b15610b72576001600160a01b0384165f9081526066602090815260408083208584529091529020610ac1906002018461234c565b506001600160a01b038085165f90815260666020908152604080832086845282528083209387168352600490930181528282208290556069905220610b06908561234c565b506001600160a01b038381165f908152606960209081526040808320938816835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560038401825280832083905560049093019052908120556109a0565b6001600160a01b038084165f9081526069602090815260408083209388168352600290930190522080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001908117909155610bd0908361298a565b6001600160a01b038085165f908152606960209081526040808320938916835260049093019052205550505050565b6001600160a01b0381165f908152606960205260408120606091829182918291610c2890611ba3565b90505f8167ffffffffffffffff811115610c4457610c4461286a565b604051908082528060200260200182016040528015610c6d578160200160208202803683370190505b5090505f8267ffffffffffffffff811115610c8a57610c8a61286a565b604051908082528060200260200182016040528015610cb3578160200160208202803683370190505b5090505f8367ffffffffffffffff811115610cd057610cd061286a565b604051908082528060200260200182016040528015610cf9578160200160208202803683370190505b5090505f8467ffffffffffffffff811115610d1657610d1661286a565b604051908082528060200260200182016040528015610d3f578160200160208202803683370190505b5090505f5b85811015610f2b576001600160a01b038b165f908152606960205260409020610d6d9082611bac565b858281518110610d7f57610d7f612926565b60200260200101906001600160a01b031690816001600160a01b03168152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206002015f868381518110610dd857610dd8612926565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f9054906101000a900460ff16848281518110610e1e57610e1e612926565b9115156020928302919091018201526001600160a01b038c165f908152606990915260408120865160039091019190879084908110610e5f57610e5f612926565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054838281518110610e9957610e99612926565b60200260200101818152505060695f8c6001600160a01b03166001600160a01b031681526020019081526020015f206004015f868381518110610ede57610ede612926565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054828281518110610f1857610f18612926565b6020908102919091010152600101610d44565b509299919850965090945092505050565b6001600160a01b0381165f908152606960205260408120610f5c90611ba3565b5f03610fd05760405162461bcd60e51b815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f67207265776172640000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b0382165f908152606960205260409020610ff19084611c18565b6110625760405162461bcd60e51b8152602060048201526024808201527f6e6f2072656d61696e696e6720726577617264206f66207468652064656c656760448201527f61746565000000000000000000000000000000000000000000000000000000006064820152608401610433565b6001600160a01b038083165f9081526069602090815260408083209387168352600390930190529081205481905b60655481101561120a576001600160a01b038087165f9081526066602090815260408083208584528252808320938916835260049093019052205415611104576001600160a01b038087165f9081526066602090815260408083208584528252808320938916835260049093019052205491505b6001600160a01b0386165f90815260666020908152604080832084845290915290206001015415611158576001600160a01b0386165f90815260666020908152604080832084845290915290206001015492505b6001600160a01b0386165f90815260666020908152604080832084845290915290205483906111889084906128c4565b61119291906128db565b61119c9085612913565b6001600160a01b038087165f908152606960209081526040808320938b16835260029093019052205490945060ff1680156111fe57506001600160a01b038086165f908152606960209081526040808320938a16835260049093019052205481145b61120a57600101611090565b50505092915050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461128b5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6065545f036112dc5760405162461bcd60e51b815260206004820152600e60248201527f6e6f74206d696e746564207965740000000000000000000000000000000000006044820152606401610433565b5f8115806112f7575060016065546112f4919061298a565b82115b6113015781611310565b6001606554611310919061298a565b90505f61131e858584611c39565b9050801561133057611330848261208d565b5050505050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146113af5760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0381165f908152606860205260409020546114135760405162461bcd60e51b815260206004820152601660248201527f6e6f20636f6d6d697373696f6e20746f20636c61696d000000000000000000006044820152606401610433565b6001600160a01b0381165f9081526068602052604081208054919055611439828261208d565b816001600160a01b03167f8e14daa5332205b1634040e1054e93d1f5396ec8bf0115d133b7fbaf4a52e4118260405161147491815260200190565b60405180910390a25050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146114f85760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f7765646044820152606401610433565b6001600160a01b0386165f90815260666020908152604080832087845290915290206001810183905561152e9060020186612360565b506001600160a01b038087165f90815260666020908152604080832088845282528083209389168352600490930190522083905580156115b6576001600160a01b0385165f9081526069602052604090206115899087612360565b506001600160a01b038086165f908152606960209081526040808320938a16835260039093019052208490555b505050505050565b5f54610100900460ff16158080156115dc57505f54600160ff909116105b806115f55750303b1580156115f557505f5460ff166001145b6116675760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610433565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156116c3575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0382166117195760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e6572206164647265737300000000000000000000006044820152606401610433565b611722826122e3565b8015611784575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146118005760405162461bcd60e51b815260206004820152601c60248201527f6f6e6c79207265636f726420636f6e747261637420616c6c6f776564000000006044820152606401610433565b60658054905f61180f83612953565b9190505550866001606554611824919061298a565b146118715760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642065706f636820696e646578000000000000000000000000006044820152606401610433565b828514801561187f57508085145b6118cb5760405162461bcd60e51b815260206004820152601360248201527f696e76616c69642064617461206c656e677468000000000000000000000000006044820152606401610433565b5f5b85811015611ade578484828181106118e7576118e7612926565b9050602002013560665f89898581811061190357611903612926565b90506020020160208101906119189190612512565b6001600160a01b0316815260208082019290925260409081015f9081208c825290925281209190915560669088888481811061195657611956612926565b905060200201602081019061196b9190612512565b6001600160a01b0316815260208082019290925260409081015f9081208b82529092529020600101541580156119a057505f88115b15611a615760665f8888848181106119ba576119ba612926565b90506020020160208101906119cf9190612512565b6001600160a01b03166001600160a01b031681526020019081526020015f205f60018a6119fc919061298a565b81526020019081526020015f206001015460665f898985818110611a2257611a22612926565b9050602002016020810190611a379190612512565b6001600160a01b0316815260208082019290925260409081015f9081208c82529092529020600101555b828282818110611a7357611a73612926565b9050602002013560685f898985818110611a8f57611a8f612926565b9050602002016020810190611aa49190612512565b6001600160a01b03166001600160a01b031681526020019081526020015f205f828254611ad19190612913565b90915550506001016118cd565b5050505050505050565b6001600160a01b0382165f908152606960205260408120611b099083611c18565b1590505b92915050565b611b1b611bbe565b6001600160a01b038116611b975760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610433565b611ba0816122e3565b50565b5f611b0d825490565b5f611bb78383612374565b9392505050565b6033546001600160a01b031633146109b75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610433565b6001600160a01b0381165f9081526001830160205260408120541515611bb7565b6001600160a01b0382165f908152606960205260408120611c5a9085611c18565b611ca65760405162461bcd60e51b815260206004820152601360248201527f6e6f2072656d61696e696e6720726577617264000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190522054821015611d1e5760405162461bcd60e51b815260206004820152601260248201527f616c6c2072657761726420636c61696d656400000000000000000000000000006044820152606401610433565b6001600160a01b038084165f9081526069602090815260408083209388168352600390930190529081205481905b848111611f5b576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205415611dbd576001600160a01b038088165f9081526066602090815260408083208584528252808320938a16835260049093019052205491505b6001600160a01b0387165f90815260666020908152604080832084845290915290206001015415611e11576001600160a01b0387165f90815260666020908152604080832084845290915290206001015492505b6001600160a01b0387165f9081526066602090815260408083208484529091529020548390611e419084906128c4565b611e4b91906128db565b611e559085612913565b6001600160a01b038088165f908152606960209081526040808320938c16835260029093019052205490945060ff168015611eb757506001600160a01b038087165f908152606960209081526040808320938b16835260049093019052205481145b15611f49576001600160a01b0386165f908152606960205260409020611edd908861234c565b506001600160a01b038681165f908152606960209081526040808320938b16835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556003840182528083208390556004909301905290812055611f5b565b80611f5381612953565b915050611d4c565b50611f67846001612913565b6001600160a01b038087165f908152606960209081526040808320938b16835260039093018152828220939093556066909252812090611fa8866001612913565b81526020019081526020015f206004015f866001600160a01b03166001600160a01b031681526020019081526020015f20545f0361202e576001600160a01b0386165f9081526066602052604081208291612004876001612913565b815260208082019290925260409081015f9081206001600160a01b038a1682526004019092529020555b856001600160a01b0316856001600160a01b03167f7a84a08b02c91f3c62d572853f966fc799bbd121e8ad7833a4494ab8dcfcb404868660405161207c929190918252602082015260400190565b60405180910390a350509392505050565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561210a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061212e919061299d565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156121b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121dc91906129b4565b506040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561225a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061227e919061299d565b90505f83118015612297575082612295828461298a565b145b6109a05760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610433565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f611bb7836001600160a01b03841661239a565b5f611bb7836001600160a01b03841661247d565b5f825f01828154811061238957612389612926565b905f5260205f200154905092915050565b5f8181526001830160205260408120548015612474575f6123bc60018361298a565b85549091505f906123cf9060019061298a565b905081811461242e575f865f0182815481106123ed576123ed612926565b905f5260205f200154905080875f01848154811061240d5761240d612926565b5f918252602080832090910192909255918252600188019052604090208390555b855486908061243f5761243f6129cf565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050611b0d565b5f915050611b0d565b5f8181526001830160205260408120546124c257508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155611b0d565b505f611b0d565b5080545f8255905f5260205f2090810190611ba091905b808211156124f3575f81556001016124e0565b5090565b80356001600160a01b038116811461250d575f80fd5b919050565b5f60208284031215612522575f80fd5b611bb7826124f7565b5f815180845260208085019450602084015f5b838110156125635781516001600160a01b03168752958201959082019060010161253e565b509495945050505050565b5f815180845260208085019450602084015f5b8381101561256357815187529582019590820190600101612581565b604081525f6125af604083018561252b565b82810360208401526125c1818561256e565b95945050505050565b5f80604083850312156125db575f80fd5b6125e4836124f7565b946020939093013593505050565b5f805f8060808587031215612605575f80fd5b61260e856124f7565b935061261c602086016124f7565b93969395505050506040820135916060013590565b608081525f612643608083018761252b565b8281036020848101919091528651808352878201928201905f5b8181101561267b57845115158352938301939183019160010161265d565b5050848103604086015261268f818861256e565b9250505082810360608401526126a5818561256e565b979650505050505050565b5f80604083850312156126c1575f80fd5b6126ca836124f7565b91506126d8602084016124f7565b90509250929050565b5f805f606084860312156126f3575f80fd5b6126fc846124f7565b925061270a602085016124f7565b9150604084013590509250925092565b8015158114611ba0575f80fd5b5f805f805f8060c0878903121561273c575f80fd5b612745876124f7565b9550612753602088016124f7565b945060408701359350606087013592506080870135915060a08701356127788161271a565b809150509295509295509295565b5f8083601f840112612796575f80fd5b50813567ffffffffffffffff8111156127ad575f80fd5b6020830191508360208260051b85010111156127c7575f80fd5b9250929050565b5f805f805f805f6080888a0312156127e4575f80fd5b87359650602088013567ffffffffffffffff80821115612802575f80fd5b61280e8b838c01612786565b909850965060408a0135915080821115612826575f80fd5b6128328b838c01612786565b909650945060608a013591508082111561284a575f80fd5b506128578a828b01612786565b989b979a50959850939692959293505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082028115828204841417611b0d57611b0d612897565b5f8261290e577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b80820180821115611b0d57611b0d612897565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361298357612983612897565b5060010190565b81810381811115611b0d57611b0d612897565b5f602082840312156129ad575f80fd5b5051919050565b5f602082840312156129c4575f80fd5b8151611bb78161271a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a", } // DistributeABI is the input ABI used to generate the binding from. diff --git a/bindings/bindings/distribute_more.go b/bindings/bindings/distribute_more.go index 8aed84909..c64d807ec 100644 --- a/bindings/bindings/distribute_more.go +++ b/bindings/bindings/distribute_more.go @@ -13,7 +13,7 @@ const DistributeStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\": var DistributeStorageLayout = new(solc.StorageLayout) -var DistributeDeployedBin = "0x608060405234801561000f575f80fd5b5060043610610163575f3560e01c8063a766c529116100c7578063cd4281d01161007d578063d557714111610063578063d557714114610372578063de6ac93314610399578063f2fde38b146103bc575f80fd5b8063cd4281d014610338578063cdd0c50e1461035f575f80fd5b8063b809af0f116100ad578063b809af0f146102dd578063bf2dca0a146102f0578063c4d66de814610325575f80fd5b8063a766c52914610295578063ac2ac640146102ca575f80fd5b8063807de4431161011c578063921ae9b811610102578063921ae9b81461023e5780639889be5114610261578063996cba6814610282575f80fd5b8063807de443146101d45780638da5cb5b14610220575f80fd5b80635cf20c7b1161014c5780635cf20c7b146101a6578063715018a6146101b95780637f683ee3146101c1575f80fd5b8063273d8e82146101675780634eedab3214610191575b5f80fd5b61017a610175366004612ca5565b6103cf565b604051610188929190612d3d565b60405180910390f35b6101a461019f366004612d6a565b610820565b005b6101a46101b4366004612d6a565b6108e5565b6101a4610b39565b6101a46101cf366004612d92565b610b4c565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610188565b60335473ffffffffffffffffffffffffffffffffffffffff166101fb565b61025161024c366004612ca5565b610e14565b6040516101889493929190612dd1565b61027461026f366004612e50565b611214565b604051908152602001610188565b6101a4610290366004612e81565b6115a3565b6102746102a3366004612ca5565b73ffffffffffffffffffffffffffffffffffffffff165f9081526067602052604090205490565b6101a46102d8366004612ca5565b611708565b6101a46102eb366004612ec7565b6118b9565b6102746102fe366004612ca5565b73ffffffffffffffffffffffffffffffffffffffff165f9081526068602052604090205490565b6101a4610333366004612ca5565b611a52565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6101a461036d366004612f6e565b611c5d565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6103ac6103a7366004612e50565b612073565b6040519015158152602001610188565b6101a46103ca366004612ca5565b6120ab565b73ffffffffffffffffffffffffffffffffffffffff81165f908152606960205260408120606091829161040190612162565b9050805f03610497576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f672072657761726400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b8067ffffffffffffffff8111156104b0576104b061300a565b6040519080825280602002602001820160405280156104d9578160200160208202803683370190505b5092508067ffffffffffffffff8111156104f5576104f561300a565b60405190808252806020026020018201604052801561051e578160200160208202803683370190505b5091505f5b73ffffffffffffffffffffffffffffffffffffffff85165f90815260696020526040902061055090612162565b8110156108195773ffffffffffffffffffffffffffffffffffffffff85165f908152606960205260408120610585908361216b565b73ffffffffffffffffffffffffffffffffffffffff8088165f908152606960209081526040808320938516835260039093019052908120549192509081908190805b60655481101561079c5773ffffffffffffffffffffffffffffffffffffffff8087165f9081526066602090815260408083208584528252808320938f168352600490930190522054156106555773ffffffffffffffffffffffffffffffffffffffff8087165f9081526066602090815260408083208584528252808320938f16835260049093019052205492505b73ffffffffffffffffffffffffffffffffffffffff86165f908152606660209081526040808320848452909152902060010154156106c35773ffffffffffffffffffffffffffffffffffffffff86165f90815260666020908152604080832084845290915290206001015493505b73ffffffffffffffffffffffffffffffffffffffff86165f9081526066602090815260408083208484529091529020548490610700908590613064565b61070a919061307b565b61071490866130b3565b73ffffffffffffffffffffffffffffffffffffffff808d165f908152606960209081526040808320938b16835260029093019052205490955060ff168015610790575073ffffffffffffffffffffffffffffffffffffffff808c165f908152606960209081526040808320938a16835260049093019052205481145b61079c576001016105c7565b50848987815181106107b0576107b06130c6565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050838887815181106107fd576107fd6130c6565b6020908102919091010152505060019093019250610523915050565b5050915091565b61082861217d565b73ffffffffffffffffffffffffffffffffffffffff82165f908152606760205260409020545b8181116108b95773ffffffffffffffffffffffffffffffffffffffff83165f90815260666020908152604080832084845290915281208181556001810182905590600282018181816108a08282612c4f565b50505050505080806108b1906130f3565b91505061084e565b73ffffffffffffffffffffffffffffffffffffffff9092165f9081526067602052604090209190915550565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b6065545f036109ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6e6f74206d696e74656420796574000000000000000000000000000000000000604482015260640161048e565b5f811580610a0a57506001606554610a07919061312a565b82115b610a145781610a23565b6001606554610a23919061312a565b90505f805b73ffffffffffffffffffffffffffffffffffffffff85165f908152606960205260409020610a5590612162565b811015610b225773ffffffffffffffffffffffffffffffffffffffff85165f908152606960205260408120610a8a908361216b565b73ffffffffffffffffffffffffffffffffffffffff87165f908152606960205260409020909150610abb90826121fe565b8015610afc575073ffffffffffffffffffffffffffffffffffffffff8087165f90815260696020908152604080832093851683526003909301905220548410155b15610b1957610b0c81878661222c565b610b1690846130b3565b92505b50600101610a28565b508015610b3357610b3384826127ab565b50505050565b610b4161217d565b610b4a5f612a42565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610beb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff84165f9081526066602090815260408083208584529091529020600101819055811580610c61575073ffffffffffffffffffffffffffffffffffffffff8084165f908152606960209081526040808320938816835260039093019052205482145b15610d6d5773ffffffffffffffffffffffffffffffffffffffff84165f9081526066602090815260408083208584529091529020610ca29060020184612ab8565b5073ffffffffffffffffffffffffffffffffffffffff8085165f90815260666020908152604080832086845282528083209387168352600490930181528282208290556069905220610cf49085612ab8565b5073ffffffffffffffffffffffffffffffffffffffff8381165f908152606960209081526040808320938816835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556003840182528083208390556004909301905290812055610b33565b73ffffffffffffffffffffffffffffffffffffffff8084165f9081526069602090815260408083209388168352600290930190522080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001908117909155610dd8908361312a565b73ffffffffffffffffffffffffffffffffffffffff8085165f908152606960209081526040808320938916835260049093019052205550505050565b73ffffffffffffffffffffffffffffffffffffffff81165f908152606960205260408120606091829182918291610e4a90612162565b90505f8167ffffffffffffffff811115610e6657610e6661300a565b604051908082528060200260200182016040528015610e8f578160200160208202803683370190505b5090505f8267ffffffffffffffff811115610eac57610eac61300a565b604051908082528060200260200182016040528015610ed5578160200160208202803683370190505b5090505f8367ffffffffffffffff811115610ef257610ef261300a565b604051908082528060200260200182016040528015610f1b578160200160208202803683370190505b5090505f8467ffffffffffffffff811115610f3857610f3861300a565b604051908082528060200260200182016040528015610f61578160200160208202803683370190505b5090505f5b858110156112035773ffffffffffffffffffffffffffffffffffffffff8b165f908152606960205260409020610f9c908261216b565b858281518110610fae57610fae6130c6565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060695f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206002015f86838151811061103b5761103b6130c6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1684828151811061109b5761109b6130c6565b91151560209283029190910182015273ffffffffffffffffffffffffffffffffffffffff8c165f9081526069909152604081208651600390910191908790849081106110e9576110e96130c6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205483828151811061113d5761113d6130c6565b60200260200101818152505060695f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206004015f86838151811061119c5761119c6130c6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20548282815181106111f0576111f06130c6565b6020908102919091010152600101610f66565b509299919850965090945092505050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260696020526040812061124190612162565b5f036112cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f6720726577617264000000000000000000000000000000000000000000000000606482015260840161048e565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526069602052604090206112fd90846121fe565b611388576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f6e6f2072656d61696e696e6720726577617264206f66207468652064656c656760448201527f6174656500000000000000000000000000000000000000000000000000000000606482015260840161048e565b73ffffffffffffffffffffffffffffffffffffffff8083165f908152606960209081526040808320938716835260039093019052908120548190805b6065548110156115995773ffffffffffffffffffffffffffffffffffffffff8088165f9081526066602090815260408083208584528252808320938a168352600490930190522054156114525773ffffffffffffffffffffffffffffffffffffffff8088165f9081526066602090815260408083208584528252808320938a16835260049093019052205492505b73ffffffffffffffffffffffffffffffffffffffff87165f908152606660209081526040808320848452909152902060010154156114c05773ffffffffffffffffffffffffffffffffffffffff87165f90815260666020908152604080832084845290915290206001015493505b73ffffffffffffffffffffffffffffffffffffffff87165f90815260666020908152604080832084845290915290205484906114fd908590613064565b611507919061307b565b61151190866130b3565b73ffffffffffffffffffffffffffffffffffffffff8088165f908152606960209081526040808320938c16835260029093019052205490955060ff16801561158d575073ffffffffffffffffffffffffffffffffffffffff8087165f908152606960209081526040808320938b16835260049093019052205481145b611599576001016113c4565b5050505092915050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614611642576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b6065545f036116ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6e6f74206d696e74656420796574000000000000000000000000000000000000604482015260640161048e565b5f8115806116c8575060016065546116c5919061312a565b82115b6116d257816116e1565b60016065546116e1919061312a565b90505f6116ef85858461222c565b905080156117015761170184826127ab565b5050505050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146117a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260686020526040902054611832576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e6f20636f6d6d697373696f6e20746f20636c61696d00000000000000000000604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff81165f908152606860205260408120805491905561186582826127ab565b8173ffffffffffffffffffffffffffffffffffffffff167f8e14daa5332205b1634040e1054e93d1f5396ec8bf0115d133b7fbaf4a52e411826040516118ad91815260200190565b60405180910390a25050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614611958576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff86165f90815260666020908152604080832087845290915290206001810183905561199b9060020186612ad9565b5073ffffffffffffffffffffffffffffffffffffffff8087165f9081526066602090815260408083208884528252808320938916835260049093019052208390558015611a4a5773ffffffffffffffffffffffffffffffffffffffff85165f908152606960205260409020611a109087612ad9565b5073ffffffffffffffffffffffffffffffffffffffff8086165f908152606960209081526040808320938a16835260039093019052208490555b505050505050565b5f54610100900460ff1615808015611a7057505f54600160ff909116105b80611a895750303b158015611a8957505f5460ff166001145b611b15576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161048e565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611b71575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8216611bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206f776e657220616464726573730000000000000000000000604482015260640161048e565b611bf782612a42565b8015611c59575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614611cfc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f6f6e6c79207265636f726420636f6e747261637420616c6c6f77656400000000604482015260640161048e565b60658054905f611d0b836130f3565b9190505550866001606554611d20919061312a565b14611d87576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c69642065706f636820696e64657800000000000000000000000000604482015260640161048e565b8285148015611d9557508085145b611dfb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c69642064617461206c656e67746800000000000000000000000000604482015260640161048e565b5f5b8581101561206957848482818110611e1757611e176130c6565b9050602002013560665f898985818110611e3357611e336130c6565b9050602002016020810190611e489190612ca5565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260409081015f9081208c8252909252812091909155606690888884818110611e9357611e936130c6565b9050602002016020810190611ea89190612ca5565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260409081015f9081208b8252909252902060010154158015611eea57505f88115b15611fd25760665f888884818110611f0457611f046130c6565b9050602002016020810190611f199190612ca5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f60018a611f60919061312a565b81526020019081526020015f206001015460665f898985818110611f8657611f866130c6565b9050602002016020810190611f9b9190612ca5565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260409081015f9081208c82529092529020600101555b828282818110611fe457611fe46130c6565b9050602002013560685f898985818110612000576120006130c6565b90506020020160208101906120159190612ca5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461205c91906130b3565b9091555050600101611dfd565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526069602052604081206120a190836121fe565b1590505b92915050565b6120b361217d565b73ffffffffffffffffffffffffffffffffffffffff8116612156576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161048e565b61215f81612a42565b50565b5f6120a5825490565b5f6121768383612afa565b9392505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610b4a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526001830160205260408120541515612176565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260696020526040812061225a90856121fe565b6122c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f6e6f2072656d61696e696e672072657761726400000000000000000000000000604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff8084165f908152606960209081526040808320938816835260039093019052205482101561235f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f616c6c2072657761726420636c61696d65640000000000000000000000000000604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff8084165f9081526069602090815260408083209388168352600390930190529081205481905b84811161261e5773ffffffffffffffffffffffffffffffffffffffff8088165f9081526066602090815260408083208584528252808320938a168352600490930190522054156124255773ffffffffffffffffffffffffffffffffffffffff8088165f9081526066602090815260408083208584528252808320938a16835260049093019052205491505b73ffffffffffffffffffffffffffffffffffffffff87165f908152606660209081526040808320848452909152902060010154156124935773ffffffffffffffffffffffffffffffffffffffff87165f90815260666020908152604080832084845290915290206001015492505b73ffffffffffffffffffffffffffffffffffffffff87165f90815260666020908152604080832084845290915290205483906124d0908490613064565b6124da919061307b565b6124e490856130b3565b73ffffffffffffffffffffffffffffffffffffffff8088165f908152606960209081526040808320938c16835260029093019052205490945060ff168015612560575073ffffffffffffffffffffffffffffffffffffffff8087165f908152606960209081526040808320938b16835260049093019052205481145b1561260c5773ffffffffffffffffffffffffffffffffffffffff86165f9081526069602052604090206125939088612ab8565b5073ffffffffffffffffffffffffffffffffffffffff8681165f908152606960209081526040808320938b16835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055600384018252808320839055600490930190529081205561261e565b80612616816130f3565b91505061239a565b5061262a8460016130b3565b73ffffffffffffffffffffffffffffffffffffffff8087165f908152606960209081526040808320938b168352600390930181528282209390935560669092528120906126788660016130b3565b81526020019081526020015f206004015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20545f036127325773ffffffffffffffffffffffffffffffffffffffff86165f90815260666020526040812082916126fb8760016130b3565b815260208082019290925260409081015f90812073ffffffffffffffffffffffffffffffffffffffff8a1682526004019092529020555b8573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f7a84a08b02c91f3c62d572853f966fc799bbd121e8ad7833a4494ab8dcfcb404868660405161279a929190918252602082015260400190565b60405180910390a350509392505050565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906370a0823190602401602060405180830381865afa158015612835573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612859919061313d565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156128f0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129149190613154565b506040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906370a0823190602401602060405180830381865afa15801561299f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129c3919061313d565b90505f831180156129dc5750826129da828461312a565b145b610b33576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c65640000000000604482015260640161048e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f6121768373ffffffffffffffffffffffffffffffffffffffff8416612b20565b5f6121768373ffffffffffffffffffffffffffffffffffffffff8416612c03565b5f825f018281548110612b0f57612b0f6130c6565b905f5260205f200154905092915050565b5f8181526001830160205260408120548015612bfa575f612b4260018361312a565b85549091505f90612b559060019061312a565b9050818114612bb4575f865f018281548110612b7357612b736130c6565b905f5260205f200154905080875f018481548110612b9357612b936130c6565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080612bc557612bc561316f565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f9055600193505050506120a5565b5f9150506120a5565b5f818152600183016020526040812054612c4857508154600181810184555f8481526020808220909301849055845484825282860190935260409020919091556120a5565b505f6120a5565b5080545f8255905f5260205f209081019061215f91905b80821115612c79575f8155600101612c66565b5090565b803573ffffffffffffffffffffffffffffffffffffffff81168114612ca0575f80fd5b919050565b5f60208284031215612cb5575f80fd5b61217682612c7d565b5f815180845260208085019450602084015f5b83811015612d0357815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101612cd1565b509495945050505050565b5f815180845260208085019450602084015f5b83811015612d0357815187529582019590820190600101612d21565b604081525f612d4f6040830185612cbe565b8281036020840152612d618185612d0e565b95945050505050565b5f8060408385031215612d7b575f80fd5b612d8483612c7d565b946020939093013593505050565b5f805f8060808587031215612da5575f80fd5b612dae85612c7d565b9350612dbc60208601612c7d565b93969395505050506040820135916060013590565b608081525f612de36080830187612cbe565b8281036020848101919091528651808352878201928201905f5b81811015612e1b578451151583529383019391830191600101612dfd565b50508481036040860152612e2f8188612d0e565b925050508281036060840152612e458185612d0e565b979650505050505050565b5f8060408385031215612e61575f80fd5b612e6a83612c7d565b9150612e7860208401612c7d565b90509250929050565b5f805f60608486031215612e93575f80fd5b612e9c84612c7d565b9250612eaa60208501612c7d565b9150604084013590509250925092565b801515811461215f575f80fd5b5f805f805f8060c08789031215612edc575f80fd5b612ee587612c7d565b9550612ef360208801612c7d565b945060408701359350606087013592506080870135915060a0870135612f1881612eba565b809150509295509295509295565b5f8083601f840112612f36575f80fd5b50813567ffffffffffffffff811115612f4d575f80fd5b6020830191508360208260051b8501011115612f67575f80fd5b9250929050565b5f805f805f805f6080888a031215612f84575f80fd5b87359650602088013567ffffffffffffffff80821115612fa2575f80fd5b612fae8b838c01612f26565b909850965060408a0135915080821115612fc6575f80fd5b612fd28b838c01612f26565b909650945060608a0135915080821115612fea575f80fd5b50612ff78a828b01612f26565b989b979a50959850939692959293505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820281158282048414176120a5576120a5613037565b5f826130ae577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b808201808211156120a5576120a5613037565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361312357613123613037565b5060010190565b818103818111156120a5576120a5613037565b5f6020828403121561314d575f80fd5b5051919050565b5f60208284031215613164575f80fd5b815161217681612eba565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a" +var DistributeDeployedBin = "0x608060405234801561000f575f80fd5b5060043610610163575f3560e01c8063a766c529116100c7578063cd4281d01161007d578063d557714111610063578063d557714114610372578063de6ac93314610399578063f2fde38b146103bc575f80fd5b8063cd4281d014610338578063cdd0c50e1461035f575f80fd5b8063b809af0f116100ad578063b809af0f146102dd578063bf2dca0a146102f0578063c4d66de814610325575f80fd5b8063a766c52914610295578063ac2ac640146102ca575f80fd5b8063807de4431161011c578063921ae9b811610102578063921ae9b81461023e5780639889be5114610261578063996cba6814610282575f80fd5b8063807de443146101d45780638da5cb5b14610220575f80fd5b80635cf20c7b1161014c5780635cf20c7b146101a6578063715018a6146101b95780637f683ee3146101c1575f80fd5b8063273d8e82146101675780634eedab3214610191575b5f80fd5b61017a610175366004612ca3565b6103cf565b604051610188929190612d3b565b60405180910390f35b6101a461019f366004612d68565b610820565b005b6101a46101b4366004612d68565b6108e5565b6101a4610b39565b6101a46101cf366004612d90565b610b4c565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610188565b60335473ffffffffffffffffffffffffffffffffffffffff166101fb565b61025161024c366004612ca3565b610e14565b6040516101889493929190612dcf565b61027461026f366004612e4e565b611214565b604051908152602001610188565b6101a4610290366004612e7f565b6115a1565b6102746102a3366004612ca3565b73ffffffffffffffffffffffffffffffffffffffff165f9081526067602052604090205490565b6101a46102d8366004612ca3565b611706565b6101a46102eb366004612ec5565b6118b7565b6102746102fe366004612ca3565b73ffffffffffffffffffffffffffffffffffffffff165f9081526068602052604090205490565b6101a4610333366004612ca3565b611a50565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6101a461036d366004612f6c565b611c5b565b6101fb7f000000000000000000000000000000000000000000000000000000000000000081565b6103ac6103a7366004612e4e565b612071565b6040519015158152602001610188565b6101a46103ca366004612ca3565b6120a9565b73ffffffffffffffffffffffffffffffffffffffff81165f908152606960205260408120606091829161040190612160565b9050805f03610497576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f672072657761726400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b8067ffffffffffffffff8111156104b0576104b0613008565b6040519080825280602002602001820160405280156104d9578160200160208202803683370190505b5092508067ffffffffffffffff8111156104f5576104f5613008565b60405190808252806020026020018201604052801561051e578160200160208202803683370190505b5091505f5b73ffffffffffffffffffffffffffffffffffffffff85165f90815260696020526040902061055090612160565b8110156108195773ffffffffffffffffffffffffffffffffffffffff85165f9081526069602052604081206105859083612169565b73ffffffffffffffffffffffffffffffffffffffff8088165f908152606960209081526040808320938516835260039093019052908120549192509081908190805b60655481101561079c5773ffffffffffffffffffffffffffffffffffffffff8087165f9081526066602090815260408083208584528252808320938f168352600490930190522054156106555773ffffffffffffffffffffffffffffffffffffffff8087165f9081526066602090815260408083208584528252808320938f16835260049093019052205492505b73ffffffffffffffffffffffffffffffffffffffff86165f908152606660209081526040808320848452909152902060010154156106c35773ffffffffffffffffffffffffffffffffffffffff86165f90815260666020908152604080832084845290915290206001015493505b73ffffffffffffffffffffffffffffffffffffffff86165f9081526066602090815260408083208484529091529020548490610700908590613062565b61070a9190613079565b61071490866130b1565b73ffffffffffffffffffffffffffffffffffffffff808d165f908152606960209081526040808320938b16835260029093019052205490955060ff168015610790575073ffffffffffffffffffffffffffffffffffffffff808c165f908152606960209081526040808320938a16835260049093019052205481145b61079c576001016105c7565b50848987815181106107b0576107b06130c4565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050838887815181106107fd576107fd6130c4565b6020908102919091010152505060019093019250610523915050565b5050915091565b61082861217b565b73ffffffffffffffffffffffffffffffffffffffff82165f908152606760205260409020545b8181116108b95773ffffffffffffffffffffffffffffffffffffffff83165f90815260666020908152604080832084845290915281208181556001810182905590600282018181816108a08282612c4d565b50505050505080806108b1906130f1565b91505061084e565b73ffffffffffffffffffffffffffffffffffffffff9092165f9081526067602052604090209190915550565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b6065545f036109ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6e6f74206d696e74656420796574000000000000000000000000000000000000604482015260640161048e565b5f811580610a0a57506001606554610a079190613128565b82115b610a145781610a23565b6001606554610a239190613128565b90505f805b73ffffffffffffffffffffffffffffffffffffffff85165f908152606960205260409020610a5590612160565b811015610b225773ffffffffffffffffffffffffffffffffffffffff85165f908152606960205260408120610a8a9083612169565b73ffffffffffffffffffffffffffffffffffffffff87165f908152606960205260409020909150610abb90826121fc565b8015610afc575073ffffffffffffffffffffffffffffffffffffffff8087165f90815260696020908152604080832093851683526003909301905220548410155b15610b1957610b0c81878661222a565b610b1690846130b1565b92505b50600101610a28565b508015610b3357610b3384826127a9565b50505050565b610b4161217b565b610b4a5f612a40565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610beb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff84165f9081526066602090815260408083208584529091529020600101819055811580610c61575073ffffffffffffffffffffffffffffffffffffffff8084165f908152606960209081526040808320938816835260039093019052205482145b15610d6d5773ffffffffffffffffffffffffffffffffffffffff84165f9081526066602090815260408083208584529091529020610ca29060020184612ab6565b5073ffffffffffffffffffffffffffffffffffffffff8085165f90815260666020908152604080832086845282528083209387168352600490930181528282208290556069905220610cf49085612ab6565b5073ffffffffffffffffffffffffffffffffffffffff8381165f908152606960209081526040808320938816835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556003840182528083208390556004909301905290812055610b33565b73ffffffffffffffffffffffffffffffffffffffff8084165f9081526069602090815260408083209388168352600290930190522080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001908117909155610dd89083613128565b73ffffffffffffffffffffffffffffffffffffffff8085165f908152606960209081526040808320938916835260049093019052205550505050565b73ffffffffffffffffffffffffffffffffffffffff81165f908152606960205260408120606091829182918291610e4a90612160565b90505f8167ffffffffffffffff811115610e6657610e66613008565b604051908082528060200260200182016040528015610e8f578160200160208202803683370190505b5090505f8267ffffffffffffffff811115610eac57610eac613008565b604051908082528060200260200182016040528015610ed5578160200160208202803683370190505b5090505f8367ffffffffffffffff811115610ef257610ef2613008565b604051908082528060200260200182016040528015610f1b578160200160208202803683370190505b5090505f8467ffffffffffffffff811115610f3857610f38613008565b604051908082528060200260200182016040528015610f61578160200160208202803683370190505b5090505f5b858110156112035773ffffffffffffffffffffffffffffffffffffffff8b165f908152606960205260409020610f9c9082612169565b858281518110610fae57610fae6130c4565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060695f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206002015f86838151811061103b5761103b6130c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1684828151811061109b5761109b6130c4565b91151560209283029190910182015273ffffffffffffffffffffffffffffffffffffffff8c165f9081526069909152604081208651600390910191908790849081106110e9576110e96130c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205483828151811061113d5761113d6130c4565b60200260200101818152505060695f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206004015f86838151811061119c5761119c6130c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20548282815181106111f0576111f06130c4565b6020908102919091010152600101610f66565b509299919850965090945092505050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260696020526040812061124190612160565b5f036112cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f696e76616c69642064656c656761746f72206f72206e6f2072656d61696e696e60448201527f6720726577617264000000000000000000000000000000000000000000000000606482015260840161048e565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526069602052604090206112fd90846121fc565b611388576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f6e6f2072656d61696e696e6720726577617264206f66207468652064656c656760448201527f6174656500000000000000000000000000000000000000000000000000000000606482015260840161048e565b73ffffffffffffffffffffffffffffffffffffffff8083165f9081526069602090815260408083209387168352600390930190529081205481905b6065548110156115985773ffffffffffffffffffffffffffffffffffffffff8087165f90815260666020908152604080832085845282528083209389168352600490930190522054156114515773ffffffffffffffffffffffffffffffffffffffff8087165f9081526066602090815260408083208584528252808320938916835260049093019052205491505b73ffffffffffffffffffffffffffffffffffffffff86165f908152606660209081526040808320848452909152902060010154156114bf5773ffffffffffffffffffffffffffffffffffffffff86165f90815260666020908152604080832084845290915290206001015492505b73ffffffffffffffffffffffffffffffffffffffff86165f90815260666020908152604080832084845290915290205483906114fc908490613062565b6115069190613079565b61151090856130b1565b73ffffffffffffffffffffffffffffffffffffffff8087165f908152606960209081526040808320938b16835260029093019052205490945060ff16801561158c575073ffffffffffffffffffffffffffffffffffffffff8086165f908152606960209081526040808320938a16835260049093019052205481145b611598576001016113c3565b50505092915050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614611640576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b6065545f036116ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6e6f74206d696e74656420796574000000000000000000000000000000000000604482015260640161048e565b5f8115806116c6575060016065546116c39190613128565b82115b6116d057816116df565b60016065546116df9190613128565b90505f6116ed85858461222a565b905080156116ff576116ff84826127a9565b5050505050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146117a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260686020526040902054611830576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e6f20636f6d6d697373696f6e20746f20636c61696d00000000000000000000604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff81165f908152606860205260408120805491905561186382826127a9565b8173ffffffffffffffffffffffffffffffffffffffff167f8e14daa5332205b1634040e1054e93d1f5396ec8bf0115d133b7fbaf4a52e411826040516118ab91815260200190565b60405180910390a25050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614611956576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6f6e6c79206c32207374616b696e6720636f6e747261637420616c6c6f776564604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff86165f9081526066602090815260408083208784529091529020600181018390556119999060020186612ad7565b5073ffffffffffffffffffffffffffffffffffffffff8087165f9081526066602090815260408083208884528252808320938916835260049093019052208390558015611a485773ffffffffffffffffffffffffffffffffffffffff85165f908152606960205260409020611a0e9087612ad7565b5073ffffffffffffffffffffffffffffffffffffffff8086165f908152606960209081526040808320938a16835260039093019052208490555b505050505050565b5f54610100900460ff1615808015611a6e57505f54600160ff909116105b80611a875750303b158015611a8757505f5460ff166001145b611b13576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161048e565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611b6f575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8216611bec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206f776e657220616464726573730000000000000000000000604482015260640161048e565b611bf582612a40565b8015611c57575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614611cfa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f6f6e6c79207265636f726420636f6e747261637420616c6c6f77656400000000604482015260640161048e565b60658054905f611d09836130f1565b9190505550866001606554611d1e9190613128565b14611d85576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c69642065706f636820696e64657800000000000000000000000000604482015260640161048e565b8285148015611d9357508085145b611df9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c69642064617461206c656e67746800000000000000000000000000604482015260640161048e565b5f5b8581101561206757848482818110611e1557611e156130c4565b9050602002013560665f898985818110611e3157611e316130c4565b9050602002016020810190611e469190612ca3565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260409081015f9081208c8252909252812091909155606690888884818110611e9157611e916130c4565b9050602002016020810190611ea69190612ca3565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260409081015f9081208b8252909252902060010154158015611ee857505f88115b15611fd05760665f888884818110611f0257611f026130c4565b9050602002016020810190611f179190612ca3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f60018a611f5e9190613128565b81526020019081526020015f206001015460665f898985818110611f8457611f846130c4565b9050602002016020810190611f999190612ca3565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260409081015f9081208c82529092529020600101555b828282818110611fe257611fe26130c4565b9050602002013560685f898985818110611ffe57611ffe6130c4565b90506020020160208101906120139190612ca3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461205a91906130b1565b9091555050600101611dfb565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260696020526040812061209f90836121fc565b1590505b92915050565b6120b161217b565b73ffffffffffffffffffffffffffffffffffffffff8116612154576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161048e565b61215d81612a40565b50565b5f6120a3825490565b5f6121748383612af8565b9392505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610b4a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526001830160205260408120541515612174565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260696020526040812061225890856121fc565b6122be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f6e6f2072656d61696e696e672072657761726400000000000000000000000000604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff8084165f908152606960209081526040808320938816835260039093019052205482101561235d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f616c6c2072657761726420636c61696d65640000000000000000000000000000604482015260640161048e565b73ffffffffffffffffffffffffffffffffffffffff8084165f9081526069602090815260408083209388168352600390930190529081205481905b84811161261c5773ffffffffffffffffffffffffffffffffffffffff8088165f9081526066602090815260408083208584528252808320938a168352600490930190522054156124235773ffffffffffffffffffffffffffffffffffffffff8088165f9081526066602090815260408083208584528252808320938a16835260049093019052205491505b73ffffffffffffffffffffffffffffffffffffffff87165f908152606660209081526040808320848452909152902060010154156124915773ffffffffffffffffffffffffffffffffffffffff87165f90815260666020908152604080832084845290915290206001015492505b73ffffffffffffffffffffffffffffffffffffffff87165f90815260666020908152604080832084845290915290205483906124ce908490613062565b6124d89190613079565b6124e290856130b1565b73ffffffffffffffffffffffffffffffffffffffff8088165f908152606960209081526040808320938c16835260029093019052205490945060ff16801561255e575073ffffffffffffffffffffffffffffffffffffffff8087165f908152606960209081526040808320938b16835260049093019052205481145b1561260a5773ffffffffffffffffffffffffffffffffffffffff86165f9081526069602052604090206125919088612ab6565b5073ffffffffffffffffffffffffffffffffffffffff8681165f908152606960209081526040808320938b16835260028401825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055600384018252808320839055600490930190529081205561261c565b80612614816130f1565b915050612398565b506126288460016130b1565b73ffffffffffffffffffffffffffffffffffffffff8087165f908152606960209081526040808320938b168352600390930181528282209390935560669092528120906126768660016130b1565b81526020019081526020015f206004015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20545f036127305773ffffffffffffffffffffffffffffffffffffffff86165f90815260666020526040812082916126f98760016130b1565b815260208082019290925260409081015f90812073ffffffffffffffffffffffffffffffffffffffff8a1682526004019092529020555b8573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f7a84a08b02c91f3c62d572853f966fc799bbd121e8ad7833a4494ab8dcfcb4048686604051612798929190918252602082015260400190565b60405180910390a350509392505050565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906370a0823190602401602060405180830381865afa158015612833573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612857919061313b565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156128ee573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129129190613152565b506040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906370a0823190602401602060405180830381865afa15801561299d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129c1919061313b565b90505f831180156129da5750826129d88284613128565b145b610b33576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c65640000000000604482015260640161048e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f6121748373ffffffffffffffffffffffffffffffffffffffff8416612b1e565b5f6121748373ffffffffffffffffffffffffffffffffffffffff8416612c01565b5f825f018281548110612b0d57612b0d6130c4565b905f5260205f200154905092915050565b5f8181526001830160205260408120548015612bf8575f612b40600183613128565b85549091505f90612b5390600190613128565b9050818114612bb2575f865f018281548110612b7157612b716130c4565b905f5260205f200154905080875f018481548110612b9157612b916130c4565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080612bc357612bc361316d565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f9055600193505050506120a3565b5f9150506120a3565b5f818152600183016020526040812054612c4657508154600181810184555f8481526020808220909301849055845484825282860190935260409020919091556120a3565b505f6120a3565b5080545f8255905f5260205f209081019061215d91905b80821115612c77575f8155600101612c64565b5090565b803573ffffffffffffffffffffffffffffffffffffffff81168114612c9e575f80fd5b919050565b5f60208284031215612cb3575f80fd5b61217482612c7b565b5f815180845260208085019450602084015f5b83811015612d0157815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101612ccf565b509495945050505050565b5f815180845260208085019450602084015f5b83811015612d0157815187529582019590820190600101612d1f565b604081525f612d4d6040830185612cbc565b8281036020840152612d5f8185612d0c565b95945050505050565b5f8060408385031215612d79575f80fd5b612d8283612c7b565b946020939093013593505050565b5f805f8060808587031215612da3575f80fd5b612dac85612c7b565b9350612dba60208601612c7b565b93969395505050506040820135916060013590565b608081525f612de16080830187612cbc565b8281036020848101919091528651808352878201928201905f5b81811015612e19578451151583529383019391830191600101612dfb565b50508481036040860152612e2d8188612d0c565b925050508281036060840152612e438185612d0c565b979650505050505050565b5f8060408385031215612e5f575f80fd5b612e6883612c7b565b9150612e7660208401612c7b565b90509250929050565b5f805f60608486031215612e91575f80fd5b612e9a84612c7b565b9250612ea860208501612c7b565b9150604084013590509250925092565b801515811461215d575f80fd5b5f805f805f8060c08789031215612eda575f80fd5b612ee387612c7b565b9550612ef160208801612c7b565b945060408701359350606087013592506080870135915060a0870135612f1681612eb8565b809150509295509295509295565b5f8083601f840112612f34575f80fd5b50813567ffffffffffffffff811115612f4b575f80fd5b6020830191508360208260051b8501011115612f65575f80fd5b9250929050565b5f805f805f805f6080888a031215612f82575f80fd5b87359650602088013567ffffffffffffffff80821115612fa0575f80fd5b612fac8b838c01612f24565b909850965060408a0135915080821115612fc4575f80fd5b612fd08b838c01612f24565b909650945060608a0135915080821115612fe8575f80fd5b50612ff58a828b01612f24565b989b979a50959850939692959293505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820281158282048414176120a3576120a3613035565b5f826130ac577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b808201808211156120a3576120a3613035565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361312157613121613035565b5060010190565b818103818111156120a3576120a3613035565b5f6020828403121561314b575f80fd5b5051919050565b5f60208284031215613162575f80fd5b815161217481612eb8565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(DistributeStorageLayoutJSON), DistributeStorageLayout); err != nil { diff --git a/bindings/bindings/l1staking.go b/bindings/bindings/l1staking.go index fd5ff82ad..6ef653abe 100644 --- a/bindings/bindings/l1staking.go +++ b/bindings/bindings/l1staking.go @@ -31,8 +31,8 @@ var ( // L1StakingMetaData contains all meta data concerning the L1Staking contract. var L1StakingMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"_messenger\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldChallengeDeposit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newChallengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeDepositUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"Claimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newGasLimit\",\"type\":\"uint256\"}],\"name\":\"GasLimitAddStakerUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newGasLimit\",\"type\":\"uint256\"}],\"name\":\"GasLimitRemoveStakersUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercentage\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercentage\",\"type\":\"uint256\"}],\"name\":\"RewardPercentageUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"SlashRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"stakers\",\"type\":\"address[]\"}],\"name\":\"Slashed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"stakers\",\"type\":\"address[]\"}],\"name\":\"StakersRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"add\",\"type\":\"address[]\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"remove\",\"type\":\"address[]\"}],\"name\":\"WhitelistUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"unlockHeight\",\"type\":\"uint256\"}],\"name\":\"Withdrawn\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"contractICrossDomainMessenger\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OTHER_STAKING\",\"outputs\":[{\"internalType\":\"contractStaking\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"blsPubkey\",\"type\":\"bytes\"}],\"name\":\"blsKeys\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"challengeDeposit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimSlashRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimWithdrawal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cleanStakerStore\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"deleteList\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"deleteableHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasLimitAddStaker\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasLimitRemoveStakers\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveStakers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"getStakerBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakers\",\"outputs\":[{\"internalType\":\"address[255]\",\"name\":\"\",\"type\":\"address[255]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_stakers\",\"type\":\"address[]\"}],\"name\":\"getStakersBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"name\":\"getStakersFromBitmap\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"stakerAddrs\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_rollupContract\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_stakingValue\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lockBlocks\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_rewardPercentage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimitAdd\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimitRemove\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isActiveStaker\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isStaker\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isStakerInDeleteList\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"name\":\"register\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_stakers\",\"type\":\"address[]\"}],\"name\":\"removeStaker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"removedList\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"removed\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollupContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sequencersBitmap\",\"type\":\"uint256\"}],\"name\":\"slash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"slashRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"stakerIndexes\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"index\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"stakerSet\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"stakers\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakingValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"tmPubkey\",\"type\":\"bytes32\"}],\"name\":\"tmKeys\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"updateChallengeDeposit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasLimitAdd\",\"type\":\"uint256\"}],\"name\":\"updateGasLimitAddStaker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasLimitRemove\",\"type\":\"uint256\"}],\"name\":\"updateGasLimitRemoveStakers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_rewardPercentage\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"add\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"remove\",\"type\":\"address[]\"}],\"name\":\"updateWhitelist\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"verifySignature\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"whitelist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"inWhitelist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawalLockBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"withdrawals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", - Bin: "0x60c060405234801562000010575f80fd5b5060405162003d5038038062003d50833981016040819052620000339162000127565b6001600160a01b03811660805273530000000000000000000000000000000000001560a0526200006262000069565b5062000156565b5f54610100900460ff1615620000d55760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000125575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000138575f80fd5b81516001600160a01b03811681146200014f575f80fd5b9392505050565b60805160a051613bb56200019b5f395f8181610659015281816128860152612afa01525f8181610431015281816106f6015281816128570152612acb0152613bb55ff3fe6080604052600436106102ed575f3560e01c80637a9262a211610186578063a4f209b0116100dc578063d096c3c611610087578063df15503311610062578063df155033146108ca578063e2a6ad5f14610901578063f2fde38b14610920575f80fd5b8063d096c3c614610855578063d51c90a914610874578063dd4785f514610889575f80fd5b8063bfa02ba9116100b7578063bfa02ba9146107f8578063c7cd469a14610817578063cde4cd1114610836575f80fd5b8063a4f209b0146107a5578063ab8c53dc146107c4578063ae81de53146107d9575f80fd5b80639168ae721161013c5780639d48f417116101175780639d48f417146107465780639fb82db914610772578063a3066aab14610786575f80fd5b80639168ae72146106b7578063927ede2d146106e55780639b19251a14610718575f80fd5b8063831cfb581161016c578063831cfb58146106485780638a565ac31461067b5780638da5cb5b1461069a575f80fd5b80637a9262a2146105fd5780638142951a14610629575f80fd5b806341de239b11610246578063692c565b116101f157806374fe27b7116101cc57806374fe27b71461057d578063797adbde146105a35780637a4e87c3146105c2575f80fd5b8063692c565b1461051b5780636f1e85331461054a578063715018a614610569575f80fd5b80634d64903a116102215780634d64903a146104d257806352d472eb146104e757806368015791146104fc575f80fd5b806341de239b1461047d57806343352d611461049257806345bc4d10146104b3575f80fd5b8063320ff860116102a65780633cb747bf116102815780633cb747bf146104235780633ccfd60b146104555780633ee2a1f914610469575f80fd5b8063320ff860146103a757806335928991146103c65780633a9bbede146103e5575f80fd5b80632a28e5a3116102d65780632a28e5a31461032f5780632e407a6f14610344578063303afb9e14610370575f80fd5b80630d13fd7b146102f15780632108db351461031a575b5f80fd5b3480156102fc575f80fd5b506103076101a65481565b6040519081526020015b60405180910390f35b348015610325575f80fd5b50610307609c5481565b61034261033d36600461333a565b61093f565b005b34801561034f575f80fd5b5061030761035e366004613394565b6101a16020525f908152604090205481565b34801561037b575f80fd5b5061038f61038a3660046133b4565b610d3a565b6040516001600160a01b039091168152602001610311565b3480156103b2575f80fd5b506103426103c13660046133cb565b610d59565b3480156103d1575f80fd5b506103426103e03660046133b4565b611074565b3480156103f0575f80fd5b506104136103ff366004613394565b609f6020525f908152604090205460ff1681565b6040519015158152602001610311565b34801561042e575f80fd5b507f000000000000000000000000000000000000000000000000000000000000000061038f565b348015610460575f80fd5b50610342611121565b348015610474575f80fd5b506103426112ed565b348015610488575f80fd5b5061030760995481565b34801561049d575f80fd5b506104a66112ff565b6040516103119190613473565b3480156104be575f80fd5b506103076104cd3660046133b4565b611345565b3480156104dd575f80fd5b5061030760985481565b3480156104f2575f80fd5b50610307609a5481565b348015610507575f80fd5b50610413610516366004613394565b61164b565b348015610526575f80fd5b506104136105353660046133b4565b6101a46020525f908152604090205460ff1681565b348015610555575f80fd5b50610413610564366004613394565b6116e6565b348015610574575f80fd5b5061034261175f565b348015610588575f80fd5b506104136105973660046134f5565b60019695505050505050565b3480156105ae575f80fd5b5061038f6105bd3660046133b4565b611770565b3480156105cd575f80fd5b506104136105dc36600461359b565b80516020818301810180516101a38252928201919093012091525460ff1681565b348015610608575f80fd5b50610307610617366004613394565b6101a56020525f908152604090205481565b348015610634575f80fd5b506103426106433660046135d5565b611799565b348015610653575f80fd5b5061038f7f000000000000000000000000000000000000000000000000000000000000000081565b348015610686575f80fd5b506103426106953660046133b4565b611c5b565b3480156106a5575f80fd5b506033546001600160a01b031661038f565b3480156106c2575f80fd5b506106d66106d1366004613394565b611cfe565b60405161031193929190613670565b3480156106f0575f80fd5b5061038f7f000000000000000000000000000000000000000000000000000000000000000081565b348015610723575f80fd5b50610413610732366004613394565b609e6020525f908152604090205460ff1681565b348015610751575f80fd5b506107656107603660046133b4565b611db1565b60405161031191906136a0565b34801561077d575f80fd5b50610765611ece565b348015610791575f80fd5b506103426107a0366004613394565b61207c565b3480156107b0575f80fd5b506103426107bf3660046133b4565b6121ac565b3480156107cf575f80fd5b50610307609d5481565b3480156107e4575f80fd5b506103426107f33660046133b4565b61225c565b348015610803575f80fd5b5060975461038f906001600160a01b031681565b348015610822575f80fd5b506103426108313660046136ec565b6122ff565b348015610841575f80fd5b50610342610850366004613394565b6124a0565b348015610860575f80fd5b5061030761086f366004613394565b61250e565b34801561087f575f80fd5b50610307609b5481565b348015610894575f80fd5b506108b86108a3366004613394565b61019f6020525f908152604090205460ff1681565b60405160ff9091168152602001610311565b3480156108d5575f80fd5b506104136108e4366004613394565b6001600160a01b03165f9081526101a16020526040902054151590565b34801561090c575f80fd5b5061030761091b366004613753565b612588565b34801561092b575f80fd5b5061034261093a366004613394565b6126ba565b335f818152609e602052604090205460ff166109a25760405162461bcd60e51b815260206004820152601060248201527f6e6f7420696e2077686974656c6973740000000000000000000000000000000060448201526064015b60405180910390fd5b335f9081526101a260205260409020546001600160a01b031615610a085760405162461bcd60e51b815260206004820152601260248201527f616c7265616479207265676973746572656400000000000000000000000000006044820152606401610999565b8215801590610a2657505f8381526101a4602052604090205460ff16155b610a725760405162461bcd60e51b815260206004820152601960248201527f696e76616c69642074656e6465726d696e74207075626b6579000000000000006044820152606401610999565b8151610100148015610aa557506101a382604051610a909190613792565b9081526040519081900360200190205460ff16155b610af15760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420626c73207075626b657900000000000000000000000000006044820152606401610999565b6098543414610b425760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c756500000000000000000000006044820152606401610999565b6040518060600160405280610b543390565b6001600160a01b03908116825260208083018790526040928301869052335f9081526101a28252839020845181547fffffffffffffffffffffffff00000000000000000000000000000000000000001693169290921782558301516001820155908201516002820190610bc79082613842565b50905050610bda610bd53390565b612747565b60016101a383604051610bed9190613792565b90815260408051918290036020908101909220805493151560ff199485161790555f8681526101a49092529020805490911660011790557fb9c7babb56df9f2da4a30811a6c778e4e68af88b72712d56cf62c5516e20e199610c4c3390565b8484604051610c5d93929190613670565b60405180910390a1335f9081526101a26020908152604091829020825160608101845281546001600160a01b03168152600182015492810192909252600281018054610d359484019190610cb0906137ad565b80601f0160208091040260200160405190810160405280929190818152602001828054610cdc906137ad565b8015610d275780601f10610cfe57610100808354040283529160200191610d27565b820191905f5260205f20905b815481529060010190602001808311610d0a57829003601f168201915b505050505081525050612855565b505050565b60a08160ff8110610d49575f80fd5b01546001600160a01b0316905081565b610d6161297d565b5f5b815181101561103057610d8e828281518110610d8157610d81613940565b602002602001015161164b565b610e005760405162461bcd60e51b815260206004820152602160248201527f6f6e6c7920616374697665207374616b65722063616e2062652072656d6f766560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610999565b6101a55f838381518110610e1657610e16613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20545f14610e8c5760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e670000000000000000000000000000000000000000006044820152606401610999565b609954610e99904361399a565b6101a55f848481518110610eaf57610eaf613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2081905550610efc828281518110610eef57610eef613940565b60200260200101516129d7565b818181518110610f0e57610f0e613940565b60200260200101516001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d56101a55f858581518110610f5657610f56613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054604051610f8d91815260200190565b60405180910390a2609e5f838381518110610faa57610faa613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f848481518110610ff757610ff7613940565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610d63565b507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161106091906136a0565b60405180910390a161107181612ac9565b50565b61107c61297d565b5f8111801561108e57506101a6548114155b6110da5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c7565006044820152606401610999565b6101a680549082905560408051828152602081018490527f36f971a40478225aeb80cfbf5e80306e8cb76d3bf7d56fdc5e490945cddb7d5591015b60405180910390a15050565b61112a3361164b565b6111765760405162461bcd60e51b815260206004820152601260248201527f6f6e6c7920616374697665207374616b657200000000000000000000000000006044820152606401610999565b335f9081526101a56020526040902054156111d35760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e670000000000000000000000000000000000000000006044820152606401610999565b6099546111e0904361399a565b335f8181526101a560205260409020919091556111fc906129d7565b335f8181526101a560209081526040918290205491519182527f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5910160405180910390a2335f908152609e60209081526040808320805460ff19908116909155609f83528184208054909116600190811790915581518181528083019092529091828101908036833701905050905033815f8151811061129e5761129e613940565b60200260200101906001600160a01b031690816001600160a01b0316815250507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161106091906136a0565b6112f561297d565b6112fd612bc1565b565b611307613207565b60408051611fe08101918290529060a09060ff9082845b81546001600160a01b0316815260019091019060200180831161131e575050505050905090565b6097545f906001600160a01b0316336001600160a01b0316146113aa5760405162461bcd60e51b815260206004820152601460248201527f6f6e6c7920726f6c6c757020636f6e74726163740000000000000000000000006044820152606401610999565b6113b2612e8c565b5f6113bc83611db1565b90505f805b825181101561156e575f6101a55f8584815181106113e1576113e1613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20541115611464576101a55f84838151811061142557611425613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f90556098548261145d919061399a565b9150611566565b61149e83828151811061147957611479613940565b60200260200101516001600160a01b03165f9081526101a16020526040902054151590565b611566576098546114af908361399a565b91506114c6838281518110610eef57610eef613940565b609e5f8483815181106114db576114db613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f85848151811061152857611528613940565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b6001016113c1565b505f6064609a548361158091906139ad565b61158a91906139c4565b905061159681836139fc565b609d5f8282546115a6919061399a565b90915550506097546115c1906001600160a01b031682612ee5565b7f654f4a61849f1b3ad10abb283d27f02d5fece7b820acc5a3b874713b58748b5a836040516115f091906136a0565b60405180910390a17f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848360405161162791906136a0565b60405180910390a161163883612ac9565b925050506116466001606555565b919050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361167457505f919050565b6001600160a01b0382165f81815261019f602052604090205460a09061169f9060019060ff16613a0f565b60ff1660ff81106116b2576116b2613940565b01546001600160a01b03161480156116e057506001600160a01b0382165f9081526101a16020526040902054155b92915050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361170f57505f919050565b6001600160a01b0382165f81815261019f602052604090205460a09061173a9060019060ff16613a0f565b60ff1660ff811061174d5761174d613940565b01546001600160a01b03161492915050565b61176761297d565b6112fd5f612f95565b6101a08181548110611780575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f54610100900460ff16158080156117b757505f54600160ff909116105b806117d05750303b1580156117d057505f5460ff166001145b6118425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610999565b5f805460ff191660011790558015611880575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0388166118d65760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420726f6c6c757020636f6e74726163740000000000000000006044820152606401610999565b5f87116119255760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c756500000000000000000000006044820152606401610999565b5f86116119745760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c7565006044820152606401610999565b5f85116119c35760405162461bcd60e51b815260206004820152601e60248201527f696e76616c6964207769746864726177616c206c6f636b20626c6f636b7300006044820152606401610999565b5f8311611a125760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420676173206c696d697420616464207374616b6572000000006044820152606401610999565b5f8211611a615760405162461bcd60e51b815260206004820181905260248201527f696e76616c696420676173206c696d69742072656d6f7665207374616b6572736044820152606401610999565b5f84118015611a71575060648411155b611ae25760405162461bcd60e51b8152602060048201526024808201527f696e76616c6964206368616c6c656e676572207265776172642070657263656e60448201527f74616765000000000000000000000000000000000000000000000000000000006064820152608401610999565b611aea612ffe565b611af2613082565b609780547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038a16179055609a84905560988790556101a68690556099859055609b839055609c829055604080515f8152602081018590527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910160405180910390a1604080515f8152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910160405180910390a1604080515f8152602081018690527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910160405180910390a18015611c51575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b611c6361297d565b5f81118015611c745750609c548114155b611cc05760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d697400000000000000000000006044820152606401610999565b609c80549082905560408051828152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f79101611115565b6101a26020525f90815260409020805460018201546002830180546001600160a01b03909316939192611d30906137ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611d5c906137ad565b8015611da75780601f10611d7e57610100808354040283529160200191611da7565b820191905f5260205f20905b815481529060010190602001808311611d8a57829003601f168201915b5050505050905083565b6060600182901c5f5b8115611de157611dcb81600161399a565b9050611dd86001836139fc565b82169150611dba565b8067ffffffffffffffff811115611dfa57611dfa613270565b604051908082528060200260200182016040528015611e23578160200160208202803683370190505b5092505f60015b60ff8160ff1611611ec557600160ff82161b861615611eb35760a0611e50600183613a0f565b60ff1660ff8110611e6357611e63613940565b015485516001600160a01b0390911690869084908110611e8557611e85613940565b6001600160a01b0390921660209283029190910190910152611ea882600161399a565b915082821015611ec5575b80611ebd81613a28565b915050611e2a565b50505050919050565b6040805160ff80825261200082019092526060915f91829160208201611fe0803683370190505090505f5b60ff811015611f9d575f60a08260ff8110611f1657611f16613940565b01546001600160a01b031614801590611f5e57506101a15f60a08360ff8110611f4157611f41613940565b01546001600160a01b0316815260208101919091526040015f2054155b15611f955782611f6d81613a46565b9350506001828281518110611f8457611f84613940565b911515602092830291909101909101525b600101611ef9565b505f8267ffffffffffffffff811115611fb857611fb8613270565b604051908082528060200260200182016040528015611fe1578160200160208202803683370190505b5090505f805b60ff8110156120725783818151811061200257612002613940565b60200260200101511561206a5760a08160ff811061202257612022613940565b015483516001600160a01b039091169084908490811061204457612044613940565b6001600160a01b03909216602092830291909101909101528161206681613a46565b9250505b600101611fe7565b5090949350505050565b612084612e8c565b335f9081526101a560205260409020546120e05760405162461bcd60e51b815260206004820152601460248201527f7769746864726177616c206e6f742065786973740000000000000000000000006044820152606401610999565b335f9081526101a5602052604090205443101561213f5760405162461bcd60e51b815260206004820152601160248201527f7769746864726177616c206c6f636b65640000000000000000000000000000006044820152606401610999565b335f9081526101a56020526040812055612157612bc1565b604080516001600160a01b0383168152905133917f89309c9b2aeaffbdce717113df9427298b20448c05919bf889e05f8c3094254b919081900360200190a26121a281609854612ee5565b6110716001606555565b6121b461297d565b5f811180156121c4575060648111155b80156121d25750609a548114155b61221e5760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642070657263656e74616765000000000000006044820152606401610999565b609a80549082905560408051828152602081018490527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba9101611115565b61226461297d565b5f811180156122755750609b548114155b6122c15760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d697400000000000000000000006044820152606401610999565b609b80549082905560408051828152602081018490527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c9101611115565b61230761297d565b5f5b838110156123ff57609f5f86868481811061232657612326613940565b905060200201602081019061233b9190613394565b6001600160a01b0316815260208101919091526040015f205460ff16156123a45760405162461bcd60e51b815260206004820152600f60248201527f696e2072656d6f766564206c69737400000000000000000000000000000000006044820152606401610999565b6001609e5f8787858181106123bb576123bb613940565b90506020020160208101906123d09190613394565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101612309565b505f5b8181101561245c57609e5f84848481811061241f5761241f613940565b90506020020160208101906124349190613394565b6001600160a01b0316815260208101919091526040015f20805460ff19169055600101612402565b507fe375867e538b40218c1b3db2ccceaf875eb073e38b510449e6088c1539ac8622848484846040516124929493929190613ac2565b60405180910390a150505050565b6124a861297d565b6124b0612e8c565b609d546124bd8282612ee5565b5f609d55604080516001600160a01b0384168152602081018390527fa1fefb6c5328a92a416e321ed50997303fe7135fd88c28b0592b21ce42b5cdd9910160405180910390a1506110716001606555565b5f612518826116e6565b6125645760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b65720000000000000000000000000000000000006044820152606401610999565b506001600160a01b03165f90815261019f6020526040902054600160ff9091161b90565b5f60ff8211156125da5760405162461bcd60e51b815260206004820152601c60248201527f7374616b657273206c656e677468206f7574206f6620626f756e6473000000006044820152606401610999565b5f5b828110156126b35761260e8484838181106125f9576125f9613940565b90506020020160208101906105649190613394565b61265a5760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b65720000000000000000000000000000000000006044820152606401610999565b61019f5f85858481811061267057612670613940565b90506020020160208101906126859190613394565b6001600160a01b0316815260208101919091526040015f2054600160ff90911681901b9290921791016125dc565b5092915050565b6126c261297d565b6001600160a01b03811661273e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610999565b61107181612f95565b5f5b60ff8160ff16101561280c575f60a060ff80841690811061276c5761276c613940565b01546001600160a01b031603612804578160a08260ff1660ff811061279357612793613940565b0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556127d5816001613af3565b6001600160a01b03929092165f90815261019f60205260409020805460ff191660ff9093169290921790915550565b600101612749565b5060405162461bcd60e51b815260206004820152600960248201527f736c6f742066756c6c00000000000000000000000000000000000000000000006044820152606401610999565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f846040516024016128b79190613b0c565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f6d454d5100000000000000000000000000000000000000000000000000000000179052609b5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261294d9493929190600401613b43565b5f604051808303815f87803b158015612964575f80fd5b505af1158015612976573d5f803e3d5ffd5b5050505050565b6033546001600160a01b031633146112fd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b6001600160a01b0381165f9081526101a1602052604090205415612a3d5760405162461bcd60e51b815260206004820152601560248201527f616c726561647920696e2064656c6574654c69737400000000000000000000006044820152606401610999565b6101a080546001810182555f919091527f7980fe0f714a613298681d64b7b8ffa7b148338dd52429f307d72798d5c317c40180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316179055609954612aad904361399a565b6001600160a01b039091165f9081526101a16020526040902055565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f84604051602401612b2b91906136a0565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0be67fcc00000000000000000000000000000000000000000000000000000000179052609c5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261294d9493929190600401613b43565b5f5b6101a05481101561107157436101a15f6101a08481548110612be757612be7613940565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205411612e7a5760a0600161019f5f6101a08581548110612c2c57612c2c613940565b5f9182526020808320909101546001600160a01b03168352820192909252604001902054612c5d919060ff16613a0f565b60ff1660ff8110612c7057612c70613940565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556101a0805461019f915f9184908110612cb257612cb2613940565b5f9182526020808320909101546001600160a01b031683528201929092526040018120805460ff191690556101a080546101a292919084908110612cf857612cf8613940565b5f9182526020808320909101546001600160a01b03168352820192909252604001812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590612d566002830182613226565b50506101a15f6101a08381548110612d7057612d70613940565b5f9182526020808320909101546001600160a01b031683528201929092526040018120556101a08054612da5906001906139fc565b81548110612db557612db5613940565b5f918252602090912001546101a080546001600160a01b039092169183908110612de157612de1613940565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506101a0805480612e1e57612e1e613b7b565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055019055612bc3565b80612e8481613a46565b915050612bc3565b600260655403612ede5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610999565b6002606555565b8015612f8a575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114612f34576040519150601f19603f3d011682016040523d82523d5f602084013e612f39565b606091505b5050905080610d355760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610999565b5050565b6001606555565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff1661307a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b6112fd613106565b5f54610100900460ff166130fe5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b6112fd61318b565b5f54610100900460ff166131825760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b6112fd33612f95565b5f54610100900460ff16612f8e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610999565b60405180611fe0016040528060ff906020820280368337509192915050565b508054613232906137ad565b5f825580601f10613241575050565b601f0160209004905f5260205f209081019061107191905b8082111561326c575f8155600101613259565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156132c6576132c6613270565b604052919050565b5f82601f8301126132dd575f80fd5b813567ffffffffffffffff8111156132f7576132f7613270565b61330a6020601f19601f8401160161329d565b81815284602083860101111561331e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f806040838503121561334b575f80fd5b82359150602083013567ffffffffffffffff811115613368575f80fd5b613374858286016132ce565b9150509250929050565b80356001600160a01b0381168114611646575f80fd5b5f602082840312156133a4575f80fd5b6133ad8261337e565b9392505050565b5f602082840312156133c4575f80fd5b5035919050565b5f60208083850312156133dc575f80fd5b823567ffffffffffffffff808211156133f3575f80fd5b818501915085601f830112613406575f80fd5b81358181111561341857613418613270565b8060051b915061342984830161329d565b8181529183018401918481019088841115613442575f80fd5b938501935b83851015613467576134588561337e565b82529385019390850190613447565b98975050505050505050565b611fe0810181835f5b60ff8110156134a45781516001600160a01b031683526020928301929091019060010161347c565b50505092915050565b5f8083601f8401126134bd575f80fd5b50813567ffffffffffffffff8111156134d4575f80fd5b6020830191508360208260051b85010111156134ee575f80fd5b9250929050565b5f805f805f806080878903121561350a575f80fd5b86359550602087013567ffffffffffffffff80821115613528575f80fd5b6135348a838b016134ad565b9097509550604089013594506060890135915080821115613553575f80fd5b818901915089601f830112613566575f80fd5b813581811115613574575f80fd5b8a6020828501011115613585575f80fd5b6020830194508093505050509295509295509295565b5f602082840312156135ab575f80fd5b813567ffffffffffffffff8111156135c1575f80fd5b6135cd848285016132ce565b949350505050565b5f805f805f805f60e0888a0312156135eb575f80fd5b6135f48861337e565b9960208901359950604089013598606081013598506080810135975060a0810135965060c00135945092505050565b5f5b8381101561363d578181015183820152602001613625565b50505f910152565b5f815180845261365c816020860160208601613623565b601f01601f19169290920160200192915050565b6001600160a01b0384168152826020820152606060408201525f6136976060830184613645565b95945050505050565b602080825282518282018190525f9190848201906040850190845b818110156136e05783516001600160a01b0316835292840192918401916001016136bb565b50909695505050505050565b5f805f80604085870312156136ff575f80fd5b843567ffffffffffffffff80821115613716575f80fd5b613722888389016134ad565b9096509450602087013591508082111561373a575f80fd5b50613747878288016134ad565b95989497509550505050565b5f8060208385031215613764575f80fd5b823567ffffffffffffffff81111561377a575f80fd5b613786858286016134ad565b90969095509350505050565b5f82516137a3818460208701613623565b9190910192915050565b600181811c908216806137c157607f821691505b6020821081036137f8577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b601f821115610d3557805f5260205f20601f840160051c810160208510156138235750805b601f840160051c820191505b81811015612976575f815560010161382f565b815167ffffffffffffffff81111561385c5761385c613270565b6138708161386a84546137ad565b846137fe565b602080601f8311600181146138c2575f841561388c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555613938565b5f85815260208120601f198616915b828110156138f0578886015182559484019460019091019084016138d1565b508582101561392c57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808201808211156116e0576116e061396d565b80820281158282048414176116e0576116e061396d565b5f826139f7577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b818103818111156116e0576116e061396d565b60ff82811682821603908111156116e0576116e061396d565b5f60ff821660ff8103613a3d57613a3d61396d565b60010192915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613a7657613a7661396d565b5060010190565b8183525f60208085019450825f5b85811015613ab7576001600160a01b03613aa48361337e565b1687529582019590820190600101613a8b565b509495945050505050565b604081525f613ad5604083018688613a7d565b8281036020840152613ae8818587613a7d565b979650505050505050565b60ff81811683821601908111156116e0576116e061396d565b602081526001600160a01b038251166020820152602082015160408201525f60408301516060808401526135cd6080840182613645565b6001600160a01b0385168152836020820152608060408201525f613b6a6080830185613645565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"_messenger\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldChallengeDeposit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newChallengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeDepositUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"Claimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newGasLimit\",\"type\":\"uint256\"}],\"name\":\"GasLimitAddStakerUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newGasLimit\",\"type\":\"uint256\"}],\"name\":\"GasLimitRemoveStakersUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercentage\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercentage\",\"type\":\"uint256\"}],\"name\":\"RewardPercentageUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"SlashRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"stakers\",\"type\":\"address[]\"}],\"name\":\"Slashed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"stakers\",\"type\":\"address[]\"}],\"name\":\"StakersRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldStakingValue\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newStakingValue\",\"type\":\"uint256\"}],\"name\":\"StakingValueUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"add\",\"type\":\"address[]\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"remove\",\"type\":\"address[]\"}],\"name\":\"WhitelistUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"unlockHeight\",\"type\":\"uint256\"}],\"name\":\"Withdrawn\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"contractICrossDomainMessenger\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OTHER_STAKING\",\"outputs\":[{\"internalType\":\"contractStaking\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"blsPubkey\",\"type\":\"bytes\"}],\"name\":\"blsKeys\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"challengeDeposit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimSlashRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimWithdrawal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cleanStakerStore\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"deleteList\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"deleteableHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasLimitAddStaker\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasLimitRemoveStakers\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveStakers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"getStakerBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakers\",\"outputs\":[{\"internalType\":\"address[255]\",\"name\":\"\",\"type\":\"address[255]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_stakers\",\"type\":\"address[]\"}],\"name\":\"getStakersBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"name\":\"getStakersFromBitmap\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"stakerAddrs\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_rollupContract\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_stakingValue\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lockBlocks\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_rewardPercentage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimitAdd\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimitRemove\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isActiveStaker\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isStaker\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isStakerInDeleteList\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"name\":\"register\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_stakers\",\"type\":\"address[]\"}],\"name\":\"removeStaker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"removedList\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"removed\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollupContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sequencersBitmap\",\"type\":\"uint256\"}],\"name\":\"slash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"slashRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"stakerIndexes\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"index\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"stakerSet\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"stakers\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakingValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"tmPubkey\",\"type\":\"bytes32\"}],\"name\":\"tmKeys\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"updateChallengeDeposit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasLimitAdd\",\"type\":\"uint256\"}],\"name\":\"updateGasLimitAddStaker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasLimitRemove\",\"type\":\"uint256\"}],\"name\":\"updateGasLimitRemoveStakers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_rewardPercentage\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_stakingValue\",\"type\":\"uint256\"}],\"name\":\"updateStakingValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"add\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"remove\",\"type\":\"address[]\"}],\"name\":\"updateWhitelist\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"verifySignature\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"stakerAddr\",\"type\":\"address\"}],\"name\":\"whitelist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"inWhitelist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawalLockBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"withdrawals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", + Bin: "0x60c060405234801562000010575f80fd5b5060405162003e1d38038062003e1d833981016040819052620000339162000127565b6001600160a01b03811660805273530000000000000000000000000000000000001560a0526200006262000069565b5062000156565b5f54610100900460ff1615620000d55760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000125575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000138575f80fd5b81516001600160a01b03811681146200014f575f80fd5b9392505050565b60805160a051613c826200019b5f395f8181610664015281816129530152612bc701525f818161043c01528181610701015281816129240152612b980152613c825ff3fe6080604052600436106102f8575f3560e01c80637a9262a211610191578063ab8c53dc116100dc578063d51c90a911610087578063e2a6ad5f11610062578063e2a6ad5f1461090c578063f2fde38b1461092b578063f4fe7fef1461094a575f80fd5b8063d51c90a91461087f578063dd4785f514610894578063df155033146108d5575f80fd5b8063c7cd469a116100b7578063c7cd469a14610822578063cde4cd1114610841578063d096c3c614610860575f80fd5b8063ab8c53dc146107cf578063ae81de53146107e4578063bfa02ba914610803575f80fd5b8063927ede2d1161013c5780639fb82db9116101175780639fb82db91461077d578063a3066aab14610791578063a4f209b0146107b0575f80fd5b8063927ede2d146106f05780639b19251a146107235780639d48f41714610751575f80fd5b80638a565ac31161016c5780638a565ac3146106865780638da5cb5b146106a55780639168ae72146106c2575f80fd5b80637a9262a2146106085780638142951a14610634578063831cfb5814610653575f80fd5b806341de239b11610251578063692c565b116101fc57806374fe27b7116101d757806374fe27b714610588578063797adbde146105ae5780637a4e87c3146105cd575f80fd5b8063692c565b146105265780636f1e853314610555578063715018a614610574575f80fd5b80634d64903a1161022c5780634d64903a146104dd57806352d472eb146104f25780636801579114610507575f80fd5b806341de239b1461048857806343352d611461049d57806345bc4d10146104be575f80fd5b8063320ff860116102b15780633cb747bf1161028c5780633cb747bf1461042e5780633ccfd60b146104605780633ee2a1f914610474575f80fd5b8063320ff860146103b257806335928991146103d15780633a9bbede146103f0575f80fd5b80632a28e5a3116102e15780632a28e5a31461033a5780632e407a6f1461034f578063303afb9e1461037b575f80fd5b80630d13fd7b146102fc5780632108db3514610325575b5f80fd5b348015610307575f80fd5b506103126101a65481565b6040519081526020015b60405180910390f35b348015610330575f80fd5b50610312609c5481565b61034d610348366004613407565b610969565b005b34801561035a575f80fd5b50610312610369366004613461565b6101a16020525f908152604090205481565b348015610386575f80fd5b5061039a610395366004613481565b610d64565b6040516001600160a01b03909116815260200161031c565b3480156103bd575f80fd5b5061034d6103cc366004613498565b610d83565b3480156103dc575f80fd5b5061034d6103eb366004613481565b61109e565b3480156103fb575f80fd5b5061041e61040a366004613461565b609f6020525f908152604090205460ff1681565b604051901515815260200161031c565b348015610439575f80fd5b507f000000000000000000000000000000000000000000000000000000000000000061039a565b34801561046b575f80fd5b5061034d61114b565b34801561047f575f80fd5b5061034d611317565b348015610493575f80fd5b5061031260995481565b3480156104a8575f80fd5b506104b1611329565b60405161031c9190613540565b3480156104c9575f80fd5b506103126104d8366004613481565b61136f565b3480156104e8575f80fd5b5061031260985481565b3480156104fd575f80fd5b50610312609a5481565b348015610512575f80fd5b5061041e610521366004613461565b611675565b348015610531575f80fd5b5061041e610540366004613481565b6101a46020525f908152604090205460ff1681565b348015610560575f80fd5b5061041e61056f366004613461565b611710565b34801561057f575f80fd5b5061034d611789565b348015610593575f80fd5b5061041e6105a23660046135c2565b60019695505050505050565b3480156105b9575f80fd5b5061039a6105c8366004613481565b61179a565b3480156105d8575f80fd5b5061041e6105e7366004613668565b80516020818301810180516101a38252928201919093012091525460ff1681565b348015610613575f80fd5b50610312610622366004613461565b6101a56020525f908152604090205481565b34801561063f575f80fd5b5061034d61064e3660046136a2565b6117c3565b34801561065e575f80fd5b5061039a7f000000000000000000000000000000000000000000000000000000000000000081565b348015610691575f80fd5b5061034d6106a0366004613481565b611c85565b3480156106b0575f80fd5b506033546001600160a01b031661039a565b3480156106cd575f80fd5b506106e16106dc366004613461565b611d28565b60405161031c9392919061373d565b3480156106fb575f80fd5b5061039a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561072e575f80fd5b5061041e61073d366004613461565b609e6020525f908152604090205460ff1681565b34801561075c575f80fd5b5061077061076b366004613481565b611ddb565b60405161031c919061376d565b348015610788575f80fd5b50610770611ef8565b34801561079c575f80fd5b5061034d6107ab366004613461565b6120a6565b3480156107bb575f80fd5b5061034d6107ca366004613481565b6121d6565b3480156107da575f80fd5b50610312609d5481565b3480156107ef575f80fd5b5061034d6107fe366004613481565b612286565b34801561080e575f80fd5b5060975461039a906001600160a01b031681565b34801561082d575f80fd5b5061034d61083c3660046137b9565b612329565b34801561084c575f80fd5b5061034d61085b366004613461565b6124ca565b34801561086b575f80fd5b5061031261087a366004613461565b612538565b34801561088a575f80fd5b50610312609b5481565b34801561089f575f80fd5b506108c36108ae366004613461565b61019f6020525f908152604090205460ff1681565b60405160ff909116815260200161031c565b3480156108e0575f80fd5b5061041e6108ef366004613461565b6001600160a01b03165f9081526101a16020526040902054151590565b348015610917575f80fd5b50610312610926366004613820565b6125b2565b348015610936575f80fd5b5061034d610945366004613461565b6126e4565b348015610955575f80fd5b5061034d610964366004613481565b612771565b335f818152609e602052604090205460ff166109cc5760405162461bcd60e51b815260206004820152601060248201527f6e6f7420696e2077686974656c6973740000000000000000000000000000000060448201526064015b60405180910390fd5b335f9081526101a260205260409020546001600160a01b031615610a325760405162461bcd60e51b815260206004820152601260248201527f616c72656164792072656769737465726564000000000000000000000000000060448201526064016109c3565b8215801590610a5057505f8381526101a4602052604090205460ff16155b610a9c5760405162461bcd60e51b815260206004820152601960248201527f696e76616c69642074656e6465726d696e74207075626b65790000000000000060448201526064016109c3565b8151610100148015610acf57506101a382604051610aba919061385f565b9081526040519081900360200190205460ff16155b610b1b5760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420626c73207075626b6579000000000000000000000000000060448201526064016109c3565b6098543414610b6c5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109c3565b6040518060600160405280610b7e3390565b6001600160a01b03908116825260208083018790526040928301869052335f9081526101a28252839020845181547fffffffffffffffffffffffff00000000000000000000000000000000000000001693169290921782558301516001820155908201516002820190610bf1908261390f565b50905050610c04610bff3390565b612814565b60016101a383604051610c17919061385f565b90815260408051918290036020908101909220805493151560ff199485161790555f8681526101a49092529020805490911660011790557fb9c7babb56df9f2da4a30811a6c778e4e68af88b72712d56cf62c5516e20e199610c763390565b8484604051610c879392919061373d565b60405180910390a1335f9081526101a26020908152604091829020825160608101845281546001600160a01b03168152600182015492810192909252600281018054610d5f9484019190610cda9061387a565b80601f0160208091040260200160405190810160405280929190818152602001828054610d069061387a565b8015610d515780601f10610d2857610100808354040283529160200191610d51565b820191905f5260205f20905b815481529060010190602001808311610d3457829003601f168201915b505050505081525050612922565b505050565b60a08160ff8110610d73575f80fd5b01546001600160a01b0316905081565b610d8b612a4a565b5f5b815181101561105a57610db8828281518110610dab57610dab613a0d565b6020026020010151611675565b610e2a5760405162461bcd60e51b815260206004820152602160248201527f6f6e6c7920616374697665207374616b65722063616e2062652072656d6f766560448201527f640000000000000000000000000000000000000000000000000000000000000060648201526084016109c3565b6101a55f838381518110610e4057610e40613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20545f14610eb65760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e6700000000000000000000000000000000000000000060448201526064016109c3565b609954610ec39043613a67565b6101a55f848481518110610ed957610ed9613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2081905550610f26828281518110610f1957610f19613a0d565b6020026020010151612aa4565b818181518110610f3857610f38613a0d565b60200260200101516001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d56101a55f858581518110610f8057610f80613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054604051610fb791815260200190565b60405180910390a2609e5f838381518110610fd457610fd4613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f84848151811061102157611021613a0d565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610d8d565b507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161108a919061376d565b60405180910390a161109b81612b96565b50565b6110a6612a4a565b5f811180156110b857506101a6548114155b6111045760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c75650060448201526064016109c3565b6101a680549082905560408051828152602081018490527f36f971a40478225aeb80cfbf5e80306e8cb76d3bf7d56fdc5e490945cddb7d5591015b60405180910390a15050565b61115433611675565b6111a05760405162461bcd60e51b815260206004820152601260248201527f6f6e6c7920616374697665207374616b6572000000000000000000000000000060448201526064016109c3565b335f9081526101a56020526040902054156111fd5760405162461bcd60e51b815260206004820152600b60248201527f7769746864726177696e6700000000000000000000000000000000000000000060448201526064016109c3565b60995461120a9043613a67565b335f8181526101a5602052604090209190915561122690612aa4565b335f8181526101a560209081526040918290205491519182527f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5910160405180910390a2335f908152609e60209081526040808320805460ff19908116909155609f83528184208054909116600190811790915581518181528083019092529091828101908036833701905050905033815f815181106112c8576112c8613a0d565b60200260200101906001600160a01b031690816001600160a01b0316815250507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161108a919061376d565b61131f612a4a565b611327612c8e565b565b6113316132d4565b60408051611fe08101918290529060a09060ff9082845b81546001600160a01b03168152600190910190602001808311611348575050505050905090565b6097545f906001600160a01b0316336001600160a01b0316146113d45760405162461bcd60e51b815260206004820152601460248201527f6f6e6c7920726f6c6c757020636f6e747261637400000000000000000000000060448201526064016109c3565b6113dc612f59565b5f6113e683611ddb565b90505f805b8251811015611598575f6101a55f85848151811061140b5761140b613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f2054111561148e576101a55f84838151811061144f5761144f613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f9055609854826114879190613a67565b9150611590565b6114c88382815181106114a3576114a3613a0d565b60200260200101516001600160a01b03165f9081526101a16020526040902054151590565b611590576098546114d99083613a67565b91506114f0838281518110610f1957610f19613a0d565b609e5f84838151811061150557611505613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81549060ff02191690556001609f5f85848151811061155257611552613a0d565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b6001016113eb565b505f6064609a54836115aa9190613a7a565b6115b49190613a91565b90506115c08183613ac9565b609d5f8282546115d09190613a67565b90915550506097546115eb906001600160a01b031682612fb2565b7f654f4a61849f1b3ad10abb283d27f02d5fece7b820acc5a3b874713b58748b5a8360405161161a919061376d565b60405180910390a17f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c8483604051611651919061376d565b60405180910390a161166283612b96565b925050506116706001606555565b919050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361169e57505f919050565b6001600160a01b0382165f81815261019f602052604090205460a0906116c99060019060ff16613adc565b60ff1660ff81106116dc576116dc613a0d565b01546001600160a01b031614801561170a57506001600160a01b0382165f9081526101a16020526040902054155b92915050565b6001600160a01b0381165f90815261019f602052604081205460ff16810361173957505f919050565b6001600160a01b0382165f81815261019f602052604090205460a0906117649060019060ff16613adc565b60ff1660ff811061177757611777613a0d565b01546001600160a01b03161492915050565b611791612a4a565b6113275f613062565b6101a081815481106117aa575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f54610100900460ff16158080156117e157505f54600160ff909116105b806117fa5750303b1580156117fa57505f5460ff166001145b61186c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016109c3565b5f805460ff1916600117905580156118aa575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0388166119005760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420726f6c6c757020636f6e747261637400000000000000000060448201526064016109c3565b5f871161194f5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109c3565b5f861161199e5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c75650060448201526064016109c3565b5f85116119ed5760405162461bcd60e51b815260206004820152601e60248201527f696e76616c6964207769746864726177616c206c6f636b20626c6f636b73000060448201526064016109c3565b5f8311611a3c5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420676173206c696d697420616464207374616b65720000000060448201526064016109c3565b5f8211611a8b5760405162461bcd60e51b815260206004820181905260248201527f696e76616c696420676173206c696d69742072656d6f7665207374616b65727360448201526064016109c3565b5f84118015611a9b575060648411155b611b0c5760405162461bcd60e51b8152602060048201526024808201527f696e76616c6964206368616c6c656e676572207265776172642070657263656e60448201527f746167650000000000000000000000000000000000000000000000000000000060648201526084016109c3565b611b146130cb565b611b1c61314f565b609780547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038a16179055609a84905560988790556101a68690556099859055609b839055609c829055604080515f8152602081018590527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910160405180910390a1604080515f8152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910160405180910390a1604080515f8152602081018690527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910160405180910390a18015611c7b575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b611c8d612a4a565b5f81118015611c9e5750609c548114155b611cea5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d6974000000000000000000000060448201526064016109c3565b609c80549082905560408051828152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910161113f565b6101a26020525f90815260409020805460018201546002830180546001600160a01b03909316939192611d5a9061387a565b80601f0160208091040260200160405190810160405280929190818152602001828054611d869061387a565b8015611dd15780601f10611da857610100808354040283529160200191611dd1565b820191905f5260205f20905b815481529060010190602001808311611db457829003601f168201915b5050505050905083565b6060600182901c5f5b8115611e0b57611df5816001613a67565b9050611e02600183613ac9565b82169150611de4565b8067ffffffffffffffff811115611e2457611e2461333d565b604051908082528060200260200182016040528015611e4d578160200160208202803683370190505b5092505f60015b60ff8160ff1611611eef57600160ff82161b861615611edd5760a0611e7a600183613adc565b60ff1660ff8110611e8d57611e8d613a0d565b015485516001600160a01b0390911690869084908110611eaf57611eaf613a0d565b6001600160a01b0390921660209283029190910190910152611ed2826001613a67565b915082821015611eef575b80611ee781613af5565b915050611e54565b50505050919050565b6040805160ff80825261200082019092526060915f91829160208201611fe0803683370190505090505f5b60ff811015611fc7575f60a08260ff8110611f4057611f40613a0d565b01546001600160a01b031614801590611f8857506101a15f60a08360ff8110611f6b57611f6b613a0d565b01546001600160a01b0316815260208101919091526040015f2054155b15611fbf5782611f9781613b13565b9350506001828281518110611fae57611fae613a0d565b911515602092830291909101909101525b600101611f23565b505f8267ffffffffffffffff811115611fe257611fe261333d565b60405190808252806020026020018201604052801561200b578160200160208202803683370190505b5090505f805b60ff81101561209c5783818151811061202c5761202c613a0d565b6020026020010151156120945760a08160ff811061204c5761204c613a0d565b015483516001600160a01b039091169084908490811061206e5761206e613a0d565b6001600160a01b03909216602092830291909101909101528161209081613b13565b9250505b600101612011565b5090949350505050565b6120ae612f59565b335f9081526101a5602052604090205461210a5760405162461bcd60e51b815260206004820152601460248201527f7769746864726177616c206e6f7420657869737400000000000000000000000060448201526064016109c3565b335f9081526101a560205260409020544310156121695760405162461bcd60e51b815260206004820152601160248201527f7769746864726177616c206c6f636b656400000000000000000000000000000060448201526064016109c3565b335f9081526101a56020526040812055612181612c8e565b604080516001600160a01b0383168152905133917f89309c9b2aeaffbdce717113df9427298b20448c05919bf889e05f8c3094254b919081900360200190a26121cc81609854612fb2565b61109b6001606555565b6121de612a4a565b5f811180156121ee575060648111155b80156121fc5750609a548114155b6122485760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642070657263656e746167650000000000000060448201526064016109c3565b609a80549082905560408051828152602081018490527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910161113f565b61228e612a4a565b5f8111801561229f5750609b548114155b6122eb5760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206e657720676173206c696d6974000000000000000000000060448201526064016109c3565b609b80549082905560408051828152602081018490527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910161113f565b612331612a4a565b5f5b8381101561242957609f5f86868481811061235057612350613a0d565b90506020020160208101906123659190613461565b6001600160a01b0316815260208101919091526040015f205460ff16156123ce5760405162461bcd60e51b815260206004820152600f60248201527f696e2072656d6f766564206c697374000000000000000000000000000000000060448201526064016109c3565b6001609e5f8787858181106123e5576123e5613a0d565b90506020020160208101906123fa9190613461565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101612333565b505f5b8181101561248657609e5f84848481811061244957612449613a0d565b905060200201602081019061245e9190613461565b6001600160a01b0316815260208101919091526040015f20805460ff1916905560010161242c565b507fe375867e538b40218c1b3db2ccceaf875eb073e38b510449e6088c1539ac8622848484846040516124bc9493929190613b8f565b60405180910390a150505050565b6124d2612a4a565b6124da612f59565b609d546124e78282612fb2565b5f609d55604080516001600160a01b0384168152602081018390527fa1fefb6c5328a92a416e321ed50997303fe7135fd88c28b0592b21ce42b5cdd9910160405180910390a15061109b6001606555565b5f61254282611710565b61258e5760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b657200000000000000000000000000000000000060448201526064016109c3565b506001600160a01b03165f90815261019f6020526040902054600160ff9091161b90565b5f60ff8211156126045760405162461bcd60e51b815260206004820152601c60248201527f7374616b657273206c656e677468206f7574206f6620626f756e64730000000060448201526064016109c3565b5f5b828110156126dd5761263884848381811061262357612623613a0d565b905060200201602081019061056f9190613461565b6126845760405162461bcd60e51b815260206004820152600e60248201527f696e76616c6964207374616b657200000000000000000000000000000000000060448201526064016109c3565b61019f5f85858481811061269a5761269a613a0d565b90506020020160208101906126af9190613461565b6001600160a01b0316815260208101919091526040015f2054600160ff90911681901b929092179101612606565b5092915050565b6126ec612a4a565b6001600160a01b0381166127685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016109c3565b61109b81613062565b612779612a4a565b5f8111801561278a57506098548114155b6127d65760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109c3565b609880549082905560408051828152602081018490527f91e3ed304d49776a78bbe0df6bf7156f5433763621e5e728a3c2adfe7de74368910161113f565b5f5b60ff8160ff1610156128d9575f60a060ff80841690811061283957612839613a0d565b01546001600160a01b0316036128d1578160a08260ff1660ff811061286057612860613a0d565b0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556128a2816001613bc0565b6001600160a01b03929092165f90815261019f60205260409020805460ff191660ff9093169290921790915550565b600101612816565b5060405162461bcd60e51b815260206004820152600960248201527f736c6f742066756c6c000000000000000000000000000000000000000000000060448201526064016109c3565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f846040516024016129849190613bd9565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f6d454d5100000000000000000000000000000000000000000000000000000000179052609b5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b168152612a1a9493929190600401613c10565b5f604051808303815f87803b158015612a31575f80fd5b505af1158015612a43573d5f803e3d5ffd5b5050505050565b6033546001600160a01b031633146113275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109c3565b6001600160a01b0381165f9081526101a1602052604090205415612b0a5760405162461bcd60e51b815260206004820152601560248201527f616c726561647920696e2064656c6574654c697374000000000000000000000060448201526064016109c3565b6101a080546001810182555f919091527f7980fe0f714a613298681d64b7b8ffa7b148338dd52429f307d72798d5c317c40180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316179055609954612b7a9043613a67565b6001600160a01b039091165f9081526101a16020526040902055565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f84604051602401612bf8919061376d565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0be67fcc00000000000000000000000000000000000000000000000000000000179052609c5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b168152612a1a9493929190600401613c10565b5f5b6101a05481101561109b57436101a15f6101a08481548110612cb457612cb4613a0d565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205411612f475760a0600161019f5f6101a08581548110612cf957612cf9613a0d565b5f9182526020808320909101546001600160a01b03168352820192909252604001902054612d2a919060ff16613adc565b60ff1660ff8110612d3d57612d3d613a0d565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556101a0805461019f915f9184908110612d7f57612d7f613a0d565b5f9182526020808320909101546001600160a01b031683528201929092526040018120805460ff191690556101a080546101a292919084908110612dc557612dc5613a0d565b5f9182526020808320909101546001600160a01b03168352820192909252604001812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590612e2360028301826132f3565b50506101a15f6101a08381548110612e3d57612e3d613a0d565b5f9182526020808320909101546001600160a01b031683528201929092526040018120556101a08054612e7290600190613ac9565b81548110612e8257612e82613a0d565b5f918252602090912001546101a080546001600160a01b039092169183908110612eae57612eae613a0d565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506101a0805480612eeb57612eeb613c48565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055019055612c90565b80612f5181613b13565b915050612c90565b600260655403612fab5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016109c3565b6002606555565b8015613057575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613001576040519150601f19603f3d011682016040523d82523d5f602084013e613006565b606091505b5050905080610d5f5760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c6564000000000060448201526064016109c3565b5050565b6001606555565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166131475760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b6113276131d3565b5f54610100900460ff166131cb5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b611327613258565b5f54610100900460ff1661324f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b61132733613062565b5f54610100900460ff1661305b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109c3565b60405180611fe0016040528060ff906020820280368337509192915050565b5080546132ff9061387a565b5f825580601f1061330e575050565b601f0160209004905f5260205f209081019061109b91905b80821115613339575f8155600101613326565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156133935761339361333d565b604052919050565b5f82601f8301126133aa575f80fd5b813567ffffffffffffffff8111156133c4576133c461333d565b6133d76020601f19601f8401160161336a565b8181528460208386010111156133eb575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215613418575f80fd5b82359150602083013567ffffffffffffffff811115613435575f80fd5b6134418582860161339b565b9150509250929050565b80356001600160a01b0381168114611670575f80fd5b5f60208284031215613471575f80fd5b61347a8261344b565b9392505050565b5f60208284031215613491575f80fd5b5035919050565b5f60208083850312156134a9575f80fd5b823567ffffffffffffffff808211156134c0575f80fd5b818501915085601f8301126134d3575f80fd5b8135818111156134e5576134e561333d565b8060051b91506134f684830161336a565b818152918301840191848101908884111561350f575f80fd5b938501935b83851015613534576135258561344b565b82529385019390850190613514565b98975050505050505050565b611fe0810181835f5b60ff8110156135715781516001600160a01b0316835260209283019290910190600101613549565b50505092915050565b5f8083601f84011261358a575f80fd5b50813567ffffffffffffffff8111156135a1575f80fd5b6020830191508360208260051b85010111156135bb575f80fd5b9250929050565b5f805f805f80608087890312156135d7575f80fd5b86359550602087013567ffffffffffffffff808211156135f5575f80fd5b6136018a838b0161357a565b9097509550604089013594506060890135915080821115613620575f80fd5b818901915089601f830112613633575f80fd5b813581811115613641575f80fd5b8a6020828501011115613652575f80fd5b6020830194508093505050509295509295509295565b5f60208284031215613678575f80fd5b813567ffffffffffffffff81111561368e575f80fd5b61369a8482850161339b565b949350505050565b5f805f805f805f60e0888a0312156136b8575f80fd5b6136c18861344b565b9960208901359950604089013598606081013598506080810135975060a0810135965060c00135945092505050565b5f5b8381101561370a5781810151838201526020016136f2565b50505f910152565b5f81518084526137298160208601602086016136f0565b601f01601f19169290920160200192915050565b6001600160a01b0384168152826020820152606060408201525f6137646060830184613712565b95945050505050565b602080825282518282018190525f9190848201906040850190845b818110156137ad5783516001600160a01b031683529284019291840191600101613788565b50909695505050505050565b5f805f80604085870312156137cc575f80fd5b843567ffffffffffffffff808211156137e3575f80fd5b6137ef8883890161357a565b90965094506020870135915080821115613807575f80fd5b506138148782880161357a565b95989497509550505050565b5f8060208385031215613831575f80fd5b823567ffffffffffffffff811115613847575f80fd5b6138538582860161357a565b90969095509350505050565b5f82516138708184602087016136f0565b9190910192915050565b600181811c9082168061388e57607f821691505b6020821081036138c5577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b601f821115610d5f57805f5260205f20601f840160051c810160208510156138f05750805b601f840160051c820191505b81811015612a43575f81556001016138fc565b815167ffffffffffffffff8111156139295761392961333d565b61393d81613937845461387a565b846138cb565b602080601f83116001811461398f575f84156139595750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555613a05565b5f85815260208120601f198616915b828110156139bd5788860151825594840194600190910190840161399e565b50858210156139f957878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561170a5761170a613a3a565b808202811582820484141761170a5761170a613a3a565b5f82613ac4577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b8181038181111561170a5761170a613a3a565b60ff828116828216039081111561170a5761170a613a3a565b5f60ff821660ff8103613b0a57613b0a613a3a565b60010192915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613b4357613b43613a3a565b5060010190565b8183525f60208085019450825f5b85811015613b84576001600160a01b03613b718361344b565b1687529582019590820190600101613b58565b509495945050505050565b604081525f613ba2604083018688613b4a565b8281036020840152613bb5818587613b4a565b979650505050505050565b60ff818116838216019081111561170a5761170a613a3a565b602081526001600160a01b038251166020820152602082015160408201525f604083015160608084015261369a6080840182613712565b6001600160a01b0385168152836020820152608060408201525f613c376080830185613712565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a", } // L1StakingABI is the input ABI used to generate the binding from. @@ -1455,6 +1455,27 @@ func (_L1Staking *L1StakingTransactorSession) UpdateRewardPercentage(_rewardPerc return _L1Staking.Contract.UpdateRewardPercentage(&_L1Staking.TransactOpts, _rewardPercentage) } +// UpdateStakingValue is a paid mutator transaction binding the contract method 0xf4fe7fef. +// +// Solidity: function updateStakingValue(uint256 _stakingValue) returns() +func (_L1Staking *L1StakingTransactor) UpdateStakingValue(opts *bind.TransactOpts, _stakingValue *big.Int) (*types.Transaction, error) { + return _L1Staking.contract.Transact(opts, "updateStakingValue", _stakingValue) +} + +// UpdateStakingValue is a paid mutator transaction binding the contract method 0xf4fe7fef. +// +// Solidity: function updateStakingValue(uint256 _stakingValue) returns() +func (_L1Staking *L1StakingSession) UpdateStakingValue(_stakingValue *big.Int) (*types.Transaction, error) { + return _L1Staking.Contract.UpdateStakingValue(&_L1Staking.TransactOpts, _stakingValue) +} + +// UpdateStakingValue is a paid mutator transaction binding the contract method 0xf4fe7fef. +// +// Solidity: function updateStakingValue(uint256 _stakingValue) returns() +func (_L1Staking *L1StakingTransactorSession) UpdateStakingValue(_stakingValue *big.Int) (*types.Transaction, error) { + return _L1Staking.Contract.UpdateStakingValue(&_L1Staking.TransactOpts, _stakingValue) +} + // UpdateWhitelist is a paid mutator transaction binding the contract method 0xc7cd469a. // // Solidity: function updateWhitelist(address[] add, address[] remove) returns() @@ -3008,6 +3029,141 @@ func (_L1Staking *L1StakingFilterer) ParseStakersRemoved(log types.Log) (*L1Stak return event, nil } +// L1StakingStakingValueUpdatedIterator is returned from FilterStakingValueUpdated and is used to iterate over the raw logs and unpacked data for StakingValueUpdated events raised by the L1Staking contract. +type L1StakingStakingValueUpdatedIterator struct { + Event *L1StakingStakingValueUpdated // Event containing the contract specifics and raw log + + contract *bind.BoundContract // Generic contract to use for unpacking event data + event string // Event name to use for unpacking event data + + logs chan types.Log // Log channel receiving the found contract events + sub ethereum.Subscription // Subscription for errors, completion and termination + done bool // Whether the subscription completed delivering logs + fail error // Occurred error to stop iteration +} + +// Next advances the iterator to the subsequent event, returning whether there +// are any more events found. In case of a retrieval or parsing error, false is +// returned and Error() can be queried for the exact failure. +func (it *L1StakingStakingValueUpdatedIterator) Next() bool { + // If the iterator failed, stop iterating + if it.fail != nil { + return false + } + // If the iterator completed, deliver directly whatever's available + if it.done { + select { + case log := <-it.logs: + it.Event = new(L1StakingStakingValueUpdated) + if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { + it.fail = err + return false + } + it.Event.Raw = log + return true + + default: + return false + } + } + // Iterator still in progress, wait for either a data or an error event + select { + case log := <-it.logs: + it.Event = new(L1StakingStakingValueUpdated) + if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { + it.fail = err + return false + } + it.Event.Raw = log + return true + + case err := <-it.sub.Err(): + it.done = true + it.fail = err + return it.Next() + } +} + +// Error returns any retrieval or parsing error occurred during filtering. +func (it *L1StakingStakingValueUpdatedIterator) Error() error { + return it.fail +} + +// Close terminates the iteration process, releasing any pending underlying +// resources. +func (it *L1StakingStakingValueUpdatedIterator) Close() error { + it.sub.Unsubscribe() + return nil +} + +// L1StakingStakingValueUpdated represents a StakingValueUpdated event raised by the L1Staking contract. +type L1StakingStakingValueUpdated struct { + OldStakingValue *big.Int + NewStakingValue *big.Int + Raw types.Log // Blockchain specific contextual infos +} + +// FilterStakingValueUpdated is a free log retrieval operation binding the contract event 0x91e3ed304d49776a78bbe0df6bf7156f5433763621e5e728a3c2adfe7de74368. +// +// Solidity: event StakingValueUpdated(uint256 oldStakingValue, uint256 newStakingValue) +func (_L1Staking *L1StakingFilterer) FilterStakingValueUpdated(opts *bind.FilterOpts) (*L1StakingStakingValueUpdatedIterator, error) { + + logs, sub, err := _L1Staking.contract.FilterLogs(opts, "StakingValueUpdated") + if err != nil { + return nil, err + } + return &L1StakingStakingValueUpdatedIterator{contract: _L1Staking.contract, event: "StakingValueUpdated", logs: logs, sub: sub}, nil +} + +// WatchStakingValueUpdated is a free log subscription operation binding the contract event 0x91e3ed304d49776a78bbe0df6bf7156f5433763621e5e728a3c2adfe7de74368. +// +// Solidity: event StakingValueUpdated(uint256 oldStakingValue, uint256 newStakingValue) +func (_L1Staking *L1StakingFilterer) WatchStakingValueUpdated(opts *bind.WatchOpts, sink chan<- *L1StakingStakingValueUpdated) (event.Subscription, error) { + + logs, sub, err := _L1Staking.contract.WatchLogs(opts, "StakingValueUpdated") + if err != nil { + return nil, err + } + return event.NewSubscription(func(quit <-chan struct{}) error { + defer sub.Unsubscribe() + for { + select { + case log := <-logs: + // New log arrived, parse the event and forward to the user + event := new(L1StakingStakingValueUpdated) + if err := _L1Staking.contract.UnpackLog(event, "StakingValueUpdated", log); err != nil { + return err + } + event.Raw = log + + select { + case sink <- event: + case err := <-sub.Err(): + return err + case <-quit: + return nil + } + case err := <-sub.Err(): + return err + case <-quit: + return nil + } + } + }), nil +} + +// ParseStakingValueUpdated is a log parse operation binding the contract event 0x91e3ed304d49776a78bbe0df6bf7156f5433763621e5e728a3c2adfe7de74368. +// +// Solidity: event StakingValueUpdated(uint256 oldStakingValue, uint256 newStakingValue) +func (_L1Staking *L1StakingFilterer) ParseStakingValueUpdated(log types.Log) (*L1StakingStakingValueUpdated, error) { + event := new(L1StakingStakingValueUpdated) + if err := _L1Staking.contract.UnpackLog(event, "StakingValueUpdated", log); err != nil { + return nil, err + } + event.Raw = log + return event, nil +} + // L1StakingWhitelistUpdatedIterator is returned from FilterWhitelistUpdated and is used to iterate over the raw logs and unpacked data for WhitelistUpdated events raised by the L1Staking contract. type L1StakingWhitelistUpdatedIterator struct { Event *L1StakingWhitelistUpdated // Event containing the contract specifics and raw log diff --git a/bindings/bindings/l1staking_more.go b/bindings/bindings/l1staking_more.go index 4a093811e..c3a973380 100644 --- a/bindings/bindings/l1staking_more.go +++ b/bindings/bindings/l1staking_more.go @@ -13,7 +13,7 @@ const L1StakingStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\ var L1StakingStorageLayout = new(solc.StorageLayout) -var L1StakingDeployedBin = "0x6080604052600436106102ed575f3560e01c80637a9262a211610186578063a4f209b0116100dc578063d096c3c611610087578063df15503311610062578063df155033146108f1578063e2a6ad5f14610935578063f2fde38b14610954575f80fd5b8063d096c3c61461087c578063d51c90a91461089b578063dd4785f5146108b0575f80fd5b8063bfa02ba9116100b7578063bfa02ba914610812578063c7cd469a1461083e578063cde4cd111461085d575f80fd5b8063a4f209b0146107bf578063ab8c53dc146107de578063ae81de53146107f3575f80fd5b80639168ae721161013c5780639d48f417116101175780639d48f417146107605780639fb82db91461078c578063a3066aab146107a0575f80fd5b80639168ae72146106d1578063927ede2d146106ff5780639b19251a14610732575f80fd5b8063831cfb581161016c578063831cfb58146106555780638a565ac3146106885780638da5cb5b146106a7575f80fd5b80637a9262a21461060a5780638142951a14610636575f80fd5b806341de239b11610246578063692c565b116101f157806374fe27b7116101cc57806374fe27b71461058a578063797adbde146105b05780637a4e87c3146105cf575f80fd5b8063692c565b146105285780636f1e853314610557578063715018a614610576575f80fd5b80634d64903a116102215780634d64903a146104df57806352d472eb146104f45780636801579114610509575f80fd5b806341de239b1461048a57806343352d611461049f57806345bc4d10146104c0575f80fd5b8063320ff860116102a65780633cb747bf116102815780633cb747bf146104305780633ccfd60b146104625780633ee2a1f914610476575f80fd5b8063320ff860146103b457806335928991146103d35780633a9bbede146103f2575f80fd5b80632a28e5a3116102d65780632a28e5a31461032f5780632e407a6f14610344578063303afb9e14610370575f80fd5b80630d13fd7b146102f15780632108db351461031a575b5f80fd5b3480156102fc575f80fd5b506103076101a65481565b6040519081526020015b60405180910390f35b348015610325575f80fd5b50610307609c5481565b61034261033d366004613c67565b610973565b005b34801561034f575f80fd5b5061030761035e366004613cce565b6101a16020525f908152604090205481565b34801561037b575f80fd5b5061038f61038a366004613cee565b610e35565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610311565b3480156103bf575f80fd5b506103426103ce366004613d05565b610e61565b3480156103de575f80fd5b506103426103ed366004613cee565b611250565b3480156103fd575f80fd5b5061042061040c366004613cce565b609f6020525f908152604090205460ff1681565b6040519015158152602001610311565b34801561043b575f80fd5b507f000000000000000000000000000000000000000000000000000000000000000061038f565b34801561046d575f80fd5b50610342611317565b348015610481575f80fd5b5061034261154f565b348015610495575f80fd5b5061030760995481565b3480156104aa575f80fd5b506104b3611561565b6040516103119190613dad565b3480156104cb575f80fd5b506103076104da366004613cee565b6115b4565b3480156104ea575f80fd5b5061030760985481565b3480156104ff575f80fd5b50610307609a5481565b348015610514575f80fd5b50610420610523366004613cce565b611970565b348015610533575f80fd5b50610420610542366004613cee565b6101a46020525f908152604090205460ff1681565b348015610562575f80fd5b50610420610571366004613cce565b611a3f565b348015610581575f80fd5b50610342611adf565b348015610595575f80fd5b506104206105a4366004613e3c565b60019695505050505050565b3480156105bb575f80fd5b5061038f6105ca366004613cee565b611af0565b3480156105da575f80fd5b506104206105e9366004613ee2565b80516020818301810180516101a38252928201919093012091525460ff1681565b348015610615575f80fd5b50610307610624366004613cce565b6101a56020525f908152604090205481565b348015610641575f80fd5b50610342610650366004613f1c565b611b26565b348015610660575f80fd5b5061038f7f000000000000000000000000000000000000000000000000000000000000000081565b348015610693575f80fd5b506103426106a2366004613cee565b6120f0565b3480156106b2575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff1661038f565b3480156106dc575f80fd5b506106f06106eb366004613cce565b6121ad565b60405161031193929190613fd5565b34801561070a575f80fd5b5061038f7f000000000000000000000000000000000000000000000000000000000000000081565b34801561073d575f80fd5b5061042061074c366004613cce565b609e6020525f908152604090205460ff1681565b34801561076b575f80fd5b5061077f61077a366004613cee565b61226d565b6040516103119190614012565b348015610797575f80fd5b5061077f6123a4565b3480156107ab575f80fd5b506103426107ba366004613cce565b612586565b3480156107ca575f80fd5b506103426107d9366004613cee565b6126f7565b3480156107e9575f80fd5b50610307609d5481565b3480156107fe575f80fd5b5061034261080d366004613cee565b6127c1565b34801561081d575f80fd5b5060975461038f9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610849575f80fd5b5061034261085836600461406b565b61287e565b348015610868575f80fd5b50610342610877366004613cce565b612a9c565b348015610887575f80fd5b50610307610896366004613cce565b612b17565b3480156108a6575f80fd5b50610307609b5481565b3480156108bb575f80fd5b506108df6108ca366004613cce565b61019f6020525f908152604090205460ff1681565b60405160ff9091168152602001610311565b3480156108fc575f80fd5b5061042061090b366004613cce565b73ffffffffffffffffffffffffffffffffffffffff165f9081526101a16020526040902054151590565b348015610940575f80fd5b5061030761094f3660046140d2565b612bb8565b34801561095f575f80fd5b5061034261096e366004613cce565b612d2b565b335f818152609e602052604090205460ff166109f0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f6e6f7420696e2077686974656c6973740000000000000000000000000000000060448201526064015b60405180910390fd5b335f9081526101a2602052604090205473ffffffffffffffffffffffffffffffffffffffff1615610a7d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f616c72656164792072656769737465726564000000000000000000000000000060448201526064016109e7565b8215801590610a9b57505f8381526101a4602052604090205460ff16155b610b01576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c69642074656e6465726d696e74207075626b65790000000000000060448201526064016109e7565b8151610100148015610b3457506101a382604051610b1f9190614111565b9081526040519081900360200190205460ff16155b610b9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420626c73207075626b6579000000000000000000000000000060448201526064016109e7565b6098543414610c05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109e7565b6040518060600160405280610c173390565b73ffffffffffffffffffffffffffffffffffffffff908116825260208083018790526040928301869052335f9081526101a28252839020845181547fffffffffffffffffffffffff00000000000000000000000000000000000000001693169290921782558301516001820155908201516002820190610c9790826141c1565b50905050610caa610ca53390565b612ddf565b60016101a383604051610cbd9190614111565b9081526040805191829003602090810190922080549315157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff009485161790555f8681526101a49092529020805490911660011790557fb9c7babb56df9f2da4a30811a6c778e4e68af88b72712d56cf62c5516e20e199610d3a3390565b8484604051610d4b93929190613fd5565b60405180910390a1335f9081526101a260209081526040918290208251606081018452815473ffffffffffffffffffffffffffffffffffffffff168152600182015492810192909252600281018054610e309484019190610dab9061412c565b80601f0160208091040260200160405190810160405280929190818152602001828054610dd79061412c565b8015610e225780601f10610df957610100808354040283529160200191610e22565b820191905f5260205f20905b815481529060010190602001808311610e0557829003601f168201915b505050505081525050612f4c565b505050565b60a08160ff8110610e44575f80fd5b015473ffffffffffffffffffffffffffffffffffffffff16905081565b610e6961309f565b5f5b815181101561120c57610e96828281518110610e8957610e896142dd565b6020026020010151611970565b610f22576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f6f6e6c7920616374697665207374616b65722063616e2062652072656d6f766560448201527f640000000000000000000000000000000000000000000000000000000000000060648201526084016109e7565b6101a55f838381518110610f3857610f386142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20545f14610fe2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f7769746864726177696e6700000000000000000000000000000000000000000060448201526064016109e7565b609954610fef9043614337565b6101a55f848481518110611005576110056142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061106c82828151811061105f5761105f6142dd565b6020026020010151613120565b81818151811061107e5761107e6142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d56101a55f8585815181106110d3576110d36142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460405161112491815260200190565b60405180910390a2609e5f838381518110611141576111416142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81549060ff02191690556001609f5f8484815181106111a8576111a86142dd565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055600101610e6b565b507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161123c9190614012565b60405180910390a161124d81613253565b50565b61125861309f565b5f8111801561126a57506101a6548114155b6112d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c75650060448201526064016109e7565b6101a680549082905560408051828152602081018490527f36f971a40478225aeb80cfbf5e80306e8cb76d3bf7d56fdc5e490945cddb7d5591015b60405180910390a15050565b61132033611970565b611386576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f6f6e6c7920616374697665207374616b6572000000000000000000000000000060448201526064016109e7565b335f9081526101a56020526040902054156113fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f7769746864726177696e6700000000000000000000000000000000000000000060448201526064016109e7565b60995461140a9043614337565b335f8181526101a5602052604090209190915561142690613120565b335f8181526101a560209081526040918290205491519182527f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5910160405180910390a2335f908152609e6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00908116909155609f83528184208054909116600190811790915581518181528083019092529091828101908036833701905050905033815f815181106114e6576114e66142dd565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161123c9190614012565b61155761309f565b61155f613376565b565b611569613af8565b60408051611fe08101918290529060a09060ff9082845b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311611580575050505050905090565b6097545f9073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461164d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f6f6e6c7920726f6c6c757020636f6e747261637400000000000000000000000060448201526064016109e7565b6116556136c7565b5f61165f8361226d565b90505f805b8251811015611886575f6101a55f858481518110611684576116846142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054111561173b576101a55f8483815181106116e2576116e26142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9055609854826117349190614337565b915061187e565b611782838281518110611750576117506142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff165f9081526101a16020526040902054151590565b61187e576098546117939083614337565b91506117aa83828151811061105f5761105f6142dd565b609e5f8483815181106117bf576117bf6142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81549060ff02191690556001609f5f858481518110611826576118266142dd565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b600101611664565b505f6064609a5483611898919061434a565b6118a29190614361565b90506118ae8183614399565b609d5f8282546118be9190614337565b90915550506097546118e69073ffffffffffffffffffffffffffffffffffffffff168261373a565b7f654f4a61849f1b3ad10abb283d27f02d5fece7b820acc5a3b874713b58748b5a836040516119159190614012565b60405180910390a17f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848360405161194c9190614012565b60405180910390a161195d83613253565b9250505061196b6001606555565b919050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815261019f602052604081205460ff1681036119a657505f919050565b73ffffffffffffffffffffffffffffffffffffffff82165f81815261019f602052604090205460a0906119de9060019060ff166143ac565b60ff1660ff81106119f1576119f16142dd565b015473ffffffffffffffffffffffffffffffffffffffff16148015611a39575073ffffffffffffffffffffffffffffffffffffffff82165f9081526101a16020526040902054155b92915050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815261019f602052604081205460ff168103611a7557505f919050565b73ffffffffffffffffffffffffffffffffffffffff82165f81815261019f602052604090205460a090611aad9060019060ff166143ac565b60ff1660ff8110611ac057611ac06142dd565b015473ffffffffffffffffffffffffffffffffffffffff161492915050565b611ae761309f565b61155f5f613811565b6101a08181548110611b00575f80fd5b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b5f54610100900460ff1615808015611b4457505f54600160ff909116105b80611b5d5750303b158015611b5d57505f5460ff166001145b611be9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016109e7565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611c45575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8816611cc2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f696e76616c696420726f6c6c757020636f6e747261637400000000000000000060448201526064016109e7565b5f8711611d2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964207374616b696e672076616c7565000000000000000000000060448201526064016109e7565b5f8611611d94576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c75650060448201526064016109e7565b5f8511611dfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f696e76616c6964207769746864726177616c206c6f636b20626c6f636b73000060448201526064016109e7565b5f8311611e66576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c696420676173206c696d697420616464207374616b65720000000060448201526064016109e7565b5f8211611ecf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f696e76616c696420676173206c696d69742072656d6f7665207374616b65727360448201526064016109e7565b5f84118015611edf575060648411155b611f6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f696e76616c6964206368616c6c656e676572207265776172642070657263656e60448201527f746167650000000000000000000000000000000000000000000000000000000060648201526084016109e7565b611f72613887565b611f7a613925565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8a16179055609a84905560988790556101a68690556099859055609b839055609c829055604080515f8152602081018590527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910160405180910390a1604080515f8152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910160405180910390a1604080515f8152602081018690527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910160405180910390a180156120e6575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b6120f861309f565b5f811180156121095750609c548114155b61216f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206e657720676173206c696d6974000000000000000000000060448201526064016109e7565b609c80549082905560408051828152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910161130b565b6101a26020525f908152604090208054600182015460028301805473ffffffffffffffffffffffffffffffffffffffff9093169391926121ec9061412c565b80601f01602080910402602001604051908101604052809291908181526020018280546122189061412c565b80156122635780601f1061223a57610100808354040283529160200191612263565b820191905f5260205f20905b81548152906001019060200180831161224657829003601f168201915b5050505050905083565b6060600182901c5f5b811561229d57612287816001614337565b9050612294600183614399565b82169150612276565b8067ffffffffffffffff8111156122b6576122b6613b61565b6040519080825280602002602001820160405280156122df578160200160208202803683370190505b5092505f60015b60ff8160ff161161239b57600160ff82161b8616156123895760a061230c6001836143ac565b60ff1660ff811061231f5761231f6142dd565b0154855173ffffffffffffffffffffffffffffffffffffffff9091169086908490811061234e5761234e6142dd565b73ffffffffffffffffffffffffffffffffffffffff9092166020928302919091019091015261237e826001614337565b91508282101561239b575b80612393816143c5565b9150506122e6565b50505050919050565b6040805160ff80825261200082019092526060915f91829160208201611fe0803683370190505090505f5b60ff81101561248d575f60a08260ff81106123ec576123ec6142dd565b015473ffffffffffffffffffffffffffffffffffffffff161480159061244e57506101a15f60a08360ff8110612424576124246142dd565b015473ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2054155b15612485578261245d816143e3565b9350506001828281518110612474576124746142dd565b911515602092830291909101909101525b6001016123cf565b505f8267ffffffffffffffff8111156124a8576124a8613b61565b6040519080825280602002602001820160405280156124d1578160200160208202803683370190505b5090505f805b60ff81101561257c578381815181106124f2576124f26142dd565b6020026020010151156125745760a08160ff8110612512576125126142dd565b0154835173ffffffffffffffffffffffffffffffffffffffff90911690849084908110612541576125416142dd565b73ffffffffffffffffffffffffffffffffffffffff9092166020928302919091019091015281612570816143e3565b9250505b6001016124d7565b5090949350505050565b61258e6136c7565b335f9081526101a56020526040902054612604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f7769746864726177616c206e6f7420657869737400000000000000000000000060448201526064016109e7565b335f9081526101a5602052604090205443101561267d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f7769746864726177616c206c6f636b656400000000000000000000000000000060448201526064016109e7565b335f9081526101a56020526040812055612695613376565b6040805173ffffffffffffffffffffffffffffffffffffffff83168152905133917f89309c9b2aeaffbdce717113df9427298b20448c05919bf889e05f8c3094254b919081900360200190a26126ed8160985461373a565b61124d6001606555565b6126ff61309f565b5f8111801561270f575060648111155b801561271d5750609a548114155b612783576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c6964207265776172642070657263656e746167650000000000000060448201526064016109e7565b609a80549082905560408051828152602081018490527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910161130b565b6127c961309f565b5f811180156127da5750609b548114155b612840576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206e657720676173206c696d6974000000000000000000000060448201526064016109e7565b609b80549082905560408051828152602081018490527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910161130b565b61288661309f565b5f5b838110156129d057609f5f8686848181106128a5576128a56142dd565b90506020020160208101906128ba9190613cce565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f205460ff161561294a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e2072656d6f766564206c697374000000000000000000000000000000000060448201526064016109e7565b6001609e5f878785818110612961576129616142dd565b90506020020160208101906129769190613cce565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055600101612888565b505f5b81811015612a5857609e5f8484848181106129f0576129f06142dd565b9050602002016020810190612a059190613cce565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556001016129d3565b507fe375867e538b40218c1b3db2ccceaf875eb073e38b510449e6088c1539ac862284848484604051612a8e949392919061446c565b60405180910390a150505050565b612aa461309f565b612aac6136c7565b609d54612ab9828261373a565b5f609d556040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fa1fefb6c5328a92a416e321ed50997303fe7135fd88c28b0592b21ce42b5cdd9910160405180910390a15061124d6001606555565b5f612b2182611a3f565b612b87576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f696e76616c6964207374616b657200000000000000000000000000000000000060448201526064016109e7565b5073ffffffffffffffffffffffffffffffffffffffff165f90815261019f6020526040902054600160ff9091161b90565b5f60ff821115612c24576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f7374616b657273206c656e677468206f7574206f6620626f756e64730000000060448201526064016109e7565b5f5b82811015612d2457612c58848483818110612c4357612c436142dd565b90506020020160208101906105719190613cce565b612cbe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f696e76616c6964207374616b657200000000000000000000000000000000000060448201526064016109e7565b61019f5f858584818110612cd457612cd46142dd565b9050602002016020810190612ce99190613cce565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2054600160ff90911681901b929092179101612c26565b5092915050565b612d3361309f565b73ffffffffffffffffffffffffffffffffffffffff8116612dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016109e7565b61124d81613811565b5f5b60ff8160ff161015612ee9575f60a060ff808416908110612e0457612e046142dd565b015473ffffffffffffffffffffffffffffffffffffffff1603612ee1578160a08260ff1660ff8110612e3857612e386142dd565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055612e8781600161449d565b73ffffffffffffffffffffffffffffffffffffffff929092165f90815261019f6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660ff9093169290921790915550565b600101612de1565b506040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f736c6f742066756c6c000000000000000000000000000000000000000000000060448201526064016109e7565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f84604051602401612fbb91906144b6565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f6d454d5100000000000000000000000000000000000000000000000000000000179052609b5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261306f94939291906004016144fa565b5f604051808303815f87803b158015613086575f80fd5b505af1158015613098573d5f803e3d5ffd5b5050505050565b60335473ffffffffffffffffffffffffffffffffffffffff16331461155f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109e7565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526101a16020526040902054156131ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f616c726561647920696e2064656c6574654c697374000000000000000000000060448201526064016109e7565b6101a080546001810182555f919091527f7980fe0f714a613298681d64b7b8ffa7b148338dd52429f307d72798d5c317c40180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831617905560995461322a9043614337565b73ffffffffffffffffffffffffffffffffffffffff9091165f9081526101a16020526040902055565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f846040516024016132c29190614012565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0be67fcc00000000000000000000000000000000000000000000000000000000179052609c5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261306f94939291906004016144fa565b5f5b6101a05481101561124d57436101a15f6101a0848154811061339c5761339c6142dd565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902054116136b55760a0600161019f5f6101a085815481106133ee576133ee6142dd565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205461342c919060ff166143ac565b60ff1660ff811061343f5761343f6142dd565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556101a0805461019f915f9184908110613481576134816142dd565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001812080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556101a080546101a2929190849081106134f2576134f26142dd565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001812080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155600181018290559061355d6002830182613b17565b50506101a15f6101a08381548110613577576135776142dd565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040018120556101a080546135b990600190614399565b815481106135c9576135c96142dd565b5f918252602090912001546101a0805473ffffffffffffffffffffffffffffffffffffffff9092169183908110613602576136026142dd565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101a08054806136595761365961453f565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055019055613378565b806136bf816143e3565b915050613378565b600260655403613733576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016109e7565b6002606555565b8015613806575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f8114613796576040519150601f19603f3d011682016040523d82523d5f602084013e61379b565b606091505b5050905080610e30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c6564000000000060448201526064016109e7565b5050565b6001606555565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff1661391d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109e7565b61155f6139c3565b5f54610100900460ff166139bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109e7565b61155f613a62565b5f54610100900460ff16613a59576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109e7565b61155f33613811565b5f54610100900460ff1661380a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016109e7565b60405180611fe0016040528060ff906020820280368337509192915050565b508054613b239061412c565b5f825580601f10613b32575050565b601f0160209004905f5260205f209081019061124d91905b80821115613b5d575f8155600101613b4a565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715613bd557613bd5613b61565b604052919050565b5f82601f830112613bec575f80fd5b813567ffffffffffffffff811115613c0657613c06613b61565b613c3760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601613b8e565b818152846020838601011115613c4b575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215613c78575f80fd5b82359150602083013567ffffffffffffffff811115613c95575f80fd5b613ca185828601613bdd565b9150509250929050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461196b575f80fd5b5f60208284031215613cde575f80fd5b613ce782613cab565b9392505050565b5f60208284031215613cfe575f80fd5b5035919050565b5f6020808385031215613d16575f80fd5b823567ffffffffffffffff80821115613d2d575f80fd5b818501915085601f830112613d40575f80fd5b813581811115613d5257613d52613b61565b8060051b9150613d63848301613b8e565b8181529183018401918481019088841115613d7c575f80fd5b938501935b83851015613da157613d9285613cab565b82529385019390850190613d81565b98975050505050505050565b611fe0810181835f5b60ff811015613deb57815173ffffffffffffffffffffffffffffffffffffffff16835260209283019290910190600101613db6565b50505092915050565b5f8083601f840112613e04575f80fd5b50813567ffffffffffffffff811115613e1b575f80fd5b6020830191508360208260051b8501011115613e35575f80fd5b9250929050565b5f805f805f8060808789031215613e51575f80fd5b86359550602087013567ffffffffffffffff80821115613e6f575f80fd5b613e7b8a838b01613df4565b9097509550604089013594506060890135915080821115613e9a575f80fd5b818901915089601f830112613ead575f80fd5b813581811115613ebb575f80fd5b8a6020828501011115613ecc575f80fd5b6020830194508093505050509295509295509295565b5f60208284031215613ef2575f80fd5b813567ffffffffffffffff811115613f08575f80fd5b613f1484828501613bdd565b949350505050565b5f805f805f805f60e0888a031215613f32575f80fd5b613f3b88613cab565b9960208901359950604089013598606081013598506080810135975060a0810135965060c00135945092505050565b5f5b83811015613f84578181015183820152602001613f6c565b50505f910152565b5f8151808452613fa3816020860160208601613f6a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f6140096060830184613f8c565b95945050505050565b602080825282518282018190525f9190848201906040850190845b8181101561405f57835173ffffffffffffffffffffffffffffffffffffffff168352928401929184019160010161402d565b50909695505050505050565b5f805f806040858703121561407e575f80fd5b843567ffffffffffffffff80821115614095575f80fd5b6140a188838901613df4565b909650945060208701359150808211156140b9575f80fd5b506140c687828801613df4565b95989497509550505050565b5f80602083850312156140e3575f80fd5b823567ffffffffffffffff8111156140f9575f80fd5b61410585828601613df4565b90969095509350505050565b5f8251614122818460208701613f6a565b9190910192915050565b600181811c9082168061414057607f821691505b602082108103614177577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b601f821115610e3057805f5260205f20601f840160051c810160208510156141a25750805b601f840160051c820191505b81811015613098575f81556001016141ae565b815167ffffffffffffffff8111156141db576141db613b61565b6141ef816141e9845461412c565b8461417d565b602080601f831160018114614241575f841561420b5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556142d5565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561428d5788860151825594840194600190910190840161426e565b50858210156142c957878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611a3957611a3961430a565b8082028115828204841417611a3957611a3961430a565b5f82614394577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b81810381811115611a3957611a3961430a565b60ff8281168282160390811115611a3957611a3961430a565b5f60ff821660ff81036143da576143da61430a565b60010192915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036144135761441361430a565b5060010190565b8183525f60208085019450825f5b858110156144615773ffffffffffffffffffffffffffffffffffffffff61444e83613cab565b1687529582019590820190600101614428565b509495945050505050565b604081525f61447f60408301868861441a565b828103602084015261449281858761441a565b979650505050505050565b60ff8181168382160190811115611a3957611a3961430a565b6020815273ffffffffffffffffffffffffffffffffffffffff8251166020820152602082015160408201525f6040830151606080840152613f146080840182613f8c565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f61452e6080830185613f8c565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a" +var L1StakingDeployedBin = "0x6080604052600436106102f8575f3560e01c80637a9262a211610191578063ab8c53dc116100dc578063d51c90a911610087578063e2a6ad5f11610062578063e2a6ad5f14610940578063f2fde38b1461095f578063f4fe7fef1461097e575f80fd5b8063d51c90a9146108a6578063dd4785f5146108bb578063df155033146108fc575f80fd5b8063c7cd469a116100b7578063c7cd469a14610849578063cde4cd1114610868578063d096c3c614610887575f80fd5b8063ab8c53dc146107e9578063ae81de53146107fe578063bfa02ba91461081d575f80fd5b8063927ede2d1161013c5780639fb82db9116101175780639fb82db914610797578063a3066aab146107ab578063a4f209b0146107ca575f80fd5b8063927ede2d1461070a5780639b19251a1461073d5780639d48f4171461076b575f80fd5b80638a565ac31161016c5780638a565ac3146106935780638da5cb5b146106b25780639168ae72146106dc575f80fd5b80637a9262a2146106155780638142951a14610641578063831cfb5814610660575f80fd5b806341de239b11610251578063692c565b116101fc57806374fe27b7116101d757806374fe27b714610595578063797adbde146105bb5780637a4e87c3146105da575f80fd5b8063692c565b146105335780636f1e853314610562578063715018a614610581575f80fd5b80634d64903a1161022c5780634d64903a146104ea57806352d472eb146104ff5780636801579114610514575f80fd5b806341de239b1461049557806343352d61146104aa57806345bc4d10146104cb575f80fd5b8063320ff860116102b15780633cb747bf1161028c5780633cb747bf1461043b5780633ccfd60b1461046d5780633ee2a1f914610481575f80fd5b8063320ff860146103bf57806335928991146103de5780633a9bbede146103fd575f80fd5b80632a28e5a3116102e15780632a28e5a31461033a5780632e407a6f1461034f578063303afb9e1461037b575f80fd5b80630d13fd7b146102fc5780632108db3514610325575b5f80fd5b348015610307575f80fd5b506103126101a65481565b6040519081526020015b60405180910390f35b348015610330575f80fd5b50610312609c5481565b61034d610348366004613d4e565b61099d565b005b34801561035a575f80fd5b50610312610369366004613db5565b6101a16020525f908152604090205481565b348015610386575f80fd5b5061039a610395366004613dd5565b610e5f565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161031c565b3480156103ca575f80fd5b5061034d6103d9366004613dec565b610e8b565b3480156103e9575f80fd5b5061034d6103f8366004613dd5565b61127a565b348015610408575f80fd5b5061042b610417366004613db5565b609f6020525f908152604090205460ff1681565b604051901515815260200161031c565b348015610446575f80fd5b507f000000000000000000000000000000000000000000000000000000000000000061039a565b348015610478575f80fd5b5061034d611341565b34801561048c575f80fd5b5061034d611579565b3480156104a0575f80fd5b5061031260995481565b3480156104b5575f80fd5b506104be61158b565b60405161031c9190613e94565b3480156104d6575f80fd5b506103126104e5366004613dd5565b6115de565b3480156104f5575f80fd5b5061031260985481565b34801561050a575f80fd5b50610312609a5481565b34801561051f575f80fd5b5061042b61052e366004613db5565b61199a565b34801561053e575f80fd5b5061042b61054d366004613dd5565b6101a46020525f908152604090205460ff1681565b34801561056d575f80fd5b5061042b61057c366004613db5565b611a69565b34801561058c575f80fd5b5061034d611b09565b3480156105a0575f80fd5b5061042b6105af366004613f23565b60019695505050505050565b3480156105c6575f80fd5b5061039a6105d5366004613dd5565b611b1a565b3480156105e5575f80fd5b5061042b6105f4366004613fc9565b80516020818301810180516101a38252928201919093012091525460ff1681565b348015610620575f80fd5b5061031261062f366004613db5565b6101a56020525f908152604090205481565b34801561064c575f80fd5b5061034d61065b366004614003565b611b50565b34801561066b575f80fd5b5061039a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561069e575f80fd5b5061034d6106ad366004613dd5565b61211a565b3480156106bd575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff1661039a565b3480156106e7575f80fd5b506106fb6106f6366004613db5565b6121d7565b60405161031c939291906140bc565b348015610715575f80fd5b5061039a7f000000000000000000000000000000000000000000000000000000000000000081565b348015610748575f80fd5b5061042b610757366004613db5565b609e6020525f908152604090205460ff1681565b348015610776575f80fd5b5061078a610785366004613dd5565b612297565b60405161031c91906140f9565b3480156107a2575f80fd5b5061078a6123ce565b3480156107b6575f80fd5b5061034d6107c5366004613db5565b6125b0565b3480156107d5575f80fd5b5061034d6107e4366004613dd5565b612721565b3480156107f4575f80fd5b50610312609d5481565b348015610809575f80fd5b5061034d610818366004613dd5565b6127eb565b348015610828575f80fd5b5060975461039a9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610854575f80fd5b5061034d610863366004614152565b6128a8565b348015610873575f80fd5b5061034d610882366004613db5565b612ac6565b348015610892575f80fd5b506103126108a1366004613db5565b612b41565b3480156108b1575f80fd5b50610312609b5481565b3480156108c6575f80fd5b506108ea6108d5366004613db5565b61019f6020525f908152604090205460ff1681565b60405160ff909116815260200161031c565b348015610907575f80fd5b5061042b610916366004613db5565b73ffffffffffffffffffffffffffffffffffffffff165f9081526101a16020526040902054151590565b34801561094b575f80fd5b5061031261095a3660046141b9565b612be2565b34801561096a575f80fd5b5061034d610979366004613db5565b612d55565b348015610989575f80fd5b5061034d610998366004613dd5565b612e09565b335f818152609e602052604090205460ff16610a1a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f6e6f7420696e2077686974656c6973740000000000000000000000000000000060448201526064015b60405180910390fd5b335f9081526101a2602052604090205473ffffffffffffffffffffffffffffffffffffffff1615610aa7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f616c7265616479207265676973746572656400000000000000000000000000006044820152606401610a11565b8215801590610ac557505f8381526101a4602052604090205460ff16155b610b2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c69642074656e6465726d696e74207075626b6579000000000000006044820152606401610a11565b8151610100148015610b5e57506101a382604051610b4991906141f8565b9081526040519081900360200190205460ff16155b610bc4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420626c73207075626b657900000000000000000000000000006044820152606401610a11565b6098543414610c2f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964207374616b696e672076616c756500000000000000000000006044820152606401610a11565b6040518060600160405280610c413390565b73ffffffffffffffffffffffffffffffffffffffff908116825260208083018790526040928301869052335f9081526101a28252839020845181547fffffffffffffffffffffffff00000000000000000000000000000000000000001693169290921782558301516001820155908201516002820190610cc190826142a8565b50905050610cd4610ccf3390565b612ec6565b60016101a383604051610ce791906141f8565b9081526040805191829003602090810190922080549315157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff009485161790555f8681526101a49092529020805490911660011790557fb9c7babb56df9f2da4a30811a6c778e4e68af88b72712d56cf62c5516e20e199610d643390565b8484604051610d75939291906140bc565b60405180910390a1335f9081526101a260209081526040918290208251606081018452815473ffffffffffffffffffffffffffffffffffffffff168152600182015492810192909252600281018054610e5a9484019190610dd590614213565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0190614213565b8015610e4c5780601f10610e2357610100808354040283529160200191610e4c565b820191905f5260205f20905b815481529060010190602001808311610e2f57829003601f168201915b505050505081525050613033565b505050565b60a08160ff8110610e6e575f80fd5b015473ffffffffffffffffffffffffffffffffffffffff16905081565b610e93613186565b5f5b815181101561123657610ec0828281518110610eb357610eb36143c4565b602002602001015161199a565b610f4c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f6f6e6c7920616374697665207374616b65722063616e2062652072656d6f766560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a11565b6101a55f838381518110610f6257610f626143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20545f1461100c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f7769746864726177696e670000000000000000000000000000000000000000006044820152606401610a11565b609954611019904361441e565b6101a55f84848151811061102f5761102f6143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611096828281518110611089576110896143c4565b6020026020010151613207565b8181815181106110a8576110a86143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d56101a55f8585815181106110fd576110fd6143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460405161114e91815260200190565b60405180910390a2609e5f83838151811061116b5761116b6143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81549060ff02191690556001609f5f8484815181106111d2576111d26143c4565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055600101610e95565b507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161126691906140f9565b60405180910390a16112778161333a565b50565b611282613186565b5f8111801561129457506101a6548114155b6112fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c7565006044820152606401610a11565b6101a680549082905560408051828152602081018490527f36f971a40478225aeb80cfbf5e80306e8cb76d3bf7d56fdc5e490945cddb7d5591015b60405180910390a15050565b61134a3361199a565b6113b0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f6f6e6c7920616374697665207374616b657200000000000000000000000000006044820152606401610a11565b335f9081526101a5602052604090205415611427576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f7769746864726177696e670000000000000000000000000000000000000000006044820152606401610a11565b609954611434904361441e565b335f8181526101a5602052604090209190915561145090613207565b335f8181526101a560209081526040918290205491519182527f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5910160405180910390a2335f908152609e6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00908116909155609f83528184208054909116600190811790915581518181528083019092529091828101908036833701905050905033815f81518110611510576115106143c4565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848160405161126691906140f9565b611581613186565b61158961345d565b565b611593613bdf565b60408051611fe08101918290529060a09060ff9082845b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116115aa575050505050905090565b6097545f9073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611677576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f6f6e6c7920726f6c6c757020636f6e74726163740000000000000000000000006044820152606401610a11565b61167f6137ae565b5f61168983612297565b90505f805b82518110156118b0575f6101a55f8584815181106116ae576116ae6143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541115611765576101a55f84838151811061170c5761170c6143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f90556098548261175e919061441e565b91506118a8565b6117ac83828151811061177a5761177a6143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff165f9081526101a16020526040902054151590565b6118a8576098546117bd908361441e565b91506117d4838281518110611089576110896143c4565b609e5f8483815181106117e9576117e96143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81549060ff02191690556001609f5f858481518110611850576118506143c4565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b60010161168e565b505f6064609a54836118c29190614431565b6118cc9190614448565b90506118d88183614480565b609d5f8282546118e8919061441e565b90915550506097546119109073ffffffffffffffffffffffffffffffffffffffff1682613821565b7f654f4a61849f1b3ad10abb283d27f02d5fece7b820acc5a3b874713b58748b5a8360405161193f91906140f9565b60405180910390a17f3f446646c03e618be8238a586960d6d625f35c653cdca1ef59609993e8ed2c848360405161197691906140f9565b60405180910390a16119878361333a565b925050506119956001606555565b919050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815261019f602052604081205460ff1681036119d057505f919050565b73ffffffffffffffffffffffffffffffffffffffff82165f81815261019f602052604090205460a090611a089060019060ff16614493565b60ff1660ff8110611a1b57611a1b6143c4565b015473ffffffffffffffffffffffffffffffffffffffff16148015611a63575073ffffffffffffffffffffffffffffffffffffffff82165f9081526101a16020526040902054155b92915050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815261019f602052604081205460ff168103611a9f57505f919050565b73ffffffffffffffffffffffffffffffffffffffff82165f81815261019f602052604090205460a090611ad79060019060ff16614493565b60ff1660ff8110611aea57611aea6143c4565b015473ffffffffffffffffffffffffffffffffffffffff161492915050565b611b11613186565b6115895f6138f8565b6101a08181548110611b2a575f80fd5b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b5f54610100900460ff1615808015611b6e57505f54600160ff909116105b80611b875750303b158015611b8757505f5460ff166001145b611c13576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a11565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611c6f575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8816611cec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f696e76616c696420726f6c6c757020636f6e74726163740000000000000000006044820152606401610a11565b5f8711611d55576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964207374616b696e672076616c756500000000000000000000006044820152606401610a11565b5f8611611dbe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c6964206368616c6c656e6765206465706f7369742076616c7565006044820152606401610a11565b5f8511611e27576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f696e76616c6964207769746864726177616c206c6f636b20626c6f636b7300006044820152606401610a11565b5f8311611e90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c696420676173206c696d697420616464207374616b6572000000006044820152606401610a11565b5f8211611ef9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f696e76616c696420676173206c696d69742072656d6f7665207374616b6572736044820152606401610a11565b5f84118015611f09575060648411155b611f94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f696e76616c6964206368616c6c656e676572207265776172642070657263656e60448201527f74616765000000000000000000000000000000000000000000000000000000006064820152608401610a11565b611f9c61396e565b611fa4613a0c565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8a16179055609a84905560988790556101a68690556099859055609b839055609c829055604080515f8152602081018590527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c910160405180910390a1604080515f8152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f7910160405180910390a1604080515f8152602081018690527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba910160405180910390a18015612110575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b612122613186565b5f811180156121335750609c548114155b612199576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206e657720676173206c696d697400000000000000000000006044820152606401610a11565b609c80549082905560408051828152602081018490527fdd4b37d1f14888147fe4be2cfaedcbf148fd07ececc856d0433241b8b6e4a7f79101611335565b6101a26020525f908152604090208054600182015460028301805473ffffffffffffffffffffffffffffffffffffffff90931693919261221690614213565b80601f016020809104026020016040519081016040528092919081815260200182805461224290614213565b801561228d5780601f106122645761010080835404028352916020019161228d565b820191905f5260205f20905b81548152906001019060200180831161227057829003601f168201915b5050505050905083565b6060600182901c5f5b81156122c7576122b181600161441e565b90506122be600183614480565b821691506122a0565b8067ffffffffffffffff8111156122e0576122e0613c48565b604051908082528060200260200182016040528015612309578160200160208202803683370190505b5092505f60015b60ff8160ff16116123c557600160ff82161b8616156123b35760a0612336600183614493565b60ff1660ff8110612349576123496143c4565b0154855173ffffffffffffffffffffffffffffffffffffffff90911690869084908110612378576123786143c4565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101526123a882600161441e565b9150828210156123c5575b806123bd816144ac565b915050612310565b50505050919050565b6040805160ff80825261200082019092526060915f91829160208201611fe0803683370190505090505f5b60ff8110156124b7575f60a08260ff8110612416576124166143c4565b015473ffffffffffffffffffffffffffffffffffffffff161480159061247857506101a15f60a08360ff811061244e5761244e6143c4565b015473ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2054155b156124af5782612487816144ca565b935050600182828151811061249e5761249e6143c4565b911515602092830291909101909101525b6001016123f9565b505f8267ffffffffffffffff8111156124d2576124d2613c48565b6040519080825280602002602001820160405280156124fb578160200160208202803683370190505b5090505f805b60ff8110156125a65783818151811061251c5761251c6143c4565b60200260200101511561259e5760a08160ff811061253c5761253c6143c4565b0154835173ffffffffffffffffffffffffffffffffffffffff9091169084908490811061256b5761256b6143c4565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528161259a816144ca565b9250505b600101612501565b5090949350505050565b6125b86137ae565b335f9081526101a5602052604090205461262e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f7769746864726177616c206e6f742065786973740000000000000000000000006044820152606401610a11565b335f9081526101a560205260409020544310156126a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f7769746864726177616c206c6f636b65640000000000000000000000000000006044820152606401610a11565b335f9081526101a560205260408120556126bf61345d565b6040805173ffffffffffffffffffffffffffffffffffffffff83168152905133917f89309c9b2aeaffbdce717113df9427298b20448c05919bf889e05f8c3094254b919081900360200190a261271781609854613821565b6112776001606555565b612729613186565b5f81118015612739575060648111155b80156127475750609a548114155b6127ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c6964207265776172642070657263656e74616765000000000000006044820152606401610a11565b609a80549082905560408051828152602081018490527fa46de936426e045703b2d34a292a19fde92b329018db8e0da750033876b655ba9101611335565b6127f3613186565b5f811180156128045750609b548114155b61286a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206e657720676173206c696d697400000000000000000000006044820152606401610a11565b609b80549082905560408051828152602081018490527f0ef80fb82bf5439b8591744c0fde771f5d93dce7a7970b1e9b7828cdc3970e9c9101611335565b6128b0613186565b5f5b838110156129fa57609f5f8686848181106128cf576128cf6143c4565b90506020020160208101906128e49190613db5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f205460ff1615612974576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e2072656d6f766564206c69737400000000000000000000000000000000006044820152606401610a11565b6001609e5f87878581811061298b5761298b6143c4565b90506020020160208101906129a09190613db5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556001016128b2565b505f5b81811015612a8257609e5f848484818110612a1a57612a1a6143c4565b9050602002016020810190612a2f9190613db5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556001016129fd565b507fe375867e538b40218c1b3db2ccceaf875eb073e38b510449e6088c1539ac862284848484604051612ab89493929190614553565b60405180910390a150505050565b612ace613186565b612ad66137ae565b609d54612ae38282613821565b5f609d556040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fa1fefb6c5328a92a416e321ed50997303fe7135fd88c28b0592b21ce42b5cdd9910160405180910390a1506112776001606555565b5f612b4b82611a69565b612bb1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f696e76616c6964207374616b65720000000000000000000000000000000000006044820152606401610a11565b5073ffffffffffffffffffffffffffffffffffffffff165f90815261019f6020526040902054600160ff9091161b90565b5f60ff821115612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f7374616b657273206c656e677468206f7574206f6620626f756e6473000000006044820152606401610a11565b5f5b82811015612d4e57612c82848483818110612c6d57612c6d6143c4565b905060200201602081019061057c9190613db5565b612ce8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f696e76616c6964207374616b65720000000000000000000000000000000000006044820152606401610a11565b61019f5f858584818110612cfe57612cfe6143c4565b9050602002016020810190612d139190613db5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2054600160ff90911681901b929092179101612c50565b5092915050565b612d5d613186565b73ffffffffffffffffffffffffffffffffffffffff8116612e00576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a11565b611277816138f8565b612e11613186565b5f81118015612e2257506098548114155b612e88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964207374616b696e672076616c756500000000000000000000006044820152606401610a11565b609880549082905560408051828152602081018490527f91e3ed304d49776a78bbe0df6bf7156f5433763621e5e728a3c2adfe7de743689101611335565b5f5b60ff8160ff161015612fd0575f60a060ff808416908110612eeb57612eeb6143c4565b015473ffffffffffffffffffffffffffffffffffffffff1603612fc8578160a08260ff1660ff8110612f1f57612f1f6143c4565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055612f6e816001614584565b73ffffffffffffffffffffffffffffffffffffffff929092165f90815261019f6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660ff9093169290921790915550565b600101612ec8565b506040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f736c6f742066756c6c00000000000000000000000000000000000000000000006044820152606401610a11565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f846040516024016130a2919061459d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f6d454d5100000000000000000000000000000000000000000000000000000000179052609b5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261315694939291906004016145e1565b5f604051808303815f87803b15801561316d575f80fd5b505af115801561317f573d5f803e3d5ffd5b5050505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314611589576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a11565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526101a1602052604090205415613294576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f616c726561647920696e2064656c6574654c69737400000000000000000000006044820152606401610a11565b6101a080546001810182555f919091527f7980fe0f714a613298681d64b7b8ffa7b148338dd52429f307d72798d5c317c40180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316179055609954613311904361441e565b73ffffffffffffffffffffffffffffffffffffffff9091165f9081526101a16020526040902055565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b2267a7b7f00000000000000000000000000000000000000000000000000000000000000005f846040516024016133a991906140f9565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0be67fcc00000000000000000000000000000000000000000000000000000000179052609c5490517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815261315694939291906004016145e1565b5f5b6101a05481101561127757436101a15f6101a08481548110613483576134836143c4565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040019020541161379c5760a0600161019f5f6101a085815481106134d5576134d56143c4565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902054613513919060ff16614493565b60ff1660ff8110613526576135266143c4565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556101a0805461019f915f9184908110613568576135686143c4565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001812080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556101a080546101a2929190849081106135d9576135d96143c4565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001812080547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560018101829055906136446002830182613bfe565b50506101a15f6101a0838154811061365e5761365e6143c4565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040018120556101a080546136a090600190614480565b815481106136b0576136b06143c4565b5f918252602090912001546101a0805473ffffffffffffffffffffffffffffffffffffffff90921691839081106136e9576136e96143c4565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101a080548061374057613740614626565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff000000000000000000000000000000000000000016905501905561345f565b806137a6816144ca565b91505061345f565b60026065540361381a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a11565b6002606555565b80156138ed575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f811461387d576040519150601f19603f3d011682016040523d82523d5f602084013e613882565b606091505b5050905080610e5a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a11565b5050565b6001606555565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613a04576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a11565b611589613aaa565b5f54610100900460ff16613aa2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a11565b611589613b49565b5f54610100900460ff16613b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a11565b611589336138f8565b5f54610100900460ff166138f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a11565b60405180611fe0016040528060ff906020820280368337509192915050565b508054613c0a90614213565b5f825580601f10613c19575050565b601f0160209004905f5260205f209081019061127791905b80821115613c44575f8155600101613c31565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715613cbc57613cbc613c48565b604052919050565b5f82601f830112613cd3575f80fd5b813567ffffffffffffffff811115613ced57613ced613c48565b613d1e60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601613c75565b818152846020838601011115613d32575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215613d5f575f80fd5b82359150602083013567ffffffffffffffff811115613d7c575f80fd5b613d8885828601613cc4565b9150509250929050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611995575f80fd5b5f60208284031215613dc5575f80fd5b613dce82613d92565b9392505050565b5f60208284031215613de5575f80fd5b5035919050565b5f6020808385031215613dfd575f80fd5b823567ffffffffffffffff80821115613e14575f80fd5b818501915085601f830112613e27575f80fd5b813581811115613e3957613e39613c48565b8060051b9150613e4a848301613c75565b8181529183018401918481019088841115613e63575f80fd5b938501935b83851015613e8857613e7985613d92565b82529385019390850190613e68565b98975050505050505050565b611fe0810181835f5b60ff811015613ed257815173ffffffffffffffffffffffffffffffffffffffff16835260209283019290910190600101613e9d565b50505092915050565b5f8083601f840112613eeb575f80fd5b50813567ffffffffffffffff811115613f02575f80fd5b6020830191508360208260051b8501011115613f1c575f80fd5b9250929050565b5f805f805f8060808789031215613f38575f80fd5b86359550602087013567ffffffffffffffff80821115613f56575f80fd5b613f628a838b01613edb565b9097509550604089013594506060890135915080821115613f81575f80fd5b818901915089601f830112613f94575f80fd5b813581811115613fa2575f80fd5b8a6020828501011115613fb3575f80fd5b6020830194508093505050509295509295509295565b5f60208284031215613fd9575f80fd5b813567ffffffffffffffff811115613fef575f80fd5b613ffb84828501613cc4565b949350505050565b5f805f805f805f60e0888a031215614019575f80fd5b61402288613d92565b9960208901359950604089013598606081013598506080810135975060a0810135965060c00135945092505050565b5f5b8381101561406b578181015183820152602001614053565b50505f910152565b5f815180845261408a816020860160208601614051565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f6140f06060830184614073565b95945050505050565b602080825282518282018190525f9190848201906040850190845b8181101561414657835173ffffffffffffffffffffffffffffffffffffffff1683529284019291840191600101614114565b50909695505050505050565b5f805f8060408587031215614165575f80fd5b843567ffffffffffffffff8082111561417c575f80fd5b61418888838901613edb565b909650945060208701359150808211156141a0575f80fd5b506141ad87828801613edb565b95989497509550505050565b5f80602083850312156141ca575f80fd5b823567ffffffffffffffff8111156141e0575f80fd5b6141ec85828601613edb565b90969095509350505050565b5f8251614209818460208701614051565b9190910192915050565b600181811c9082168061422757607f821691505b60208210810361425e577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b601f821115610e5a57805f5260205f20601f840160051c810160208510156142895750805b601f840160051c820191505b8181101561317f575f8155600101614295565b815167ffffffffffffffff8111156142c2576142c2613c48565b6142d6816142d08454614213565b84614264565b602080601f831160018114614328575f84156142f25750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556143bc565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561437457888601518255948401946001909101908401614355565b50858210156143b057878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611a6357611a636143f1565b8082028115828204841417611a6357611a636143f1565b5f8261447b577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b81810381811115611a6357611a636143f1565b60ff8281168282160390811115611a6357611a636143f1565b5f60ff821660ff81036144c1576144c16143f1565b60010192915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036144fa576144fa6143f1565b5060010190565b8183525f60208085019450825f5b858110156145485773ffffffffffffffffffffffffffffffffffffffff61453583613d92565b168752958201959082019060010161450f565b509495945050505050565b604081525f614566604083018688614501565b8281036020840152614579818587614501565b979650505050505050565b60ff8181168382160190811115611a6357611a636143f1565b6020815273ffffffffffffffffffffffffffffffffffffffff8251166020820152602082015160408201525f6040830151606080840152613ffb6080840182614073565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f6146156080830185614073565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L1StakingStorageLayoutJSON), L1StakingStorageLayout); err != nil { diff --git a/contracts/contracts/l1/staking/IL1Staking.sol b/contracts/contracts/l1/staking/IL1Staking.sol index 885481c66..ba4f6801b 100644 --- a/contracts/contracts/l1/staking/IL1Staking.sol +++ b/contracts/contracts/l1/staking/IL1Staking.sol @@ -40,6 +40,11 @@ interface IL1Staking { /// @param remove addresses removed event WhitelistUpdated(address[] add, address[] remove); + /// @notice staking value updated + /// @param oldStakingValue old staking value + /// @param newStakingValue new staking value + event StakingValueUpdated(uint256 oldStakingValue, uint256 newStakingValue); + /// @notice gas limit add staker updated /// @param oldGasLimit old gas limit /// @param newGasLimit new gas limit diff --git a/contracts/contracts/l1/staking/L1Staking.sol b/contracts/contracts/l1/staking/L1Staking.sol index 827b1e8a8..165fec18d 100644 --- a/contracts/contracts/l1/staking/L1Staking.sol +++ b/contracts/contracts/l1/staking/L1Staking.sol @@ -18,7 +18,7 @@ contract L1Staking is IL1Staking, Staking, OwnableUpgradeable, ReentrancyGuardUp /// @notice rollup Contract address public rollupContract; - /// @notice staking value, immutable + /// @notice staking value uint256 public stakingValue; /// @notice exit lock blocks @@ -254,6 +254,15 @@ contract L1Staking is IL1Staking, Staking, OwnableUpgradeable, ReentrancyGuardUp emit SlashRemainingClaimed(receiver, _slashRemaining); } + /// @notice update staking value + /// @param _stakingValue staking value + function updateStakingValue(uint256 _stakingValue) external onlyOwner { + require(_stakingValue > 0 && _stakingValue != stakingValue, "invalid staking value"); + uint256 _oldStakingValue = stakingValue; + stakingValue = _stakingValue; + emit StakingValueUpdated(_oldStakingValue, stakingValue); + } + /// @notice update gas limit of add staker /// @param _gasLimitAdd cross-chain gas limit add staker function updateGasLimitAddStaker(uint256 _gasLimitAdd) external onlyOwner { diff --git a/contracts/contracts/l2/staking/Distribute.sol b/contracts/contracts/l2/staking/Distribute.sol index 4b14dcaa3..71f6b4acd 100644 --- a/contracts/contracts/l2/staking/Distribute.sol +++ b/contracts/contracts/l2/staking/Distribute.sol @@ -272,10 +272,10 @@ contract Distribute is IDistribute, OwnableUpgradeable { function queryUnclaimed(address delegatee, address delegator) external view returns (uint256 reward) { require(unclaimed[delegator].delegatees.length() != 0, "invalid delegator or no remaining reward"); require(unclaimed[delegator].delegatees.contains(delegatee), "no remaining reward of the delegatee"); + uint256 delegateeAmount; uint256 delegatorAmount; - uint256 start = unclaimed[delegator].unclaimedStart[delegatee]; - for (uint256 i = start; i < mintedEpochCount; i++) { + for (uint256 i = unclaimed[delegator].unclaimedStart[delegatee]; i < mintedEpochCount; i++) { if (distributions[delegatee][i].amounts[delegator] > 0) { delegatorAmount = distributions[delegatee][i].amounts[delegator]; } @@ -283,6 +283,7 @@ contract Distribute is IDistribute, OwnableUpgradeable { delegateeAmount = distributions[delegatee][i].delegationAmount; } reward += (distributions[delegatee][i].delegatorRewardAmount * delegatorAmount) / delegateeAmount; + if (unclaimed[delegator].undelegated[delegatee] && unclaimed[delegator].unclaimedEnd[delegatee] == i) { break; } diff --git a/contracts/contracts/test/L2Staking.t.sol b/contracts/contracts/test/L2Staking.t.sol index e74cdb2cc..d2a854cc3 100644 --- a/contracts/contracts/test/L2Staking.t.sol +++ b/contracts/contracts/test/L2Staking.t.sol @@ -13,7 +13,7 @@ import {ICrossDomainMessenger} from "../libraries/ICrossDomainMessenger.sol"; import {IDistribute} from "../l2/staking/IDistribute.sol"; import {console} from "forge-std/Test.sol"; -// import "forge-std/console.sol"; +import "forge-std/console.sol"; contract L2StakingTest is L2StakingBaseTest { uint256 public morphBalance = 20 ether; @@ -1470,6 +1470,204 @@ contract L2StakingTest is L2StakingBaseTest { hevm.stopPrank(); } + /** + * @notice staking -> distribute -> claim -> undelegate -> distribute -> claim + */ + function test_delegatorClaimAllAfterUndelegate_succeeds() public { + hevm.startPrank(alice); + morphToken.approve(address(l2Staking), type(uint256).max); + l2Staking.delegateStake(firstStaker, 5 ether); + l2Staking.delegateStake(secondStaker, 5 ether); + l2Staking.delegateStake(thirdStaker, 5 ether); + hevm.stopPrank(); + + uint256 time = REWARD_EPOCH; + hevm.warp(time); + + // reward starting + // rewardStartTime = 86400 + // block.timeStamp >= rewardStartTime + // candidateNumber > 0 + hevm.prank(multisig); + l2Staking.startReward(); + + // staker set commission + hevm.prank(firstStaker); + l2Staking.setCommissionRate(1); + hevm.prank(secondStaker); + l2Staking.setCommissionRate(1); + hevm.prank(thirdStaker); + l2Staking.setCommissionRate(1); + + // *************** epoch = 1 ******************** // + time = REWARD_EPOCH * 2; + hevm.warp(time); + + uint256 blocksCountOfEpoch = REWARD_EPOCH / 3; + hevm.roll(blocksCountOfEpoch * 2); + hevm.prank(oracleAddress); + record.setLatestRewardEpochBlock(blocksCountOfEpoch); + _updateDistribute(0); + + // effectiveEpoch = 2 + hevm.startPrank(bob); + morphToken.approve(address(l2Staking), type(uint256).max); + l2Staking.delegateStake(secondStaker, morphBalance - 5 ether); + hevm.stopPrank(); + + // ranking changed by delegate amount + uint256 secondRanking = l2Staking.stakerRankings(secondStaker); + assertEq(secondRanking, 0 + 1); + + // *********************************** // + time = REWARD_EPOCH * (3); + hevm.roll(blocksCountOfEpoch * (3)); + hevm.warp(time); + _updateDistribute(1); + // console.logUint(morphToken.inflationMintedEpochs()); + // *********************************** // + + uint256 aliceReward1 = distribute.queryUnclaimed(firstStaker, alice); + uint256 aliceReward2 = distribute.queryUnclaimed(secondStaker, alice); + uint256 aliceReward3 = distribute.queryUnclaimed(thirdStaker, alice); + hevm.startPrank(alice); + uint256 balanceBefore = morphToken.balanceOf(alice); + // console.logString("......................"); + // console.logUint(balanceBefore); + // console.logUint(aliceReward1); + // console.logUint(aliceReward2); + // console.logUint(aliceReward3); + + l2Staking.claimReward(address(0), 0); + hevm.expectRevert("all reward claimed"); + l2Staking.claimReward(firstStaker, 0); + hevm.expectRevert("all reward claimed"); + l2Staking.claimReward(secondStaker, 0); + hevm.expectRevert("all reward claimed"); + l2Staking.claimReward(thirdStaker, 0); + uint256 balanceAfter = morphToken.balanceOf(alice); + + // console.logUint(balanceAfter); + // console.logString("......................"); + assertEq(balanceAfter, balanceBefore + aliceReward1 + aliceReward2 + aliceReward3); + hevm.stopPrank(); + + // *********************************** // + time = REWARD_EPOCH * (4); + hevm.roll(blocksCountOfEpoch * (4)); + hevm.warp(time); + _updateDistribute(2); + // console.logUint(morphToken.inflationMintedEpochs()); + // *********************************** // + + hevm.startPrank(alice); + l2Staking.undelegateStake(firstStaker); + l2Staking.undelegateStake(secondStaker); + l2Staking.undelegateStake(thirdStaker); + hevm.stopPrank(); + + // console.logString("......................"); + // console.logString("......................"); + aliceReward1 = distribute.queryUnclaimed(firstStaker, alice); + aliceReward2 = distribute.queryUnclaimed(secondStaker, alice); + aliceReward3 = distribute.queryUnclaimed(thirdStaker, alice); + // console.logUint(aliceReward1); + // console.logUint(aliceReward2); + // console.logUint(aliceReward3); + // console.logString("......................"); + // console.logString("......................"); + + // *********************************** // + time = REWARD_EPOCH * (5); + hevm.roll(blocksCountOfEpoch * (5)); + hevm.warp(time); + _updateDistribute(3); + // console.logUint(morphToken.inflationMintedEpochs()); + // *********************************** // + + // *********************************** // + time = REWARD_EPOCH * (6); + hevm.roll(blocksCountOfEpoch * (6)); + hevm.warp(time); + _updateDistribute(4); + // console.logUint(morphToken.inflationMintedEpochs()); + // *********************************** // + + // *********************************** // + time = REWARD_EPOCH * (7); + hevm.roll(blocksCountOfEpoch * (7)); + hevm.warp(time); + _updateDistribute(5); + // console.logUint(morphToken.inflationMintedEpochs()); + // *********************************** // + + // *********************************** // + time = REWARD_EPOCH * (8); + hevm.roll(blocksCountOfEpoch * (8)); + hevm.warp(time); + _updateDistribute(6); + // console.logUint(morphToken.inflationMintedEpochs()); + // *********************************** // + + uint256 aliceRewardNew1 = distribute.queryUnclaimed(firstStaker, alice); + uint256 aliceRewardNew2 = distribute.queryUnclaimed(secondStaker, alice); + uint256 aliceRewardNew3 = distribute.queryUnclaimed(thirdStaker, alice); + + hevm.startPrank(alice); + // console.logString("......................"); + balanceBefore = morphToken.balanceOf(alice); + uint256 balanceBeforeTmp = balanceBefore; + // console.logUint(balanceBefore); + // console.logString("......................"); + + // l2Staking.claimReward(address(0), 0); + + // console.logString("......................"); + + // console.logUint(aliceRewardNew1); + balanceBeforeTmp = morphToken.balanceOf(alice); + l2Staking.claimReward(firstStaker, 0); + hevm.expectRevert("no remaining reward"); + l2Staking.claimReward(firstStaker, 0); + balanceAfter = morphToken.balanceOf(alice); + // console.logUint(balanceAfter); + assertEq(balanceAfter, balanceBeforeTmp + aliceRewardNew1); + + // console.logString("......................"); + + // console.logUint(aliceRewardNew2); + balanceBeforeTmp = morphToken.balanceOf(alice); + l2Staking.claimReward(secondStaker, 0); + hevm.expectRevert("no remaining reward"); + l2Staking.claimReward(secondStaker, 0); + balanceAfter = morphToken.balanceOf(alice); + // console.logUint(balanceAfter); + assertEq(balanceAfter, balanceBeforeTmp + aliceRewardNew2); + + // console.logString("......................"); + + // console.logUint(aliceRewardNew3); + balanceBeforeTmp = morphToken.balanceOf(alice); + l2Staking.claimReward(thirdStaker, 0); + hevm.expectRevert("no remaining reward"); + l2Staking.claimReward(thirdStaker, 0); + balanceAfter = morphToken.balanceOf(alice); + // console.logUint(balanceAfter); + assertEq(balanceAfter, balanceBeforeTmp + aliceRewardNew3); + + // console.logString("......................"); + + assertEq(balanceAfter, balanceBefore + aliceRewardNew1 + aliceRewardNew2 + aliceRewardNew3); + + hevm.expectRevert("invalid delegator or no remaining reward"); + distribute.queryUnclaimed(firstStaker, alice); + hevm.expectRevert("invalid delegator or no remaining reward"); + distribute.queryUnclaimed(secondStaker, alice); + hevm.expectRevert("invalid delegator or no remaining reward"); + distribute.queryUnclaimed(thirdStaker, alice); + hevm.stopPrank(); + } + /** * @notice staking -> distribute -> claim */ diff --git a/contracts/contracts/test/base/CommonTest.t.sol b/contracts/contracts/test/base/CommonTest.t.sol index 4de3af5a3..3c432d9be 100644 --- a/contracts/contracts/test/base/CommonTest.t.sol +++ b/contracts/contracts/test/base/CommonTest.t.sol @@ -30,7 +30,7 @@ contract CommonTest is DSTestPlus, MockTree { address public bob3 = address(259); address public bob4 = address(260); address public bob5 = address(261); - + address public multisig = address(512); FFIInterface public ffi; @@ -41,6 +41,7 @@ contract CommonTest is DSTestPlus, MockTree { uint256 public finalizationPeriodSeconds = 2; uint256 public proofRewardPercent = 70; + function setUp() public virtual { // Give alice and bob some ETH hevm.deal(alice, 1 << 16); From bfc77f793e0213c56c242a96ce9b6820dd3e2a50 Mon Sep 17 00:00:00 2001 From: kukoo Date: Fri, 18 Oct 2024 22:24:44 +0800 Subject: [PATCH 02/33] Contract deploy update (#591) Co-authored-by: Segue Co-authored-by: GingerLiu123 --- bindings/predeploys/addresses.go | 3 - contracts/deploy/013-DeployProxys.ts | 37 -------- contracts/deploy/014-DeployImpls.ts | 15 --- contracts/deploy/017-GatewayInit.ts | 63 ------------- contracts/deploy/019-AdminTransfer.ts | 16 ++-- contracts/deploy/020-ContractInit.ts | 11 +-- contracts/src/constants.ts | 1 - contracts/src/types.ts | 2 - go-ethereum | 2 +- .../morph-chain-ops/genesis/config.go | 64 ------------- .../morph-chain-ops/genesis/layer_two_test.go | 2 - .../morph-chain-ops/genesis/setters.go | 2 +- .../morph-chain-ops/immutables/config.go | 17 ---- .../morph-chain-ops/immutables/immutables.go | 91 ------------------- 14 files changed, 15 insertions(+), 311 deletions(-) diff --git a/bindings/predeploys/addresses.go b/bindings/predeploys/addresses.go index f92d30f34..dc8a1b39b 100644 --- a/bindings/predeploys/addresses.go +++ b/bindings/predeploys/addresses.go @@ -29,7 +29,6 @@ const ( L2ReverseCustomGateway = "0x5300000000000000000000000000000000000018" L2WithdrawLockERC20Gateway = "0x5300000000000000000000000000000000000019" L2USDCGateway = "0x5300000000000000000000000000000000000020" - L2USDC = "0x5300000000000000000000000000000000000021" ) var ( @@ -57,7 +56,6 @@ var ( L2ReverseCustomGatewayAddr = common.HexToAddress(L2ReverseCustomGateway) L2WithdrawLockERC20GatewayAddr = common.HexToAddress(L2WithdrawLockERC20Gateway) L2USDCGatewayAddr = common.HexToAddress(L2USDCGateway) - L2USDCAddr = common.HexToAddress(L2USDC) Predeploys = make(map[string]*common.Address) ) @@ -87,5 +85,4 @@ func init() { Predeploys["L2ReverseCustomGateway"] = &L2ReverseCustomGatewayAddr Predeploys["L2WithdrawLockERC20Gateway"] = &L2WithdrawLockERC20GatewayAddr Predeploys["L2USDCGateway"] = &L2USDCGatewayAddr - Predeploys["L2USDC"] = &L2USDCAddr } diff --git a/contracts/deploy/013-DeployProxys.ts b/contracts/deploy/013-DeployProxys.ts index 3d39a9297..334cfe82d 100644 --- a/contracts/deploy/013-DeployProxys.ts +++ b/contracts/deploy/013-DeployProxys.ts @@ -63,8 +63,6 @@ export const deployContractProxies = async ( const WETHFactoryName = ContractFactoryName.WETH const WETHImplStorageName = ImplStorageName.WETH - const USDCFactoryName = ContractFactoryName.USDC - const USDCImplStorageName = ImplStorageName.USDC let err = "" // ************************ token contracts deploy ************************ @@ -93,41 +91,6 @@ export const deployContractProxies = async ( } } - if (config.l1USDCAddress == "") { - // L1WETH deploy - let Factory = await hre.ethers.getContractFactory(USDCFactoryName) - let contract = await Factory.deploy() - await contract.deployed() - console.log( - "%s=%s ; TX_HASH: %s", - USDCImplStorageName, - contract.address.toLocaleLowerCase(), - contract.deployTransaction.hash - ) - let blockNumber = await hre.ethers.provider.getBlockNumber() - console.log("BLOCK_NUMBER: %s", blockNumber) - err = await storage(path, USDCImplStorageName, contract.address.toLocaleLowerCase(), blockNumber || 0) - if (err != "") { - return err - } - await contract.initialize( - "USDC", - "USDC", - "USD", - 18, - config.contractAdmin, - config.contractAdmin, - config.contractAdmin, - config.contractAdmin - ) - } else { - let blockNumber = await hre.ethers.provider.getBlockNumber() - err = await storage(path, USDCImplStorageName, config.l1USDCAddress.toLocaleLowerCase(), blockNumber || 0) - if (err != "") { - return err - } - } - // ************************ messenger contracts deploy ************************ // L1CrossDomainMessengerProxy deploy err = await deployContractProxyByStorageName(hre, path, deployer, L1CrossDomainMessengerStorageName) diff --git a/contracts/deploy/014-DeployImpls.ts b/contracts/deploy/014-DeployImpls.ts index b149adf5f..06a58ef1d 100644 --- a/contracts/deploy/014-DeployImpls.ts +++ b/contracts/deploy/014-DeployImpls.ts @@ -36,7 +36,6 @@ export const deployContractImpls = async ( const L1ERC721GatewayFactoryName = ContractFactoryName.L1ERC721Gateway const L1ERC1155GatewayFactoryName = ContractFactoryName.L1ERC1155Gateway const L1WETHGatewayFactoryName = ContractFactoryName.L1WETHGateway - const L1USDCGatewayFactoryName = ContractFactoryName.L1USDCGateway const EnforcedTxGatewayFactoryName = ContractFactoryName.EnforcedTxGateway // implement storage name @@ -51,7 +50,6 @@ export const deployContractImpls = async ( const L1WithdrawLockERC20GatewayImplStorageName = ImplStorageName.L1WithdrawLockERC20GatewayStorageName const L1ReverseCustomGatewayImplStorageName = ImplStorageName.L1ReverseCustomGatewayStorageName const L1WETHGatewayImplStorageName = ImplStorageName.L1WETHGatewayStorageName - const L1USDCGatewayImplStorageName = ImplStorageName.L1USDCGatewayStorageName const L1ERC721GatewayImplStorageName = ImplStorageName.L1ERC721GatewayStorageName const L1ERC1155GatewayImplStorageName = ImplStorageName.L1ERC1155GatewayStorageName const WhitelistImplStorageName = ImplStorageName.Whitelist @@ -201,19 +199,6 @@ export const deployContractImpls = async ( return err } - // L1USDCGateway deploy - const L1USDCAddress = getContractAddressByName(path, ImplStorageName.USDC) - Factory = await hre.ethers.getContractFactory(L1USDCGatewayFactoryName) - contract = await Factory.deploy(L1USDCAddress, predeploys.L2USDC) - await contract.deployed() - console.log("%s=%s ; TX_HASH: %s", L1USDCGatewayImplStorageName, contract.address.toLocaleLowerCase(), contract.deployTransaction.hash) - blockNumber = await hre.ethers.provider.getBlockNumber() - console.log("BLOCK_NUMBER: %s", blockNumber) - err = await storage(path, L1USDCGatewayImplStorageName, contract.address.toLocaleLowerCase(), blockNumber || 0) - if (err != '') { - return err - } - // EnforcedTxGateway deploy Factory = await hre.ethers.getContractFactory(EnforcedTxGatewayFactoryName) contract = await Factory.deploy() diff --git a/contracts/deploy/017-GatewayInit.ts b/contracts/deploy/017-GatewayInit.ts index b5baeda31..8e3af686d 100644 --- a/contracts/deploy/017-GatewayInit.ts +++ b/contracts/deploy/017-GatewayInit.ts @@ -71,13 +71,6 @@ export const GatewayInit = async ( const WETHAddress = getContractAddressByName(path, ImplStorageName.WETH) - // L1USDCGateway config - const L1USDCGatewayProxyAddress = getContractAddressByName(path, ProxyStorageName.L1USDCGatewayProxyStorageName) - const L1USDCGatewayImplAddress = getContractAddressByName(path, ImplStorageName.L1USDCGatewayStorageName) - const L1USDCGatewayFactory = await hre.ethers.getContractFactory(ContractFactoryName.L1USDCGateway) - - const USDCAddress = getContractAddressByName(path, ImplStorageName.USDC) - // EnforcedTxGateway config const EnforcedTxGatewayProxyAddress = getContractAddressByName(path, ProxyStorageName.EnforcedTxGatewayProxyStorageName) const EnforcedTxGatewayImplAddress = getContractAddressByName(path, ImplStorageName.EnforcedTxGatewayStorageName) @@ -585,62 +578,6 @@ export const GatewayInit = async ( console.log('L1WETHGatewayProxy upgrade success') } - // L1USDCGatewayProxy init - const IL1USDCGatewayProxy = await hre.ethers.getContractAt(ContractFactoryName.DefaultProxyInterface, L1USDCGatewayProxyAddress, deployer) - if ( - (await IL1USDCGatewayProxy.implementation()).toLocaleLowerCase() !== L1USDCGatewayImplAddress.toLocaleLowerCase() - ) { - console.log('Upgrading the L1USDCGateway proxy...') - const counterpart: string = predeploys.L2USDCGateway - - if (!ethers.utils.isAddress(counterpart) - || !ethers.utils.isAddress(L1GatewayRouterProxyAddress) - || !ethers.utils.isAddress(L1CrossDomainMessengerProxyAddress) - ) { - console.error('please check your address') - return '' - } - // Upgrade and initialize the proxy. - await IL1USDCGatewayProxy.connect(deployer).upgradeToAndCall( - L1USDCGatewayImplAddress, - L1USDCGatewayFactory.interface.encodeFunctionData('initialize', [ - counterpart, - L1GatewayRouterProxyAddress, - L1CrossDomainMessengerProxyAddress - ]) - ) - await awaitCondition( - async () => { - return ( - (await IL1USDCGatewayProxy.implementation()).toLocaleLowerCase() === L1USDCGatewayImplAddress.toLocaleLowerCase() - ) - }, - 3000, - 1000 - ) - const contractTmp = new ethers.Contract( - L1USDCGatewayProxyAddress, - L1USDCGatewayFactory.interface, - deployer, - ) - await assertContractVariable( - contractTmp, - 'counterpart', - counterpart - ) - await assertContractVariable( - contractTmp, - 'router', - L1GatewayRouterProxyAddress - ) - await assertContractVariable( - contractTmp, - 'messenger', - L1CrossDomainMessengerProxyAddress - ) - console.log('L1USDCGatewayProxy upgrade success') - } - // IEnforcedTxGatewayProxy init const IEnforcedTxGatewayProxy = await hre.ethers.getContractAt(ContractFactoryName.DefaultProxyInterface, EnforcedTxGatewayProxyAddress, deployer) if ( diff --git a/contracts/deploy/019-AdminTransfer.ts b/contracts/deploy/019-AdminTransfer.ts index 3b3e34b90..bc36b11f8 100644 --- a/contracts/deploy/019-AdminTransfer.ts +++ b/contracts/deploy/019-AdminTransfer.ts @@ -26,13 +26,15 @@ export const AdminTransferByProxyStorageName = async ( const IProxyContract = await hre.ethers.getContractAt(ContractFactoryName.DefaultProxyInterface, ProxyAddr, deployer) { - const implAddr = (await IProxyContract.implementation()).toLocaleLowerCase() - const admin = (await IProxyContract.admin()).toLocaleLowerCase() - if (implAddr === EmptyContractImplAddr.toLocaleLowerCase()) { - return `Proxy implementation address ${implAddr} should not be empty contract address ${EmptyContractImplAddr}` - } - if (admin !== deployerAddr) { - return `Proxy admin address ${admin} should deployer address ${deployerAddr}` + if (storageName != ProxyStorageName.L1USDCGatewayProxyStorageName) { + const implAddr = (await IProxyContract.implementation()).toLocaleLowerCase() + const admin = (await IProxyContract.admin()).toLocaleLowerCase() + if (implAddr === EmptyContractImplAddr.toLocaleLowerCase()) { + return `Proxy implementation address ${implAddr} should not be empty contract address ${EmptyContractImplAddr}` + } + if (admin !== deployerAddr) { + return `Proxy admin address ${admin} should deployer address ${deployerAddr}` + } } } console.log(`change ${storageName} admin transfer from ${deployerAddr} to ProxyAdmin ${ProxyAdminImplAddr} `) diff --git a/contracts/deploy/020-ContractInit.ts b/contracts/deploy/020-ContractInit.ts index 598110d43..a0e17dc19 100644 --- a/contracts/deploy/020-ContractInit.ts +++ b/contracts/deploy/020-ContractInit.ts @@ -76,6 +76,7 @@ export const ContractInit = async ( const L1StakingProxyAddress = getContractAddressByName(path, ProxyStorageName.L1StakingProxyStorageName) const L1Staking = await hre.ethers.getContractAt(ContractFactoryName.L1Staking, L1StakingProxyAddress, deployer) const whiteListAdd = config.l2SequencerAddresses + console.log("Add sequencer address to white list ", config.l2SequencerAddresses) // set sequencer to white list await L1Staking.updateWhitelist(whiteListAdd, []) for (let i = 0; i < config.l2SequencerAddresses.length; i++) { @@ -96,23 +97,19 @@ export const ContractInit = async ( // ------------------ router init ----------------- { const L1WETHAddress = getContractAddressByName(path, ImplStorageName.WETH) - const L1USDCAddress = getContractAddressByName(path, ImplStorageName.USDC) - const L1WETHGatewayProxyAddress = getContractAddressByName(path, ProxyStorageName.L1WETHGatewayProxyStorageName) - const L1USDCGatewayProxyAddress = getContractAddressByName(path, ProxyStorageName.L1USDCGatewayProxyStorageName) const L1GatewayRouterProxyAddress = getContractAddressByName(path, ProxyStorageName.L1GatewayRouterProxyStorageName) const l1GatewayRouter = await hre.ethers.getContractAt(ContractFactoryName.L1GatewayRouter, L1GatewayRouterProxyAddress, deployer) // set token gateway - const tokens = [L1WETHAddress,L1USDCAddress] - const gateways = [L1WETHGatewayProxyAddress,L1USDCGatewayProxyAddress] + const tokens = [L1WETHAddress] + const gateways = [L1WETHGatewayProxyAddress] await l1GatewayRouter.setERC20Gateway(tokens, gateways) await awaitCondition( async () => { return ( - (await l1GatewayRouter.getERC20Gateway(L1WETHAddress)).toLocaleLowerCase() === L1WETHGatewayProxyAddress.toLocaleLowerCase() && - (await l1GatewayRouter.getERC20Gateway(L1USDCAddress)).toLocaleLowerCase() === L1USDCGatewayProxyAddress.toLocaleLowerCase() + (await l1GatewayRouter.getERC20Gateway(L1WETHAddress)).toLocaleLowerCase() === L1WETHGatewayProxyAddress.toLocaleLowerCase() ) }, 3000, diff --git a/contracts/src/constants.ts b/contracts/src/constants.ts index 1ea360479..dbebd35a9 100644 --- a/contracts/src/constants.ts +++ b/contracts/src/constants.ts @@ -25,5 +25,4 @@ export const predeploys = { L2ReverseERC20Gateway: "0x5300000000000000000000000000000000000018", L2WithdrawLockERC20Gateway: "0x5300000000000000000000000000000000000019", L2USDCGateway: "0x5300000000000000000000000000000000000020", - L2USDC: "0x5300000000000000000000000000000000000021", }; diff --git a/contracts/src/types.ts b/contracts/src/types.ts index af52d3bc1..ea2577c89 100644 --- a/contracts/src/types.ts +++ b/contracts/src/types.ts @@ -9,7 +9,6 @@ const ContractFactoryName = { // tokens WETH: 'WrappedEther', MockERC20: 'MockERC20', - USDC:'FiatTokenV1', // messenger L1CrossDomainMessenger: 'L1CrossDomainMessenger', L1MessageQueueWithGasPriceOracle: 'L1MessageQueueWithGasPriceOracle', @@ -63,7 +62,6 @@ const ImplStorageName = { EmptyContract: 'Impl__EmptyContract', // tokens WETH: 'Impl__WETH', - USDC: 'Impl__USDC', // messenger L1CrossDomainMessengerStorageName: 'Impl__L1CrossDomainMessenger', L1MessageQueueWithGasPriceOracle: 'Impl__L1MessageQueueWithGasPriceOracle', diff --git a/go-ethereum b/go-ethereum index 2f006c41c..e58ac01d1 160000 --- a/go-ethereum +++ b/go-ethereum @@ -1 +1 @@ -Subproject commit 2f006c41c9116bc339601834cd30ab1b7b64576a +Subproject commit e58ac01d16da31d9ca25a5e7e0e09bfdd352e76b diff --git a/ops/l2-genesis/morph-chain-ops/genesis/config.go b/ops/l2-genesis/morph-chain-ops/genesis/config.go index af05c2b69..9102c780e 100644 --- a/ops/l2-genesis/morph-chain-ops/genesis/config.go +++ b/ops/l2-genesis/morph-chain-ops/genesis/config.go @@ -76,14 +76,10 @@ type DeployConfig struct { L1ERC721GatewayProxy common.Address `json:"l1ERC721GatewayProxy"` // L1ERC1155Gateway proxy address on L1 L1ERC1155GatewayProxy common.Address `json:"l1ERC1155GatewayProxy"` - // L1USDCGatewayProxy proxy address on L1 - L1USDCGatewayProxy common.Address `json:"l1USDCGatewayProxy"` // L1WETHGatewayProxy proxy address on L1 L1WETHGatewayProxy common.Address `json:"l1WETHGatewayProxy"` // L1WETH address on L1 L1WETH common.Address `json:"l1WETH"` - // L1USDC address on L1 - L1USDC common.Address `json:"l1USDC"` // L1WithdrawLockERC20GatewayProxy proxy address on L1 L1WithdrawLockERC20Gateway common.Address `json:"l1WithdrawLockERC20Gateway"` @@ -224,14 +220,6 @@ func (d *DeployConfig) GetDeployedAddresses(hh *hardhat.Hardhat) error { d.L1WETHGatewayProxy = deployment.Address } - if d.L1USDCGatewayProxy == (common.Address{}) { - deployment, err := hh.GetDeployment("Proxy__L1USDCGateway") - if err != nil { - return err - } - d.L1USDCGatewayProxy = deployment.Address - } - if d.L1WETH == (common.Address{}) { deployment, err := hh.GetDeployment("Impl__WETH") if err != nil { @@ -240,14 +228,6 @@ func (d *DeployConfig) GetDeployedAddresses(hh *hardhat.Hardhat) error { d.L1WETH = deployment.Address } - if d.L1USDC == (common.Address{}) { - deployment, err := hh.GetDeployment("Impl__USDC") - if err != nil { - return err - } - d.L1USDC = deployment.Address - } - if d.L1WithdrawLockERC20Gateway == (common.Address{}) { deployment, err := hh.GetDeployment("Proxy__L1WithdrawLockERC20Gateway") if err != nil { @@ -341,48 +321,24 @@ func NewL2ImmutableConfig(config *DeployConfig) (immutables.ImmutableConfig, *im if config.L1WETHGatewayProxy == (common.Address{}) { return immutable, nil, fmt.Errorf("L1WETHGatewayProxy cannot be address(0): %w", ErrInvalidImmutablesConfig) } - if config.L1USDCGatewayProxy == (common.Address{}) { - return immutable, nil, fmt.Errorf("L1USDCGatewayProxy cannot be address(0): %w", ErrInvalidImmutablesConfig) - } if config.L1WithdrawLockERC20Gateway == (common.Address{}) { return immutable, nil, fmt.Errorf("L1WithdrawLockERC20Gateway cannot be address(0): %w", ErrInvalidImmutablesConfig) } if config.L1WETH == (common.Address{}) { return immutable, nil, fmt.Errorf("L1WETH cannot be address(0): %w", ErrInvalidImmutablesConfig) } - if config.L1USDC == (common.Address{}) { - return immutable, nil, fmt.Errorf("L1USDC cannot be address(0): %w", ErrInvalidImmutablesConfig) - } immutable["L2Staking"] = immutables.ImmutableValues{ "OTHER_STAKING": config.L1StakingProxy, } immutable["L2WETHGateway"] = immutables.ImmutableValues{ "l1WETH": config.L1WETH, } - immutable["L2USDCGateway"] = immutables.ImmutableValues{ - "l1USDC": config.L1USDC, - } blsKeys := make([][]byte, len(config.L2StakingBlsKeys)) for i, v := range config.L2StakingBlsKeys { blsKeys[i] = v } imConfig := &immutables.InitConfig{ - // L2USDC - USDCTokenName: "Bridged USDC", - USDCTokenSymbol: "USDC.e", - USDCTokenCurrency: "USD", - USDCTokenDecimals: 18, - USDCMasterMinter: config.FinalSystemOwner, - USDCPauser: config.FinalSystemOwner, - USDCBlackLister: config.FinalSystemOwner, - USDCOwner: config.FinalSystemOwner, - // MorphToken - //MorphTokenOwner: config.MorphTokenOwner, - //MorphTokenName: config.MorphTokenName, - //MorphTokenSymbol: config.MorphTokenSymbol, - //MorphTokenInitialSupply: config.MorphTokenInitialSupply, - //MorphTokenDailyInflationRate: config.MorphTokenDailyInflationRate, // L2Staking L2StakingOwner: config.FinalSystemOwner, L2StakingSequencersMaxSize: config.L2StakingSequencerMaxSize, @@ -588,15 +544,6 @@ func NewL2StorageConfig(config *DeployConfig, baseFee *big.Int) (state.StorageCo "router": predeploys.L2GatewayRouterAddr, "messenger": predeploys.L2CrossDomainMessengerAddr, } - storage["L2USDCGateway"] = state.StorageValues{ - "_status": 1, // ReentrancyGuard - "_initialized": 1, - "_initializing": false, - "_owner": config.FinalSystemOwner, - "counterpart": config.L1USDCGatewayProxy, - "router": predeploys.L2GatewayRouterAddr, - "messenger": predeploys.L2CrossDomainMessengerAddr, - } storage["L2WithdrawLockERC20Gateway"] = state.StorageValues{ "_status": 1, // ReentrancyGuard "_initialized": 1, @@ -628,17 +575,6 @@ func NewL2StorageConfig(config *DeployConfig, baseFee *big.Int) (state.StorageCo "_owner": predeploys.L2StandardERC20GatewayAddr, "implementation": predeploys.MorphStandardERC20Addr, } - storage["L2USDC"] = state.StorageValues{ - "initialized": true, - "name": "Bridged USDC", - "symbol": "USDC.e", - "currency": "USD", - "decimals": 18, - "masterMinter": config.FinalSystemOwner, - "pauser": config.FinalSystemOwner, - "blacklister": config.FinalSystemOwner, - "_owner": config.FinalSystemOwner, - } return storage, nil } diff --git a/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go b/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go index 782b6d4fb..8ce0e6ae8 100644 --- a/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go +++ b/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go @@ -37,8 +37,6 @@ func Test_BuildL2DeveloperGenesis(t *testing.T) { L1ERC1155GatewayProxy: address1, L1WETHGatewayProxy: address1, L1WETH: address1, - L1USDC: address1, - L1USDCGatewayProxy: address1, L1WithdrawLockERC20Gateway: address1, GasPriceOracleOverhead: 1, diff --git a/ops/l2-genesis/morph-chain-ops/genesis/setters.go b/ops/l2-genesis/morph-chain-ops/genesis/setters.go index 202def9a9..a41393383 100644 --- a/ops/l2-genesis/morph-chain-ops/genesis/setters.go +++ b/ops/l2-genesis/morph-chain-ops/genesis/setters.go @@ -82,7 +82,7 @@ func SetImplementations(db vm.StateDB, storage state.StorageConfig, immutable im return err } } else { - if name == "MorphToken" { + if name == "MorphToken" || name == "L2USDCGateway" { continue } err = SetTouchable(db, name, *address, storage, deployResults, slotResults) diff --git a/ops/l2-genesis/morph-chain-ops/immutables/config.go b/ops/l2-genesis/morph-chain-ops/immutables/config.go index d487a18b6..58f8af849 100644 --- a/ops/l2-genesis/morph-chain-ops/immutables/config.go +++ b/ops/l2-genesis/morph-chain-ops/immutables/config.go @@ -5,23 +5,6 @@ import ( ) type InitConfig struct { - // USDC - USDCTokenName string `json:"USDCTokenName"` - USDCTokenSymbol string `json:"USDCTokenSymbol"` - USDCTokenCurrency string `json:"USDCTokenCurrency"` - USDCTokenDecimals uint8 `json:"USDCTokenDecimals"` - USDCMasterMinter common.Address `json:"USDCTMasterMinter"` - USDCPauser common.Address `json:"USDCPauser"` - USDCBlackLister common.Address `json:"USDCBlackLister"` - USDCOwner common.Address `json:"USDCOwner"` - - // MorphToken - MorphTokenOwner common.Address `json:"morphTokenOwner"` - MorphTokenName string `json:"morphTokenName"` - MorphTokenSymbol string `json:"morphTokenSymbol"` - MorphTokenInitialSupply uint64 `json:"morphTokenInitialSupply"` - MorphTokenDailyInflationRate uint64 `json:"morphTokenDailyInflationRate"` - // L2Staking L2StakingOwner common.Address `json:"l2StakingOwner"` L2StakingSequencersMaxSize uint64 `json:"l2StakingSequencersMaxSize"` diff --git a/ops/l2-genesis/morph-chain-ops/immutables/immutables.go b/ops/l2-genesis/morph-chain-ops/immutables/immutables.go index 3af1f0df1..00faba3b3 100644 --- a/ops/l2-genesis/morph-chain-ops/immutables/immutables.go +++ b/ops/l2-genesis/morph-chain-ops/immutables/immutables.go @@ -2,10 +2,8 @@ package immutables import ( "context" - "errors" "fmt" "math/big" - "strconv" "github.com/morph-l2/go-ethereum/accounts/abi/bind" "github.com/morph-l2/go-ethereum/accounts/abi/bind/backends" @@ -100,9 +98,6 @@ func BuildMorph(immutable ImmutableConfig, config *InitConfig) (DeploymentResult { Name: "L2ERC1155Gateway", }, - //{ - // Name: "MorphToken", - //}, { Name: "MorphStandardERC20", }, @@ -121,15 +116,6 @@ func BuildMorph(immutable ImmutableConfig, config *InitConfig) (DeploymentResult { Name: "L2WETH", }, - { - Name: "L2USDCGateway", - Args: []interface{}{ - immutable["L2USDCGateway"]["l1USDC"], - }, - }, - { - Name: "L2USDC", - }, { Name: "ProxyAdmin", }, @@ -204,73 +190,6 @@ func BuildL2(constructors []deployer.Constructor, config *InitConfig) (Deploymen if err != nil { return nil, nil, err } - //case "MorphToken": - // if config == nil || config.MorphTokenName == "" { - // continue - // } - // morphToken, err := bindings.NewMorphToken(dep.Address, backend) - // if err != nil { - // return nil, nil, err - // } - // initSupply, success := new(big.Int).SetString(strconv.FormatUint(config.MorphTokenInitialSupply, 10)+"000000000000000000", 10) - // if !success { - // return nil, nil, errors.New("MorphTokenInitialSupply convert failed") - // } - // lastTx, err = morphToken.Initialize( - // opts, - // config.MorphTokenName, - // config.MorphTokenSymbol, - // config.MorphTokenOwner, - // initSupply, - // new(big.Int).SetUint64(config.MorphTokenDailyInflationRate), - // ) - // if err != nil { - // return nil, nil, err - // } - case "L2USDC": - if config == nil || config.USDCTokenName == "" { - continue - } - usdc, err := bindings.NewFiatTokenV1(dep.Address, backend) - if err != nil { - return nil, nil, err - } - lastTx, err = usdc.Initialize( - opts, - config.USDCTokenName, - config.USDCTokenSymbol, - config.USDCTokenCurrency, - config.USDCTokenDecimals, - opts.From, - config.USDCPauser, - config.USDCBlackLister, - opts.From, - ) - if err != nil { - return nil, nil, err - } - mintSupply, success := new(big.Int).SetString(strconv.FormatUint(1000000000, 10)+"000000000000000000", 10) - if !success { - return nil, nil, errors.New("USDC token mint Supply convert failed") - } - _, err = usdc.ConfigureMinter(opts, predeploys.L2USDCGatewayAddr, mintSupply) - if err != nil { - return nil, nil, err - } - _, err = usdc.UpdateMasterMinter(opts, config.USDCMasterMinter) - if err != nil { - return nil, nil, err - } - processTx, err := usdc.TransferOwnership(opts, config.USDCOwner) - if err != nil { - return nil, nil, err - } - backend.Commit() - if processTx != nil { - if _, err = bind.WaitMined(context.Background(), backend, processTx); err != nil { - return nil, nil, err - } - } default: } } @@ -334,8 +253,6 @@ func l2Deployer(backend *backends.SimulatedBackend, opts *bind.TransactOpts, dep _, tx, _, err = bindings.DeployL2ToL1MessagePasser(opts, backend) case "L2TxFeeVault": _, tx, _, err = bindings.DeployL2TxFeeVault(opts, backend, common.BigToAddress(common.Big1), common.BigToAddress(common.Big1), common.Big0) - //case "MorphToken": - // _, tx, _, err = bindings.DeployMorphToken(opts, backend) case "MorphStandardERC20": _, tx, _, err = bindings.DeployMorphStandardERC20(opts, backend) case "MorphStandardERC20Factory": @@ -362,14 +279,6 @@ func l2Deployer(backend *backends.SimulatedBackend, opts *bind.TransactOpts, dep _, tx, _, err = bindings.DeployL2WETHGateway(opts, backend, predeploys.L2WETHAddr, l1weth) case "L2WithdrawLockERC20Gateway": _, tx, _, err = bindings.DeployL2WithdrawLockERC20Gateway(opts, backend) - case "L2USDCGateway": - l1usdc, ok := deployment.Args[0].(common.Address) - if !ok { - return nil, fmt.Errorf("invalid type for l1usdc") - } - _, tx, _, err = bindings.DeployL2USDCGateway(opts, backend, l1usdc, predeploys.L2USDCAddr) - case "L2USDC": - _, tx, _, err = bindings.DeployFiatTokenV1(opts, backend) case "L2WETH": _, tx, _, err = bindings.DeployWrappedEther(opts, backend) case "ProxyAdmin": From 465b9cc67c5dc8d8ff642e9135e331e0eabff447 Mon Sep 17 00:00:00 2001 From: vincent Date: Fri, 1 Nov 2024 12:57:55 +0800 Subject: [PATCH 03/33] Update bindings (#623) --- ...multipleversionrollupverifier_deployed.hex | 2 +- bindings/bin/rollup_deployed.hex | 2 +- .../bindings/multipleversionrollupverifier.go | 4 +-- .../multipleversionrollupverifier_more.go | 2 +- bindings/bindings/rollup.go | 35 +++++++++++++++++-- bindings/bindings/rollup_more.go | 4 +-- 6 files changed, 40 insertions(+), 9 deletions(-) diff --git a/bindings/bin/multipleversionrollupverifier_deployed.hex b/bindings/bin/multipleversionrollupverifier_deployed.hex index e0f157cb2..d88143540 100644 --- a/bindings/bin/multipleversionrollupverifier_deployed.hex +++ b/bindings/bin/multipleversionrollupverifier_deployed.hex @@ -1 +1 @@ -0x608060405234801561000f575f80fd5b50600436106100c4575f3560e01c8063955123061161007d578063c7065b6a11610058578063c7065b6a146101da578063cb23bcb514610227578063f2fde38b14610247575f80fd5b8063955123061461016c578063bd98b2b01461017f578063c4d66de8146101c7575f80fd5b80635027ad2e116100ad5780635027ad2e1461011a578063715018a6146101475780638da5cb5b1461014f575f80fd5b806328aee03f146100c85780632c09a84814610105575b5f80fd5b6100db6100d6366004610a50565b61025a565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610118610113366004610a70565b610397565b005b610139610128366004610af0565b5f9081526002602052604090205490565b6040519081526020016100fc565b61011861042f565b5f5473ffffffffffffffffffffffffffffffffffffffff166100db565b61011861017a366004610b2f565b610442565b61019261018d366004610a50565b610779565b6040805167ffffffffffffffff909316835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100fc565b6101186101d5366004610b76565b6107d1565b6101926101e8366004610af0565b60036020525f908152604090205467ffffffffffffffff81169068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1682565b6001546100db9073ffffffffffffffffffffffffffffffffffffffff1681565b610118610255366004610b76565b6108a5565b5f82815260036020908152604080832081518083019092525467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529083101561038c575f84815260026020526040902054805b8015610389575f86815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830190811061030a5761030a610b96565b5f9182526020918290206040805180820190915291015467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529350851015610389577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016102c3565b50505b602001519392505050565b5f6103a2868661025a565b6040517fc8bd017600000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff82169063c8bd0176906103fb90879087908790600401610bc3565b5f6040518083038186803b158015610411575f80fd5b505afa158015610423573d5f803e3d5ffd5b50505050505050505050565b61043761095c565b6104405f6109dc565b565b61044a61095c565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663059def616040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d89190610c18565b8267ffffffffffffffff161161051a576040517f9a4ff10400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8381526003602090815260409182902082518084019093525467ffffffffffffffff8082168085526801000000000000000090920473ffffffffffffffffffffffffffffffffffffffff169284019290925290841610156105a8576040517fb0d8c70400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82166105f5576040517fa7f9319d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805167ffffffffffffffff808516911610156106ba57602081015173ffffffffffffffffffffffffffffffffffffffff16156106ac575f84815260026020908152604082208054600181018255908352918190208351920180549184015173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090921667ffffffffffffffff909316929092171790555b67ffffffffffffffff831681525b73ffffffffffffffffffffffffffffffffffffffff82811660208381018281525f8881526003835260409081902086518154935190961668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090931667ffffffffffffffff96871617929092179091558051888152938716918401919091528201527f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b309060600160405180910390a150505050565b6002602052815f5260405f208181548110610792575f80fd5b5f9182526020909120015467ffffffffffffffff8116925068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16905082565b6107d961095c565b60015473ffffffffffffffffffffffffffffffffffffffff161561085e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f696e697469616c697a656400000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108ad61095c565b73ffffffffffffffffffffffffffffffffffffffff8116610950576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610855565b610959816109dc565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610855565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f8060408385031215610a61575f80fd5b50508035926020909101359150565b5f805f805f60808688031215610a84575f80fd5b8535945060208601359350604086013567ffffffffffffffff80821115610aa9575f80fd5b818801915088601f830112610abc575f80fd5b813581811115610aca575f80fd5b896020828501011115610adb575f80fd5b96999598505060200195606001359392505050565b5f60208284031215610b00575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b2a575f80fd5b919050565b5f805f60608486031215610b41575f80fd5b83359250602084013567ffffffffffffffff81168114610b5f575f80fd5b9150610b6d60408501610b07565b90509250925092565b5f60208284031215610b86575f80fd5b610b8f82610b07565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b60408152826040820152828460608301375f606084830101525f60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601168301019050826020830152949350505050565b5f60208284031215610c28575f80fd5b505191905056fea164736f6c6343000818000a +0x608060405234801561000f575f80fd5b50600436106100c4575f3560e01c8063955123061161007d578063c7065b6a11610058578063c7065b6a146101da578063cb23bcb514610227578063f2fde38b14610247575f80fd5b8063955123061461016c578063bd98b2b01461017f578063c4d66de8146101c7575f80fd5b80635027ad2e116100ad5780635027ad2e1461011a578063715018a6146101475780638da5cb5b1461014f575f80fd5b806328aee03f146100c85780632c09a84814610105575b5f80fd5b6100db6100d6366004610a90565b61025a565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610118610113366004610ab0565b6103d7565b005b610139610128366004610b30565b5f9081526002602052604090205490565b6040519081526020016100fc565b61011861046f565b5f5473ffffffffffffffffffffffffffffffffffffffff166100db565b61011861017a366004610b6f565b610482565b61019261018d366004610a90565b6107b9565b6040805167ffffffffffffffff909316835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100fc565b6101186101d5366004610bb6565b610811565b6101926101e8366004610b30565b60036020525f908152604090205467ffffffffffffffff81169068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1682565b6001546100db9073ffffffffffffffffffffffffffffffffffffffff1681565b610118610255366004610bb6565b6108e5565b5f82815260036020908152604080832081518083019092525467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff1692820192909252908310156103cc575f84815260026020526040812054805b8015610391575f87815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830190811061030a5761030a610bd6565b5f9182526020918290206040805180820190915291015467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529450861061036a5760019250610391565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016102c3565b50816103c9576040517f70f6c8ff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505b602001519392505050565b5f6103e2868661025a565b6040517fc8bd017600000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff82169063c8bd01769061043b90879087908790600401610c03565b5f6040518083038186803b158015610451575f80fd5b505afa158015610463573d5f803e3d5ffd5b50505050505050505050565b61047761099c565b6104805f610a1c565b565b61048a61099c565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663059def616040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105189190610c58565b8267ffffffffffffffff161161055a576040517f9a4ff10400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8381526003602090815260409182902082518084019093525467ffffffffffffffff8082168085526801000000000000000090920473ffffffffffffffffffffffffffffffffffffffff169284019290925290841610156105e8576040517fb0d8c70400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216610635576040517fa7f9319d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805167ffffffffffffffff808516911610156106fa57602081015173ffffffffffffffffffffffffffffffffffffffff16156106ec575f84815260026020908152604082208054600181018255908352918190208351920180549184015173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090921667ffffffffffffffff909316929092171790555b67ffffffffffffffff831681525b73ffffffffffffffffffffffffffffffffffffffff82811660208381018281525f8881526003835260409081902086518154935190961668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090931667ffffffffffffffff96871617929092179091558051888152938716918401919091528201527f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b309060600160405180910390a150505050565b6002602052815f5260405f2081815481106107d2575f80fd5b5f9182526020909120015467ffffffffffffffff8116925068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16905082565b61081961099c565b60015473ffffffffffffffffffffffffffffffffffffffff161561089e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f696e697469616c697a656400000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108ed61099c565b73ffffffffffffffffffffffffffffffffffffffff8116610990576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610895565b61099981610a1c565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610895565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f8060408385031215610aa1575f80fd5b50508035926020909101359150565b5f805f805f60808688031215610ac4575f80fd5b8535945060208601359350604086013567ffffffffffffffff80821115610ae9575f80fd5b818801915088601f830112610afc575f80fd5b813581811115610b0a575f80fd5b896020828501011115610b1b575f80fd5b96999598505060200195606001359392505050565b5f60208284031215610b40575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b6a575f80fd5b919050565b5f805f60608486031215610b81575f80fd5b83359250602084013567ffffffffffffffff81168114610b9f575f80fd5b9150610bad60408501610b47565b90509250925092565b5f60208284031215610bc6575f80fd5b610bcf82610b47565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b60408152826040820152828460608301375f606084830101525f60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601168301019050826020830152949350505050565b5f60208284031215610c68575f80fd5b505191905056fea164736f6c6343000818000a diff --git a/bindings/bin/rollup_deployed.hex b/bindings/bin/rollup_deployed.hex index aee01dec0..24f594bc7 100644 --- a/bindings/bin/rollup_deployed.hex +++ b/bindings/bin/rollup_deployed.hex @@ -1 +1 @@ -0x6080604052600436106102f0575f3560e01c80638da5cb5b11610186578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610951578063f2fde38b14610970578063fb1e8b041461098f575f80fd5b8063ddd8a3dc146108fe578063de8b30351461091d578063dff7827e1461093c575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108b7578063d279c191146108cc578063d63b3549146108eb575f80fd5b8063b3e0a50914610866578063bedb86fb14610885578063cd4edc69146108a4575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610813578063b348442514610828578063b35dac4e14610847575f80fd5b8063a479265d146107b4578063a4f209b0146107c9578063abc8d68d146107e8575f80fd5b8063910129d41161016c578063910129d41461073657806397fc007c14610767578063a415d8dc14610786575f80fd5b80638da5cb5b146106695780638f1d377614610686575f80fd5b80632571098d116102465780635ef7a94a116101f1578063715018a6116101cc578063715018a61461061d578063728cdbca1461063157806388b1ea0914610650575f80fd5b80635ef7a94a146105525780635f77cf1d146105b25780636c578c1d146105fe575f80fd5b80633e001b66116102215780633e001b661461050757806357e0af6c1461051c5780635c975abb1461053b575f80fd5b80632571098d146104865780632b7ac3f3146104b15780633b70c18a146104e8575f80fd5b8063121dcd50116102a657806318af3b2b1161028157806318af3b2b1461040c57806321e2f9e01461043c5780632362f03e1461045b575f80fd5b8063121dcd50146103c357806313361101146103d857806318463fb0146103f7575f80fd5b80630ceb6780116102d65780630ceb67801461036157806310d4458314610382578063116a1f42146103a1575f80fd5b806304d77215146102fb578063059def611461033e575f80fd5b366102f757005b5f80fd5b348015610306575f80fd5b50610329610315366004613f76565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610349575f80fd5b50610353609d5481565b604051908152602001610335565b34801561036c575f80fd5b5061038061037b366004613fa8565b6109a4565b005b34801561038d575f80fd5b5061038061039c366004614006565b610a76565b3480156103ac575f80fd5b506103296103bb366004613f76565b609d54101590565b3480156103ce575f80fd5b50610353609e5481565b3480156103e3575f80fd5b506103806103f236600461404e565b610dcf565b348015610402575f80fd5b5061035360a75481565b348015610417575f80fd5b50610329610426366004613f76565b5f90815260a26020526040902060010154421090565b348015610447575f80fd5b50610329610456366004613f76565b6112a4565b348015610466575f80fd5b50610353610475366004613f76565b60a16020525f908152604090205481565b348015610491575f80fd5b506103536104a0366004613f76565b60a06020525f908152604090205481565b3480156104bc575f80fd5b50609c546104d0906001600160a01b031681565b6040516001600160a01b039091168152602001610335565b3480156104f3575f80fd5b50609b546104d0906001600160a01b031681565b348015610512575f80fd5b5061035360aa5481565b348015610527575f80fd5b50610380610536366004613f76565b6112d2565b348015610546575f80fd5b5060655460ff16610329565b34801561055d575f80fd5b5061059261056c366004613f76565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610335565b3480156105bd575f80fd5b506105e57f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610335565b348015610609575f80fd5b50610380610618366004613fa8565b61137d565b348015610628575f80fd5b5061038061143a565b34801561063c575f80fd5b5061038061064b36600461408d565b61144d565b34801561065b575f80fd5b5060a6546103299060ff1681565b348015610674575f80fd5b506033546001600160a01b03166104d0565b348015610691575f80fd5b506106f26106a0366004613f76565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610335565b348015610741575f80fd5b50610329610750366004613f76565b5f90815260a4602052604090206003015460ff1690565b348015610772575f80fd5b50610380610781366004613fa8565b611790565b348015610791575f80fd5b506103296107a0366004613fa8565b609f6020525f908152604090205460ff1681565b3480156107bf575f80fd5b5061035360995481565b3480156107d4575f80fd5b506103806107e3366004613f76565b611873565b3480156107f3575f80fd5b50610353610802366004613fa8565b60a56020525f908152604090205481565b34801561081e575f80fd5b5061035360a85481565b348015610833575f80fd5b506103806108423660046140e8565b611923565b348015610852575f80fd5b50610380610861366004613fa8565b611b68565b348015610871575f80fd5b5061038061088036600461404e565b611bc1565b348015610890575f80fd5b5061038061089f36600461415c565b611eb9565b6103806108b2366004614177565b612014565b3480156108c2575f80fd5b5061035360985481565b3480156108d7575f80fd5b506103806108e6366004613fa8565b6125e0565b6103806108f93660046141ad565b61269f565b348015610909575f80fd5b506097546104d0906001600160a01b031681565b348015610928575f80fd5b50610329610937366004613f76565b612f59565b348015610947575f80fd5b50610353609a5481565b34801561095c575f80fd5b5061038061096b366004613f76565b612fa3565b34801561097b575f80fd5b5061038061098a366004613fa8565b613046565b34801561099a575f80fd5b5061035360a95481565b6109ac6130d3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a195760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610a7e6130d3565b5f8111610acd5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a10565b5f80610ad9858561312d565b915091505f610aec836001015160c01c90565b5f81815260a160205260409020549091508214610b4b5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b5f60a181610b598785614247565b81526020019081526020015f205414610bd95760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a10565b609d548111610c505760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a10565b610c5b60018261425a565b609e555b8315610dc757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610ca781612f59565b15610d02575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610cf2908490614247565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610d7f575060a85481145b15610d89575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c5f575b505050505050565b60a85415610e1f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b610e27613148565b5f80610e33848461312d565b915091505f610e46836001015160c01c90565b5f81815260a160205260409020549091508214610ea55760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b610eae816112a4565b610efa5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a10565b610f0381612f59565b15610f505760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a10565b5f81815260a4602052604090206003015460ff1615610fb15760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a10565b5f81815260a260205260409020600101544210156110115760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a10565b605983015160a05f61102460018561425a565b81526020019081526020015f20541461107f5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a10565b5f81815260a06020526040902054156110da5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a10565b80609d546001011461112e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a10565b609d819055600160a35f611143866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a0602052604090205561119060f98401601185015160c01c600986015160c01c61319b565b60a25f61119e60018461425a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560a491906111d7908461425a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611280866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a26020526040812054158015906112cc57505f82815260a1602052604090205415155b92915050565b6112da6130d3565b5f811180156112eb57506099548114155b6113375760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a10565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113856130d3565b6001600160a01b0381165f908152609f602052604090205460ff166113ec5760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a10565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610a6b565b6114426130d3565b61144b5f613264565b565b5f54610100900460ff161580801561146b57505f54600160ff909116105b806114845750303b15801561148457505f5460ff166001145b6114f65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a10565b5f805460ff191660011790558015611534575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061155157506001600160a01b038516155b15611588576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166115de5760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a10565b6115e66132cd565b6115ee613351565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611787575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117986130d3565b6001600160a01b038116158015906117be5750609c546001600160a01b03828116911614155b61180a5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a10565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61187b6130d3565b5f8111801561188b575060648111155b8015611899575060a9548114155b6118e55760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a10565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611371565b60a854156119735760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b61197b613148565b5f80611987868661312d565b915091505f61199a836001015160c01c90565b5f81815260a1602052604090205490915082146119f95760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b611a0281612f59565b611a4e5760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a10565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611aa791614247565b11611b1d575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b18918391906133d5565b611787565b611b28838686613531565b61178781336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506136e4565b611b706130d3565b60aa80545f909155611b8282826137b0565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611371565b611bc96130d3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c405760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a10565b5f80611c4c848461312d565b915091505f611c5f836001015160c01c90565b90505f611c6d846079015190565b905080611cbc5760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a10565b600984015160c01c15611d115760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a10565b5f611d1d856019015190565b03611d6a5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a10565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611d96856039015190565b14611de35760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a10565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611ec16130d3565b8015611fe257611ecf61385b565b60a65460ff1615611fa15760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f23908490614247565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b611fea6138b5565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33611fc4565b50565b335f908152609f602052604090205460ff166120725760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a10565b60a854156120c25760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b6120ca613148565b60a65460ff161561211d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a10565b8167ffffffffffffffff16609d54106121785760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a10565b67ffffffffffffffff82165f90815260a1602052604090205481146121df5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b6121f28267ffffffffffffffff166112a4565b61223e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a10565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156122b95760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a10565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123495760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a10565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612399573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123bd919061426d565b34101561240c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a10565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161255e91815260200190565b60405180910390a35f609d5460016125769190614247565b90505b609e5481116125ce578267ffffffffffffffff1681146125bc576099545f82815260a26020526040812060010180549091906125b6908490614247565b90915550505b806125c681614284565b915050612579565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361263f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a10565b335f90815260a5602052604081205561265882826137b0565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161269391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561270b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061272f91906142bb565b61277b5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a10565b60a854156127cb5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b6127d3613148565b6127e060208301836142d6565b60ff16156128305760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a10565b5f61283e60408401846142f6565b9150508061288e5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a10565b60808301356128df5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a10565b60a08301356129305760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a10565b5f8061294761294260208701876142f6565b61312d565b915091505f61295a836001015160c01c90565b5f81815260a1602052604090205490915082146129b95760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a10565b5f60a1816129c8846001614247565b81526020019081526020015f205414612a235760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a10565b609e548114612a745760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a10565b5f612a83846011015160c01c90565b90505f8080612ae2612a9860408c018c6142f6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612add905060608f018f6142f6565b6138ee565b948501949384019392509050612afb60608b018b6142f6565b905061010060ff85010460200214612b555760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a10565b600194909401935f804915612b6b575f49612b8d565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612b9d60608d018d6142f6565b612ba9915060f9614247565b90506040519850602081028901604052612bd7898d5f016020810190612bcf91906142d6565b60ff16613a6f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612c4489612c2560208e018e6142f6565b604051612c33929190614357565b604051809103902060b99190910152565b60d98901889052612c6189612c5c60608f018f6142f6565b613a76565b603989018290528089205f88815260a1602052604081209190915560a65460ff1615612cb65760a7545f90815260a460205260409020600201546099544291612ca991614247565b612cb3919061425a565b90505b60405180608001604052804281526020018260985442612cd69190614247565b612ce09190614247565b8152602001612d318f8060400190612cf891906142f6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613a8292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612da5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612dc9919061426d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612e3190612e2b908f018f6142f6565b5f613ad9565b5f8e8060400190612e4291906142f6565b6040518663ffffffff1660e01b8152600401612e629594939291906143ad565b602060405180830381865afa158015612e7d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ea191906142bb565b612f135760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a10565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906112cc5750505f90815260a46020526040902060030154610100900460ff161590565b612fab6130d3565b5f81118015612fbc57506098548114155b6130085760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a10565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611371565b61304e6130d3565b6001600160a01b0381166130ca5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a10565b61201181613264565b6033546001600160a01b0316331461144b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a10565b5f805f61313a8585613b2d565b812090969095509350505050565b60655460ff161561144b5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a10565b805f036131a757505050565b8082035f805b83811015610dc7576101008185038111156131c757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561323a575f80fd5b505af115801561324c573d5f803e3d5ffd5b505050506101008401935050610100810190506131ad565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166133495760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b61144b613c04565b5f54610100900460ff166133cd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b61144b613c8c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613459573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061347d919061426d565b5f86815260a4602052604090206001015490915061349c908290614247565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906134db908490614247565b90915550506040516134ee908490614420565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061357e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a10565b5f61358d846001015160c01c90565b90505f61359b856039015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006135ca876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861368c885160f81c90565b858888866040518663ffffffff1660e01b81526004016136b095949392919061444c565b5f6040518083038186803b1580156136c6575f80fd5b505afa1580156136d8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613708908461447d565b6137129190614494565b905061371e818361425a565b60aa5f82825461372e9190614247565b90915550506001600160a01b0384165f90815260a560205260408120805483929061375a908490614247565b909155505060405161376d908490614420565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613857575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146137ff576040519150601f19603f3d011682016040523d82523d5f602084013e613804565b606091505b50509050806138555760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a10565b505b5050565b613863613148565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586138983390565b6040516001600160a01b03909116815260200160405180910390a1565b6138bd613d11565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613898565b60405185515f9182916020890191908190849061390c908590613d63565b90506002840193505f5b8181101561399057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613966603c8361447d565b6139709087614247565b90505f61398182603a015160f01c90565b97909701965050600101613916565b506020850282016040525b8015613a5b575f6139b085603a015160f01c90565b90506139c083828d8d8d8d613df8565b92505f6139d1866038015160f01c90565b905081811015613a235760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a10565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0161399b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613a9d828651613d63565b90505f5b613aac60018361425a565b811015613ac257603c9390930192600101613aa1565b505f613acf845160c01c90565b9695505050505050565b60605f80808080613aec888a018a6145b9565b9550955095509550955050818710613b0a579450613b269350505050565b838710613b1e578295505050505050613b26565b509293505050505b9392505050565b5f8160f9811015613b805760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a10565b6040519150808483378082016040525f613b9e836009015160c01c90565b905061010060ff82010460200260f9018214613bfc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a10565b509250929050565b5f54610100900460ff16613c805760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b6065805460ff19169055565b5f54610100900460ff16613d085760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b61144b33613264565b60655460ff1661144b5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a10565b5f613d6f835160f01c90565b9050805f03613daa576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613db5603c8261447d565b613dc0906002614247565b82146112cc576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613e07575085613acf565b609b546001600160a01b03165f80805b89811015613eed5760ff89169150600889901c811580613e35575082155b15613e44578060200288013593505b600184841c165f03613edc576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613eae573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ed2919061426d565b8d52506020909b019a5b506001988901989788019701613e17565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615613f685760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a10565b509798975050505050505050565b5f60208284031215613f86575f80fd5b5035919050565b80356001600160a01b0381168114613fa3575f80fd5b919050565b5f60208284031215613fb8575f80fd5b613b2682613f8d565b5f8083601f840112613fd1575f80fd5b50813567ffffffffffffffff811115613fe8575f80fd5b602083019150836020828501011115613fff575f80fd5b9250929050565b5f805f60408486031215614018575f80fd5b833567ffffffffffffffff81111561402e575f80fd5b61403a86828701613fc1565b909790965060209590950135949350505050565b5f806020838503121561405f575f80fd5b823567ffffffffffffffff811115614075575f80fd5b61408185828601613fc1565b90969095509350505050565b5f805f805f8060c087890312156140a2575f80fd5b6140ab87613f8d565b95506140b960208801613f8d565b94506140c760408801613f8d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156140fb575f80fd5b843567ffffffffffffffff80821115614112575f80fd5b61411e88838901613fc1565b90965094506020870135915080821115614136575f80fd5b5061414387828801613fc1565b95989497509550505050565b8015158114612011575f80fd5b5f6020828403121561416c575f80fd5b8135613b268161414f565b5f8060408385031215614188575f80fd5b823567ffffffffffffffff8116811461419f575f80fd5b946020939093013593505050565b5f80604083850312156141be575f80fd5b823567ffffffffffffffff808211156141d5575f80fd5b9084019060e082870312156141e8575f80fd5b909250602084013590808211156141fd575f80fd5b5083016060818603121561420f575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808201808211156112cc576112cc61421a565b818103818111156112cc576112cc61421a565b5f6020828403121561427d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036142b4576142b461421a565b5060010190565b5f602082840312156142cb575f80fd5b8151613b268161414f565b5f602082840312156142e6575f80fd5b813560ff81168114613b26575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614329575f80fd5b83018035915067ffffffffffffffff821115614343575f80fd5b602001915036819003821315613fff575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156143f75784516001600160a01b0316835293830193918301916001016143d2565b50508760408601528481036060860152614412818789614366565b9a9950505050505050505050565b5f82515f5b8181101561443f5760208186018101518583015201614425565b505f920191825250919050565b858152846020820152608060408201525f61446b608083018587614366565b90508260608301529695505050505050565b80820281158282048414176112cc576112cc61421a565b5f826144c7577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614508575f80fd5b8135602067ffffffffffffffff80831115614525576145256144cc565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614568576145686144cc565b6040529384526020818701810194908101925087851115614587575f80fd5b6020870191505b848210156145ae5761459f82613f8d565b8352918301919083019061458e565b979650505050505050565b5f805f805f8060c087890312156145ce575f80fd5b86359550602087013567ffffffffffffffff808211156145ec575f80fd5b6145f88a838b016144f9565b9650604089013595506060890135915080821115614614575f80fd5b6146208a838b016144f9565b94506080890135935060a089013591508082111561463c575f80fd5b5061464989828a016144f9565b915050929550929550929556fea164736f6c6343000818000a +0x6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610987578063f2fde38b146109a6578063fb1e8b04146109c5575f80fd5b8063ddd8a3dc14610934578063de8b303514610953578063dff7827e14610972575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108ed578063d279c19114610902578063d63b354914610921575f80fd5b8063b3e0a5091461089c578063bedb86fb146108bb578063cd4edc69146108da575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610849578063b34844251461085e578063b35dac4e1461087d575f80fd5b8063a479265d146107ea578063a4f209b0146107ff578063abc8d68d1461081e575f80fd5b8063910129d41161016c578063910129d41461076c57806397fc007c1461079d578063a415d8dc146107bc575f80fd5b806388b1ea09146106865780638da5cb5b1461069f5780638f1d3776146106bc575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d14610634578063715018a614610653578063728cdbca14610667575f80fd5b80635ef7a94a1461055d5780635f77cf1d146105bd57806368589dfa14610609575f80fd5b80633e001b661161022c5780633e001b661461051257806357e0af6c146105275780635c975abb14610546575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a146104f3575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614046565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614078565b6109da565b005b348015610398575f80fd5b5061038b6103a73660046140d6565b610aac565b3480156103b7575f80fd5b506103346103c6366004614046565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd36600461411e565b610e05565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614046565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614046565b6112fa565b348015610471575f80fd5b5061035e610480366004614046565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614046565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104db906001600160a01b031681565b6040516001600160a01b039091168152602001610340565b3480156104fe575f80fd5b50609b546104db906001600160a01b031681565b34801561051d575f80fd5b5061035e60aa5481565b348015610532575f80fd5b5061038b610541366004614046565b611328565b348015610551575f80fd5b5060655460ff16610334565b348015610568575f80fd5b5061059d610577366004614046565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105c8575f80fd5b506105f07f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b348015610614575f80fd5b5061035e610623366004614046565b60ab6020525f908152604090205481565b34801561063f575f80fd5b5061038b61064e366004614078565b6113d3565b34801561065e575f80fd5b5061038b611490565b348015610672575f80fd5b5061038b61068136600461415d565b6114a3565b348015610691575f80fd5b5060a6546103349060ff1681565b3480156106aa575f80fd5b506033546001600160a01b03166104db565b3480156106c7575f80fd5b506107286106d6366004614046565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b348015610777575f80fd5b50610334610786366004614046565b5f90815260a4602052604090206003015460ff1690565b3480156107a8575f80fd5b5061038b6107b7366004614078565b6117e6565b3480156107c7575f80fd5b506103346107d6366004614078565b609f6020525f908152604090205460ff1681565b3480156107f5575f80fd5b5061035e60995481565b34801561080a575f80fd5b5061038b610819366004614046565b6118c9565b348015610829575f80fd5b5061035e610838366004614078565b60a56020525f908152604090205481565b348015610854575f80fd5b5061035e60a85481565b348015610869575f80fd5b5061038b6108783660046141b8565b611979565b348015610888575f80fd5b5061038b610897366004614078565b611bbe565b3480156108a7575f80fd5b5061038b6108b636600461411e565b611c17565b3480156108c6575f80fd5b5061038b6108d536600461422c565b611f19565b61038b6108e8366004614247565b612074565b3480156108f8575f80fd5b5061035e60985481565b34801561090d575f80fd5b5061038b61091c366004614078565b612640565b61038b61092f36600461427d565b6126ff565b34801561093f575f80fd5b506097546104db906001600160a01b031681565b34801561095e575f80fd5b5061033461096d366004614046565b613029565b34801561097d575f80fd5b5061035e609a5481565b348015610992575f80fd5b5061038b6109a1366004614046565b613073565b3480156109b1575f80fd5b5061038b6109c0366004614078565b613116565b3480156109d0575f80fd5b5061035e60a95481565b6109e26131a3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a4f5760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ab46131a3565b5f8111610b035760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a46565b5f80610b0f85856131fd565b915091505f610b22836001015160c01c90565b5f81815260a160205260409020549091508214610b815760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b5f60a181610b8f8785614317565b81526020019081526020015f205414610c0f5760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a46565b609d548111610c865760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b610c9160018261432a565b609e555b8315610dfd57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610cdd81613029565b15610d38575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d28908490614317565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610db5575060a85481145b15610dbf575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c95575b505050505050565b60a85415610e555760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b610e5d613218565b5f80610e6984846131fd565b915091505f610e7c836001015160c01c90565b5f81815260a160205260409020549091508214610edb5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b610ee4816112fa565b610f305760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b610f3981613029565b15610f865760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003015460ff1615610fe75760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a46565b5f81815260a260205260409020600101544210156110475760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a46565b605983015160a05f61105a60018561432a565b81526020019081526020015f2054146110b55760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f81815260a06020526040902054156111105760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a46565b80609d54600101146111645760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b609d819055600160a35f611179866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111c660f98401601185015160c01c600986015160c01c61326b565b60a25f6111d460018461432a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061120d908461432a565b81526020019081526020015f205f905560a45f60018361122d919061432a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d6112d6866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061132257505f82815260a1602052604090205415155b92915050565b6113306131a3565b5f8111801561134157506099548114155b61138d5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a46565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113db6131a3565b6001600160a01b0381165f908152609f602052604090205460ff166114425760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a46565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610aa1565b6114986131a3565b6114a15f613334565b565b5f54610100900460ff16158080156114c157505f54600160ff909116105b806114da5750303b1580156114da57505f5460ff166001145b61154c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a46565b5f805460ff19166001179055801561158a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806115a757506001600160a01b038516155b156115de576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166116345760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a46565b61163c61339d565b611644613421565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156117dd575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117ee6131a3565b6001600160a01b038116158015906118145750609c546001600160a01b03828116911614155b6118605760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a46565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6118d16131a3565b5f811180156118e1575060648111155b80156118ef575060a9548114155b61193b5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a46565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113c7565b60a854156119c95760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b6119d1613218565b5f806119dd86866131fd565b915091505f6119f0836001015160c01c90565b5f81815260a160205260409020549091508214611a4f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b611a5881613029565b611aa45760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611afd91614317565b11611b73575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b6e918391906134a5565b6117dd565b611b7e838686613601565b6117dd81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506137b4565b611bc66131a3565b60aa80545f909155611bd88282613880565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113c7565b611c1f6131a3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c965760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a46565b5f80611ca284846131fd565b915091505f611cb5836001015160c01c90565b90505f611cc3846079015190565b905080611d125760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a46565b600984015160c01c15611d675760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a46565b5f611d73856019015190565b03611dc05760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a46565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611dec856039015190565b14611e395760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a46565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611f216131a3565b801561204257611f2f61392b565b60a65460ff16156120015760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f83908490614317565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b61204a613985565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612024565b50565b335f908152609f602052604090205460ff166120d25760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a46565b60a854156121225760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b61212a613218565b60a65460ff161561217d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a46565b8167ffffffffffffffff16609d54106121d85760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a16020526040902054811461223f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b6122528267ffffffffffffffff166112fa565b61229e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156123195760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123a95760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a46565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241d919061433d565b34101561246c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516125be91815260200190565b60405180910390a35f609d5460016125d69190614317565b90505b609e54811161262e578267ffffffffffffffff16811461261c576099545f82815260a2602052604081206001018054909190612616908490614317565b90915550505b8061262681614354565b9150506125d9565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361269f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a46565b335f90815260a560205260408120556126b88282613880565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516126f391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561276b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061278f919061438b565b6127db5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a46565b60a8541561282b5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b612833613218565b61284060208301836143a6565b60ff16156128905760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a46565b5f61289e60408401846143c6565b915050806128ee5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a46565b608083013561293f5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a46565b60a08301356129905760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a46565b5f806129a76129a260208701876143c6565b6131fd565b915091505f6129ba836001015160c01c90565b90505f60a1816129cb846001614317565b81526020019081526020015f205414612a265760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a46565b609e548114612a775760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b5f81815260a160205260409020548214612ad35760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a46565b5f81815260ab6020526040902054608087013514612b335760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f612b42846011015160c01c90565b90505f8080612ba1612b5760408c018c6143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612b9c905060608f018f6143c6565b6139be565b948501949384019392509050612bba60608b018b6143c6565b905061010060ff85010460200214612c145760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b600194909401935f804915612c2a575f49612c4c565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612c5c60608d018d6143c6565b612c68915060f9614317565b90506040519850602081028901604052612c96898d5f016020810190612c8e91906143a6565b60ff16613b3f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612d0389612ce460208e018e6143c6565b604051612cf2929190614427565b604051809103902060b99190910152565b60d98901889052612d2089612d1b60608f018f6143c6565b613b46565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612d865760a7545f90815260a460205260409020600201546099544291612d7991614317565b612d83919061432a565b90505b60405180608001604052804281526020018260985442612da69190614317565b612db09190614317565b8152602001612e018f8060400190612dc891906143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613b5292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612e75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e99919061433d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612f0190612efb908f018f6143c6565b5f613ba9565b5f8e8060400190612f1291906143c6565b6040518663ffffffff1660e01b8152600401612f3295949392919061447d565b602060405180830381865afa158015612f4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f71919061438b565b612fe35760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906113225750505f90815260a46020526040902060030154610100900460ff161590565b61307b6131a3565b5f8111801561308c57506098548114155b6130d85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a46565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113c7565b61311e6131a3565b6001600160a01b03811661319a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a46565b61207181613334565b6033546001600160a01b031633146114a15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a46565b5f805f61320a8585613bfd565b812090969095509350505050565b60655460ff16156114a15760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a46565b805f0361327757505050565b8082035f805b83811015610dfd5761010081850381111561329757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561330a575f80fd5b505af115801561331c573d5f803e3d5ffd5b5050505061010084019350506101008101905061327d565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166134195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613cd4565b5f54610100900460ff1661349d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613d5c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613529573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061354d919061433d565b5f86815260a4602052604090206001015490915061356c908290614317565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906135ab908490614317565b90915550506040516135be9084906144f0565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061364e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a46565b5f61365d846001015160c01c90565b90505f61366b856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061369a876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861375c885160f81c90565b858888866040518663ffffffff1660e01b815260040161378095949392919061451c565b5f6040518083038186803b158015613796575f80fd5b505afa1580156137a8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906137d8908461454d565b6137e29190614564565b90506137ee818361432a565b60aa5f8282546137fe9190614317565b90915550506001600160a01b0384165f90815260a560205260408120805483929061382a908490614317565b909155505060405161383d9084906144f0565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613927575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146138cf576040519150601f19603f3d011682016040523d82523d5f602084013e6138d4565b606091505b50509050806139255760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a46565b505b5050565b613933613218565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586139683390565b6040516001600160a01b03909116815260200160405180910390a1565b61398d613de1565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613968565b60405185515f918291602089019190819084906139dc908590613e33565b90506002840193505f5b81811015613a6057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613a36603c8361454d565b613a409087614317565b90505f613a5182603a015160f01c90565b979097019650506001016139e6565b506020850282016040525b8015613b2b575f613a8085603a015160f01c90565b9050613a9083828d8d8d8d613ec8565b92505f613aa1866038015160f01c90565b905081811015613af35760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a46565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613a6b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613b6d828651613e33565b90505f5b613b7c60018361432a565b811015613b9257603c9390930192600101613b71565b505f613b9f845160c01c90565b9695505050505050565b60605f80808080613bbc888a018a614689565b9550955095509550955050818710613bda579450613bf69350505050565b838710613bee578295505050505050613bf6565b509293505050505b9392505050565b5f8160f9811015613c505760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a46565b6040519150808483378082016040525f613c6e836009015160c01c90565b905061010060ff82010460200260f9018214613ccc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b509250929050565b5f54610100900460ff16613d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6065805460ff19169055565b5f54610100900460ff16613dd85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a133613334565b60655460ff166114a15760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a46565b5f613e3f835160f01c90565b9050805f03613e7a576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e85603c8261454d565b613e90906002614317565b8214611322576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613ed7575085613b9f565b609b546001600160a01b03165f80805b89811015613fbd5760ff89169150600889901c811580613f05575082155b15613f14578060200288013593505b600184841c165f03613fac576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613f7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fa2919061433d565b8d52506020909b019a5b506001988901989788019701613ee7565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156140385760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a46565b509798975050505050505050565b5f60208284031215614056575f80fd5b5035919050565b80356001600160a01b0381168114614073575f80fd5b919050565b5f60208284031215614088575f80fd5b613bf68261405d565b5f8083601f8401126140a1575f80fd5b50813567ffffffffffffffff8111156140b8575f80fd5b6020830191508360208285010111156140cf575f80fd5b9250929050565b5f805f604084860312156140e8575f80fd5b833567ffffffffffffffff8111156140fe575f80fd5b61410a86828701614091565b909790965060209590950135949350505050565b5f806020838503121561412f575f80fd5b823567ffffffffffffffff811115614145575f80fd5b61415185828601614091565b90969095509350505050565b5f805f805f8060c08789031215614172575f80fd5b61417b8761405d565b95506141896020880161405d565b94506141976040880161405d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156141cb575f80fd5b843567ffffffffffffffff808211156141e2575f80fd5b6141ee88838901614091565b90965094506020870135915080821115614206575f80fd5b5061421387828801614091565b95989497509550505050565b8015158114612071575f80fd5b5f6020828403121561423c575f80fd5b8135613bf68161421f565b5f8060408385031215614258575f80fd5b823567ffffffffffffffff8116811461426f575f80fd5b946020939093013593505050565b5f806040838503121561428e575f80fd5b823567ffffffffffffffff808211156142a5575f80fd5b9084019060e082870312156142b8575f80fd5b909250602084013590808211156142cd575f80fd5b508301606081860312156142df575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611322576113226142ea565b81810381811115611322576113226142ea565b5f6020828403121561434d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614384576143846142ea565b5060010190565b5f6020828403121561439b575f80fd5b8151613bf68161421f565b5f602082840312156143b6575f80fd5b813560ff81168114613bf6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126143f9575f80fd5b83018035915067ffffffffffffffff821115614413575f80fd5b6020019150368190038213156140cf575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156144c75784516001600160a01b0316835293830193918301916001016144a2565b505087604086015284810360608601526144e2818789614436565b9a9950505050505050505050565b5f82515f5b8181101561450f57602081860181015185830152016144f5565b505f920191825250919050565b858152846020820152608060408201525f61453b608083018587614436565b90508260608301529695505050505050565b8082028115828204841417611322576113226142ea565b5f82614597577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145d8575f80fd5b8135602067ffffffffffffffff808311156145f5576145f561459c565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156146385761463861459c565b6040529384526020818701810194908101925087851115614657575f80fd5b6020870191505b8482101561467e5761466f8261405d565b8352918301919083019061465e565b979650505050505050565b5f805f805f8060c0878903121561469e575f80fd5b86359550602087013567ffffffffffffffff808211156146bc575f80fd5b6146c88a838b016145c9565b96506040890135955060608901359150808211156146e4575f80fd5b6146f08a838b016145c9565b94506080890135935060a089013591508082111561470c575f80fd5b5061471989828a016145c9565b915050929550929550929556fea164736f6c6343000818000a diff --git a/bindings/bindings/multipleversionrollupverifier.go b/bindings/bindings/multipleversionrollupverifier.go index a5b6aa075..c86abd18b 100644 --- a/bindings/bindings/multipleversionrollupverifier.go +++ b/bindings/bindings/multipleversionrollupverifier.go @@ -31,8 +31,8 @@ var ( // MultipleVersionRollupVerifierMetaData contains all meta data concerning the MultipleVersionRollupVerifier contract. var MultipleVersionRollupVerifierMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_versions\",\"type\":\"uint256[]\"},{\"internalType\":\"address[]\",\"name\":\"_verifiers\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrorStartBatchIndexFinalized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorStartBatchIndexTooSmall\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"startBatchIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"verifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"getVerifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"}],\"name\":\"latestVerifier\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"startBatchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"verifier\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"legacyVerifiers\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"startBatchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"verifier\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"}],\"name\":\"legacyVerifiersLength\",\"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\":[],\"name\":\"rollup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"_startBatchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_aggrProof\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"_publicInputHash\",\"type\":\"bytes32\"}],\"name\":\"verifyAggregateProof\",\"outputs\":[],\"stateMutability\":\"view\",\"type\":\"function\"}]", - Bin: "0x608060405234801562000010575f80fd5b506040516200100c3803806200100c8339810160408190526200003391620002ed565b6200003e33620001a9565b5f5b8251811015620001a0575f6001600160a01b0316828281518110620000695762000069620003ae565b60200260200101516001600160a01b031603620000995760405163a7f9319d60e01b815260040160405180910390fd5b818181518110620000ae57620000ae620003ae565b602002602001015160035f858481518110620000ce57620000ce620003ae565b602002602001015181526020019081526020015f205f0160086101000a8154816001600160a01b0302191690836001600160a01b031602179055507f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b308382815181106200013f576200013f620003ae565b60200260200101515f8484815181106200015d576200015d620003ae565b60200260200101516040516200018f9392919092835260208301919091526001600160a01b0316604082015260600190565b60405180910390a160010162000040565b505050620003c2565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715620002375762000237620001f8565b604052919050565b5f6001600160401b038211156200025a576200025a620001f8565b5060051b60200190565b5f82601f83011262000274575f80fd5b815160206200028d62000287836200023f565b6200020c565b8083825260208201915060208460051b870101935086841115620002af575f80fd5b602086015b84811015620002e25780516001600160a01b0381168114620002d4575f80fd5b8352918301918301620002b4565b509695505050505050565b5f8060408385031215620002ff575f80fd5b82516001600160401b038082111562000316575f80fd5b818501915085601f8301126200032a575f80fd5b815160206200033d62000287836200023f565b82815260059290921b840181019181810190898411156200035c575f80fd5b948201945b838610156200037c5785518252948201949082019062000361565b9188015191965090935050508082111562000395575f80fd5b50620003a48582860162000264565b9150509250929050565b634e487b7160e01b5f52603260045260245ffd5b610c3c80620003d05f395ff3fe608060405234801561000f575f80fd5b50600436106100c4575f3560e01c8063955123061161007d578063c7065b6a11610058578063c7065b6a146101da578063cb23bcb514610227578063f2fde38b14610247575f80fd5b8063955123061461016c578063bd98b2b01461017f578063c4d66de8146101c7575f80fd5b80635027ad2e116100ad5780635027ad2e1461011a578063715018a6146101475780638da5cb5b1461014f575f80fd5b806328aee03f146100c85780632c09a84814610105575b5f80fd5b6100db6100d6366004610a50565b61025a565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610118610113366004610a70565b610397565b005b610139610128366004610af0565b5f9081526002602052604090205490565b6040519081526020016100fc565b61011861042f565b5f5473ffffffffffffffffffffffffffffffffffffffff166100db565b61011861017a366004610b2f565b610442565b61019261018d366004610a50565b610779565b6040805167ffffffffffffffff909316835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100fc565b6101186101d5366004610b76565b6107d1565b6101926101e8366004610af0565b60036020525f908152604090205467ffffffffffffffff81169068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1682565b6001546100db9073ffffffffffffffffffffffffffffffffffffffff1681565b610118610255366004610b76565b6108a5565b5f82815260036020908152604080832081518083019092525467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529083101561038c575f84815260026020526040902054805b8015610389575f86815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830190811061030a5761030a610b96565b5f9182526020918290206040805180820190915291015467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529350851015610389577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016102c3565b50505b602001519392505050565b5f6103a2868661025a565b6040517fc8bd017600000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff82169063c8bd0176906103fb90879087908790600401610bc3565b5f6040518083038186803b158015610411575f80fd5b505afa158015610423573d5f803e3d5ffd5b50505050505050505050565b61043761095c565b6104405f6109dc565b565b61044a61095c565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663059def616040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d89190610c18565b8267ffffffffffffffff161161051a576040517f9a4ff10400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8381526003602090815260409182902082518084019093525467ffffffffffffffff8082168085526801000000000000000090920473ffffffffffffffffffffffffffffffffffffffff169284019290925290841610156105a8576040517fb0d8c70400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82166105f5576040517fa7f9319d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805167ffffffffffffffff808516911610156106ba57602081015173ffffffffffffffffffffffffffffffffffffffff16156106ac575f84815260026020908152604082208054600181018255908352918190208351920180549184015173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090921667ffffffffffffffff909316929092171790555b67ffffffffffffffff831681525b73ffffffffffffffffffffffffffffffffffffffff82811660208381018281525f8881526003835260409081902086518154935190961668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090931667ffffffffffffffff96871617929092179091558051888152938716918401919091528201527f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b309060600160405180910390a150505050565b6002602052815f5260405f208181548110610792575f80fd5b5f9182526020909120015467ffffffffffffffff8116925068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16905082565b6107d961095c565b60015473ffffffffffffffffffffffffffffffffffffffff161561085e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f696e697469616c697a656400000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108ad61095c565b73ffffffffffffffffffffffffffffffffffffffff8116610950576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610855565b610959816109dc565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610855565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f8060408385031215610a61575f80fd5b50508035926020909101359150565b5f805f805f60808688031215610a84575f80fd5b8535945060208601359350604086013567ffffffffffffffff80821115610aa9575f80fd5b818801915088601f830112610abc575f80fd5b813581811115610aca575f80fd5b896020828501011115610adb575f80fd5b96999598505060200195606001359392505050565b5f60208284031215610b00575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b2a575f80fd5b919050565b5f805f60608486031215610b41575f80fd5b83359250602084013567ffffffffffffffff81168114610b5f575f80fd5b9150610b6d60408501610b07565b90509250925092565b5f60208284031215610b86575f80fd5b610b8f82610b07565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b60408152826040820152828460608301375f606084830101525f60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601168301019050826020830152949350505050565b5f60208284031215610c28575f80fd5b505191905056fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_versions\",\"type\":\"uint256[]\"},{\"internalType\":\"address[]\",\"name\":\"_verifiers\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrorStartBatchIndexFinalized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorStartBatchIndexTooSmall\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorVerifierNotFound\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"startBatchIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"verifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"getVerifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"}],\"name\":\"latestVerifier\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"startBatchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"verifier\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"legacyVerifiers\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"startBatchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"verifier\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"}],\"name\":\"legacyVerifiersLength\",\"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\":[],\"name\":\"rollup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"_startBatchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_version\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_aggrProof\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"_publicInputHash\",\"type\":\"bytes32\"}],\"name\":\"verifyAggregateProof\",\"outputs\":[],\"stateMutability\":\"view\",\"type\":\"function\"}]", + Bin: "0x608060405234801562000010575f80fd5b506040516200104c3803806200104c8339810160408190526200003391620002ed565b6200003e33620001a9565b5f5b8251811015620001a0575f6001600160a01b0316828281518110620000695762000069620003ae565b60200260200101516001600160a01b031603620000995760405163a7f9319d60e01b815260040160405180910390fd5b818181518110620000ae57620000ae620003ae565b602002602001015160035f858481518110620000ce57620000ce620003ae565b602002602001015181526020019081526020015f205f0160086101000a8154816001600160a01b0302191690836001600160a01b031602179055507f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b308382815181106200013f576200013f620003ae565b60200260200101515f8484815181106200015d576200015d620003ae565b60200260200101516040516200018f9392919092835260208301919091526001600160a01b0316604082015260600190565b60405180910390a160010162000040565b505050620003c2565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715620002375762000237620001f8565b604052919050565b5f6001600160401b038211156200025a576200025a620001f8565b5060051b60200190565b5f82601f83011262000274575f80fd5b815160206200028d62000287836200023f565b6200020c565b8083825260208201915060208460051b870101935086841115620002af575f80fd5b602086015b84811015620002e25780516001600160a01b0381168114620002d4575f80fd5b8352918301918301620002b4565b509695505050505050565b5f8060408385031215620002ff575f80fd5b82516001600160401b038082111562000316575f80fd5b818501915085601f8301126200032a575f80fd5b815160206200033d62000287836200023f565b82815260059290921b840181019181810190898411156200035c575f80fd5b948201945b838610156200037c5785518252948201949082019062000361565b9188015191965090935050508082111562000395575f80fd5b50620003a48582860162000264565b9150509250929050565b634e487b7160e01b5f52603260045260245ffd5b610c7c80620003d05f395ff3fe608060405234801561000f575f80fd5b50600436106100c4575f3560e01c8063955123061161007d578063c7065b6a11610058578063c7065b6a146101da578063cb23bcb514610227578063f2fde38b14610247575f80fd5b8063955123061461016c578063bd98b2b01461017f578063c4d66de8146101c7575f80fd5b80635027ad2e116100ad5780635027ad2e1461011a578063715018a6146101475780638da5cb5b1461014f575f80fd5b806328aee03f146100c85780632c09a84814610105575b5f80fd5b6100db6100d6366004610a90565b61025a565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610118610113366004610ab0565b6103d7565b005b610139610128366004610b30565b5f9081526002602052604090205490565b6040519081526020016100fc565b61011861046f565b5f5473ffffffffffffffffffffffffffffffffffffffff166100db565b61011861017a366004610b6f565b610482565b61019261018d366004610a90565b6107b9565b6040805167ffffffffffffffff909316835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100fc565b6101186101d5366004610bb6565b610811565b6101926101e8366004610b30565b60036020525f908152604090205467ffffffffffffffff81169068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1682565b6001546100db9073ffffffffffffffffffffffffffffffffffffffff1681565b610118610255366004610bb6565b6108e5565b5f82815260036020908152604080832081518083019092525467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff1692820192909252908310156103cc575f84815260026020526040812054805b8015610391575f87815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830190811061030a5761030a610bd6565b5f9182526020918290206040805180820190915291015467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529450861061036a5760019250610391565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016102c3565b50816103c9576040517f70f6c8ff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505b602001519392505050565b5f6103e2868661025a565b6040517fc8bd017600000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff82169063c8bd01769061043b90879087908790600401610c03565b5f6040518083038186803b158015610451575f80fd5b505afa158015610463573d5f803e3d5ffd5b50505050505050505050565b61047761099c565b6104805f610a1c565b565b61048a61099c565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663059def616040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105189190610c58565b8267ffffffffffffffff161161055a576040517f9a4ff10400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8381526003602090815260409182902082518084019093525467ffffffffffffffff8082168085526801000000000000000090920473ffffffffffffffffffffffffffffffffffffffff169284019290925290841610156105e8576040517fb0d8c70400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216610635576040517fa7f9319d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805167ffffffffffffffff808516911610156106fa57602081015173ffffffffffffffffffffffffffffffffffffffff16156106ec575f84815260026020908152604082208054600181018255908352918190208351920180549184015173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090921667ffffffffffffffff909316929092171790555b67ffffffffffffffff831681525b73ffffffffffffffffffffffffffffffffffffffff82811660208381018281525f8881526003835260409081902086518154935190961668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090931667ffffffffffffffff96871617929092179091558051888152938716918401919091528201527f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b309060600160405180910390a150505050565b6002602052815f5260405f2081815481106107d2575f80fd5b5f9182526020909120015467ffffffffffffffff8116925068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16905082565b61081961099c565b60015473ffffffffffffffffffffffffffffffffffffffff161561089e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f696e697469616c697a656400000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108ed61099c565b73ffffffffffffffffffffffffffffffffffffffff8116610990576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610895565b61099981610a1c565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610895565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f8060408385031215610aa1575f80fd5b50508035926020909101359150565b5f805f805f60808688031215610ac4575f80fd5b8535945060208601359350604086013567ffffffffffffffff80821115610ae9575f80fd5b818801915088601f830112610afc575f80fd5b813581811115610b0a575f80fd5b896020828501011115610b1b575f80fd5b96999598505060200195606001359392505050565b5f60208284031215610b40575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b6a575f80fd5b919050565b5f805f60608486031215610b81575f80fd5b83359250602084013567ffffffffffffffff81168114610b9f575f80fd5b9150610bad60408501610b47565b90509250925092565b5f60208284031215610bc6575f80fd5b610bcf82610b47565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b60408152826040820152828460608301375f606084830101525f60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601168301019050826020830152949350505050565b5f60208284031215610c68575f80fd5b505191905056fea164736f6c6343000818000a", } // MultipleVersionRollupVerifierABI is the input ABI used to generate the binding from. diff --git a/bindings/bindings/multipleversionrollupverifier_more.go b/bindings/bindings/multipleversionrollupverifier_more.go index ce643114b..cb057b117 100644 --- a/bindings/bindings/multipleversionrollupverifier_more.go +++ b/bindings/bindings/multipleversionrollupverifier_more.go @@ -13,7 +13,7 @@ const MultipleVersionRollupVerifierStorageLayoutJSON = "{\"storage\":[{\"astId\" var MultipleVersionRollupVerifierStorageLayout = new(solc.StorageLayout) -var MultipleVersionRollupVerifierDeployedBin = "0x608060405234801561000f575f80fd5b50600436106100c4575f3560e01c8063955123061161007d578063c7065b6a11610058578063c7065b6a146101da578063cb23bcb514610227578063f2fde38b14610247575f80fd5b8063955123061461016c578063bd98b2b01461017f578063c4d66de8146101c7575f80fd5b80635027ad2e116100ad5780635027ad2e1461011a578063715018a6146101475780638da5cb5b1461014f575f80fd5b806328aee03f146100c85780632c09a84814610105575b5f80fd5b6100db6100d6366004610a50565b61025a565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610118610113366004610a70565b610397565b005b610139610128366004610af0565b5f9081526002602052604090205490565b6040519081526020016100fc565b61011861042f565b5f5473ffffffffffffffffffffffffffffffffffffffff166100db565b61011861017a366004610b2f565b610442565b61019261018d366004610a50565b610779565b6040805167ffffffffffffffff909316835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100fc565b6101186101d5366004610b76565b6107d1565b6101926101e8366004610af0565b60036020525f908152604090205467ffffffffffffffff81169068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1682565b6001546100db9073ffffffffffffffffffffffffffffffffffffffff1681565b610118610255366004610b76565b6108a5565b5f82815260036020908152604080832081518083019092525467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529083101561038c575f84815260026020526040902054805b8015610389575f86815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830190811061030a5761030a610b96565b5f9182526020918290206040805180820190915291015467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529350851015610389577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016102c3565b50505b602001519392505050565b5f6103a2868661025a565b6040517fc8bd017600000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff82169063c8bd0176906103fb90879087908790600401610bc3565b5f6040518083038186803b158015610411575f80fd5b505afa158015610423573d5f803e3d5ffd5b50505050505050505050565b61043761095c565b6104405f6109dc565b565b61044a61095c565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663059def616040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d89190610c18565b8267ffffffffffffffff161161051a576040517f9a4ff10400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8381526003602090815260409182902082518084019093525467ffffffffffffffff8082168085526801000000000000000090920473ffffffffffffffffffffffffffffffffffffffff169284019290925290841610156105a8576040517fb0d8c70400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82166105f5576040517fa7f9319d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805167ffffffffffffffff808516911610156106ba57602081015173ffffffffffffffffffffffffffffffffffffffff16156106ac575f84815260026020908152604082208054600181018255908352918190208351920180549184015173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090921667ffffffffffffffff909316929092171790555b67ffffffffffffffff831681525b73ffffffffffffffffffffffffffffffffffffffff82811660208381018281525f8881526003835260409081902086518154935190961668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090931667ffffffffffffffff96871617929092179091558051888152938716918401919091528201527f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b309060600160405180910390a150505050565b6002602052815f5260405f208181548110610792575f80fd5b5f9182526020909120015467ffffffffffffffff8116925068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16905082565b6107d961095c565b60015473ffffffffffffffffffffffffffffffffffffffff161561085e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f696e697469616c697a656400000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108ad61095c565b73ffffffffffffffffffffffffffffffffffffffff8116610950576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610855565b610959816109dc565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610855565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f8060408385031215610a61575f80fd5b50508035926020909101359150565b5f805f805f60808688031215610a84575f80fd5b8535945060208601359350604086013567ffffffffffffffff80821115610aa9575f80fd5b818801915088601f830112610abc575f80fd5b813581811115610aca575f80fd5b896020828501011115610adb575f80fd5b96999598505060200195606001359392505050565b5f60208284031215610b00575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b2a575f80fd5b919050565b5f805f60608486031215610b41575f80fd5b83359250602084013567ffffffffffffffff81168114610b5f575f80fd5b9150610b6d60408501610b07565b90509250925092565b5f60208284031215610b86575f80fd5b610b8f82610b07565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b60408152826040820152828460608301375f606084830101525f60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601168301019050826020830152949350505050565b5f60208284031215610c28575f80fd5b505191905056fea164736f6c6343000818000a" +var MultipleVersionRollupVerifierDeployedBin = "0x608060405234801561000f575f80fd5b50600436106100c4575f3560e01c8063955123061161007d578063c7065b6a11610058578063c7065b6a146101da578063cb23bcb514610227578063f2fde38b14610247575f80fd5b8063955123061461016c578063bd98b2b01461017f578063c4d66de8146101c7575f80fd5b80635027ad2e116100ad5780635027ad2e1461011a578063715018a6146101475780638da5cb5b1461014f575f80fd5b806328aee03f146100c85780632c09a84814610105575b5f80fd5b6100db6100d6366004610a90565b61025a565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610118610113366004610ab0565b6103d7565b005b610139610128366004610b30565b5f9081526002602052604090205490565b6040519081526020016100fc565b61011861046f565b5f5473ffffffffffffffffffffffffffffffffffffffff166100db565b61011861017a366004610b6f565b610482565b61019261018d366004610a90565b6107b9565b6040805167ffffffffffffffff909316835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100fc565b6101186101d5366004610bb6565b610811565b6101926101e8366004610b30565b60036020525f908152604090205467ffffffffffffffff81169068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1682565b6001546100db9073ffffffffffffffffffffffffffffffffffffffff1681565b610118610255366004610bb6565b6108e5565b5f82815260036020908152604080832081518083019092525467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff1692820192909252908310156103cc575f84815260026020526040812054805b8015610391575f87815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830190811061030a5761030a610bd6565b5f9182526020918290206040805180820190915291015467ffffffffffffffff81168083526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff16928201929092529450861061036a5760019250610391565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016102c3565b50816103c9576040517f70f6c8ff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505b602001519392505050565b5f6103e2868661025a565b6040517fc8bd017600000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff82169063c8bd01769061043b90879087908790600401610c03565b5f6040518083038186803b158015610451575f80fd5b505afa158015610463573d5f803e3d5ffd5b50505050505050505050565b61047761099c565b6104805f610a1c565b565b61048a61099c565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663059def616040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105189190610c58565b8267ffffffffffffffff161161055a576040517f9a4ff10400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8381526003602090815260409182902082518084019093525467ffffffffffffffff8082168085526801000000000000000090920473ffffffffffffffffffffffffffffffffffffffff169284019290925290841610156105e8576040517fb0d8c70400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216610635576040517fa7f9319d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805167ffffffffffffffff808516911610156106fa57602081015173ffffffffffffffffffffffffffffffffffffffff16156106ec575f84815260026020908152604082208054600181018255908352918190208351920180549184015173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090921667ffffffffffffffff909316929092171790555b67ffffffffffffffff831681525b73ffffffffffffffffffffffffffffffffffffffff82811660208381018281525f8881526003835260409081902086518154935190961668010000000000000000027fffffffff0000000000000000000000000000000000000000000000000000000090931667ffffffffffffffff96871617929092179091558051888152938716918401919091528201527f7a98750a395b9ee50a2644ffda039e31f1d5d06de45510275f972bb20b229b309060600160405180910390a150505050565b6002602052815f5260405f2081815481106107d2575f80fd5b5f9182526020909120015467ffffffffffffffff8116925068010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16905082565b61081961099c565b60015473ffffffffffffffffffffffffffffffffffffffff161561089e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f696e697469616c697a656400000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108ed61099c565b73ffffffffffffffffffffffffffffffffffffffff8116610990576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610895565b61099981610a1c565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610895565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f8060408385031215610aa1575f80fd5b50508035926020909101359150565b5f805f805f60808688031215610ac4575f80fd5b8535945060208601359350604086013567ffffffffffffffff80821115610ae9575f80fd5b818801915088601f830112610afc575f80fd5b813581811115610b0a575f80fd5b896020828501011115610b1b575f80fd5b96999598505060200195606001359392505050565b5f60208284031215610b40575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b6a575f80fd5b919050565b5f805f60608486031215610b81575f80fd5b83359250602084013567ffffffffffffffff81168114610b9f575f80fd5b9150610bad60408501610b47565b90509250925092565b5f60208284031215610bc6575f80fd5b610bcf82610b47565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b60408152826040820152828460608301375f606084830101525f60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601168301019050826020830152949350505050565b5f60208284031215610c68575f80fd5b505191905056fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(MultipleVersionRollupVerifierStorageLayoutJSON), MultipleVersionRollupVerifierStorageLayout); err != nil { diff --git a/bindings/bindings/rollup.go b/bindings/bindings/rollup.go index 081c905db..ac9b469dd 100644 --- a/bindings/bindings/rollup.go +++ b/bindings/bindings/rollup.go @@ -49,8 +49,8 @@ type IRollupBatchSignatureInput struct { // RollupMetaData contains all meta data concerning the Rollup contract. var RollupMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", - Bin: "0x60a060405234801562000010575f80fd5b50604051620047c1380380620047c183398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516146636200015e5f395f81816105c301526135a001526146635ff3fe6080604052600436106102f0575f3560e01c80638da5cb5b11610186578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610951578063f2fde38b14610970578063fb1e8b041461098f575f80fd5b8063ddd8a3dc146108fe578063de8b30351461091d578063dff7827e1461093c575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108b7578063d279c191146108cc578063d63b3549146108eb575f80fd5b8063b3e0a50914610866578063bedb86fb14610885578063cd4edc69146108a4575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610813578063b348442514610828578063b35dac4e14610847575f80fd5b8063a479265d146107b4578063a4f209b0146107c9578063abc8d68d146107e8575f80fd5b8063910129d41161016c578063910129d41461073657806397fc007c14610767578063a415d8dc14610786575f80fd5b80638da5cb5b146106695780638f1d377614610686575f80fd5b80632571098d116102465780635ef7a94a116101f1578063715018a6116101cc578063715018a61461061d578063728cdbca1461063157806388b1ea0914610650575f80fd5b80635ef7a94a146105525780635f77cf1d146105b25780636c578c1d146105fe575f80fd5b80633e001b66116102215780633e001b661461050757806357e0af6c1461051c5780635c975abb1461053b575f80fd5b80632571098d146104865780632b7ac3f3146104b15780633b70c18a146104e8575f80fd5b8063121dcd50116102a657806318af3b2b1161028157806318af3b2b1461040c57806321e2f9e01461043c5780632362f03e1461045b575f80fd5b8063121dcd50146103c357806313361101146103d857806318463fb0146103f7575f80fd5b80630ceb6780116102d65780630ceb67801461036157806310d4458314610382578063116a1f42146103a1575f80fd5b806304d77215146102fb578063059def611461033e575f80fd5b366102f757005b5f80fd5b348015610306575f80fd5b50610329610315366004613f76565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610349575f80fd5b50610353609d5481565b604051908152602001610335565b34801561036c575f80fd5b5061038061037b366004613fa8565b6109a4565b005b34801561038d575f80fd5b5061038061039c366004614006565b610a76565b3480156103ac575f80fd5b506103296103bb366004613f76565b609d54101590565b3480156103ce575f80fd5b50610353609e5481565b3480156103e3575f80fd5b506103806103f236600461404e565b610dcf565b348015610402575f80fd5b5061035360a75481565b348015610417575f80fd5b50610329610426366004613f76565b5f90815260a26020526040902060010154421090565b348015610447575f80fd5b50610329610456366004613f76565b6112a4565b348015610466575f80fd5b50610353610475366004613f76565b60a16020525f908152604090205481565b348015610491575f80fd5b506103536104a0366004613f76565b60a06020525f908152604090205481565b3480156104bc575f80fd5b50609c546104d0906001600160a01b031681565b6040516001600160a01b039091168152602001610335565b3480156104f3575f80fd5b50609b546104d0906001600160a01b031681565b348015610512575f80fd5b5061035360aa5481565b348015610527575f80fd5b50610380610536366004613f76565b6112d2565b348015610546575f80fd5b5060655460ff16610329565b34801561055d575f80fd5b5061059261056c366004613f76565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610335565b3480156105bd575f80fd5b506105e57f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610335565b348015610609575f80fd5b50610380610618366004613fa8565b61137d565b348015610628575f80fd5b5061038061143a565b34801561063c575f80fd5b5061038061064b36600461408d565b61144d565b34801561065b575f80fd5b5060a6546103299060ff1681565b348015610674575f80fd5b506033546001600160a01b03166104d0565b348015610691575f80fd5b506106f26106a0366004613f76565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610335565b348015610741575f80fd5b50610329610750366004613f76565b5f90815260a4602052604090206003015460ff1690565b348015610772575f80fd5b50610380610781366004613fa8565b611790565b348015610791575f80fd5b506103296107a0366004613fa8565b609f6020525f908152604090205460ff1681565b3480156107bf575f80fd5b5061035360995481565b3480156107d4575f80fd5b506103806107e3366004613f76565b611873565b3480156107f3575f80fd5b50610353610802366004613fa8565b60a56020525f908152604090205481565b34801561081e575f80fd5b5061035360a85481565b348015610833575f80fd5b506103806108423660046140e8565b611923565b348015610852575f80fd5b50610380610861366004613fa8565b611b68565b348015610871575f80fd5b5061038061088036600461404e565b611bc1565b348015610890575f80fd5b5061038061089f36600461415c565b611eb9565b6103806108b2366004614177565b612014565b3480156108c2575f80fd5b5061035360985481565b3480156108d7575f80fd5b506103806108e6366004613fa8565b6125e0565b6103806108f93660046141ad565b61269f565b348015610909575f80fd5b506097546104d0906001600160a01b031681565b348015610928575f80fd5b50610329610937366004613f76565b612f59565b348015610947575f80fd5b50610353609a5481565b34801561095c575f80fd5b5061038061096b366004613f76565b612fa3565b34801561097b575f80fd5b5061038061098a366004613fa8565b613046565b34801561099a575f80fd5b5061035360a95481565b6109ac6130d3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a195760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610a7e6130d3565b5f8111610acd5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a10565b5f80610ad9858561312d565b915091505f610aec836001015160c01c90565b5f81815260a160205260409020549091508214610b4b5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b5f60a181610b598785614247565b81526020019081526020015f205414610bd95760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a10565b609d548111610c505760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a10565b610c5b60018261425a565b609e555b8315610dc757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610ca781612f59565b15610d02575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610cf2908490614247565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610d7f575060a85481145b15610d89575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c5f575b505050505050565b60a85415610e1f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b610e27613148565b5f80610e33848461312d565b915091505f610e46836001015160c01c90565b5f81815260a160205260409020549091508214610ea55760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b610eae816112a4565b610efa5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a10565b610f0381612f59565b15610f505760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a10565b5f81815260a4602052604090206003015460ff1615610fb15760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a10565b5f81815260a260205260409020600101544210156110115760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a10565b605983015160a05f61102460018561425a565b81526020019081526020015f20541461107f5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a10565b5f81815260a06020526040902054156110da5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a10565b80609d546001011461112e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a10565b609d819055600160a35f611143866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a0602052604090205561119060f98401601185015160c01c600986015160c01c61319b565b60a25f61119e60018461425a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560a491906111d7908461425a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611280866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a26020526040812054158015906112cc57505f82815260a1602052604090205415155b92915050565b6112da6130d3565b5f811180156112eb57506099548114155b6113375760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a10565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113856130d3565b6001600160a01b0381165f908152609f602052604090205460ff166113ec5760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a10565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610a6b565b6114426130d3565b61144b5f613264565b565b5f54610100900460ff161580801561146b57505f54600160ff909116105b806114845750303b15801561148457505f5460ff166001145b6114f65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a10565b5f805460ff191660011790558015611534575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061155157506001600160a01b038516155b15611588576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166115de5760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a10565b6115e66132cd565b6115ee613351565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611787575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117986130d3565b6001600160a01b038116158015906117be5750609c546001600160a01b03828116911614155b61180a5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a10565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61187b6130d3565b5f8111801561188b575060648111155b8015611899575060a9548114155b6118e55760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a10565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611371565b60a854156119735760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b61197b613148565b5f80611987868661312d565b915091505f61199a836001015160c01c90565b5f81815260a1602052604090205490915082146119f95760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b611a0281612f59565b611a4e5760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a10565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611aa791614247565b11611b1d575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b18918391906133d5565b611787565b611b28838686613531565b61178781336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506136e4565b611b706130d3565b60aa80545f909155611b8282826137b0565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611371565b611bc96130d3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c405760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a10565b5f80611c4c848461312d565b915091505f611c5f836001015160c01c90565b90505f611c6d846079015190565b905080611cbc5760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a10565b600984015160c01c15611d115760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a10565b5f611d1d856019015190565b03611d6a5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a10565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611d96856039015190565b14611de35760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a10565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611ec16130d3565b8015611fe257611ecf61385b565b60a65460ff1615611fa15760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f23908490614247565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b611fea6138b5565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33611fc4565b50565b335f908152609f602052604090205460ff166120725760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a10565b60a854156120c25760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b6120ca613148565b60a65460ff161561211d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a10565b8167ffffffffffffffff16609d54106121785760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a10565b67ffffffffffffffff82165f90815260a1602052604090205481146121df5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a10565b6121f28267ffffffffffffffff166112a4565b61223e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a10565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156122b95760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a10565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123495760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a10565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612399573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123bd919061426d565b34101561240c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a10565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161255e91815260200190565b60405180910390a35f609d5460016125769190614247565b90505b609e5481116125ce578267ffffffffffffffff1681146125bc576099545f82815260a26020526040812060010180549091906125b6908490614247565b90915550505b806125c681614284565b915050612579565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361263f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a10565b335f90815260a5602052604081205561265882826137b0565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161269391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561270b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061272f91906142bb565b61277b5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a10565b60a854156127cb5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a10565b6127d3613148565b6127e060208301836142d6565b60ff16156128305760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a10565b5f61283e60408401846142f6565b9150508061288e5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a10565b60808301356128df5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a10565b60a08301356129305760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a10565b5f8061294761294260208701876142f6565b61312d565b915091505f61295a836001015160c01c90565b5f81815260a1602052604090205490915082146129b95760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a10565b5f60a1816129c8846001614247565b81526020019081526020015f205414612a235760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a10565b609e548114612a745760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a10565b5f612a83846011015160c01c90565b90505f8080612ae2612a9860408c018c6142f6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612add905060608f018f6142f6565b6138ee565b948501949384019392509050612afb60608b018b6142f6565b905061010060ff85010460200214612b555760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a10565b600194909401935f804915612b6b575f49612b8d565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612b9d60608d018d6142f6565b612ba9915060f9614247565b90506040519850602081028901604052612bd7898d5f016020810190612bcf91906142d6565b60ff16613a6f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612c4489612c2560208e018e6142f6565b604051612c33929190614357565b604051809103902060b99190910152565b60d98901889052612c6189612c5c60608f018f6142f6565b613a76565b603989018290528089205f88815260a1602052604081209190915560a65460ff1615612cb65760a7545f90815260a460205260409020600201546099544291612ca991614247565b612cb3919061425a565b90505b60405180608001604052804281526020018260985442612cd69190614247565b612ce09190614247565b8152602001612d318f8060400190612cf891906142f6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613a8292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612da5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612dc9919061426d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612e3190612e2b908f018f6142f6565b5f613ad9565b5f8e8060400190612e4291906142f6565b6040518663ffffffff1660e01b8152600401612e629594939291906143ad565b602060405180830381865afa158015612e7d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ea191906142bb565b612f135760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a10565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906112cc5750505f90815260a46020526040902060030154610100900460ff161590565b612fab6130d3565b5f81118015612fbc57506098548114155b6130085760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a10565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611371565b61304e6130d3565b6001600160a01b0381166130ca5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a10565b61201181613264565b6033546001600160a01b0316331461144b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a10565b5f805f61313a8585613b2d565b812090969095509350505050565b60655460ff161561144b5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a10565b805f036131a757505050565b8082035f805b83811015610dc7576101008185038111156131c757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561323a575f80fd5b505af115801561324c573d5f803e3d5ffd5b505050506101008401935050610100810190506131ad565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166133495760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b61144b613c04565b5f54610100900460ff166133cd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b61144b613c8c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613459573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061347d919061426d565b5f86815260a4602052604090206001015490915061349c908290614247565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906134db908490614247565b90915550506040516134ee908490614420565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061357e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a10565b5f61358d846001015160c01c90565b90505f61359b856039015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006135ca876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861368c885160f81c90565b858888866040518663ffffffff1660e01b81526004016136b095949392919061444c565b5f6040518083038186803b1580156136c6575f80fd5b505afa1580156136d8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613708908461447d565b6137129190614494565b905061371e818361425a565b60aa5f82825461372e9190614247565b90915550506001600160a01b0384165f90815260a560205260408120805483929061375a908490614247565b909155505060405161376d908490614420565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613857575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146137ff576040519150601f19603f3d011682016040523d82523d5f602084013e613804565b606091505b50509050806138555760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a10565b505b5050565b613863613148565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586138983390565b6040516001600160a01b03909116815260200160405180910390a1565b6138bd613d11565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613898565b60405185515f9182916020890191908190849061390c908590613d63565b90506002840193505f5b8181101561399057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613966603c8361447d565b6139709087614247565b90505f61398182603a015160f01c90565b97909701965050600101613916565b506020850282016040525b8015613a5b575f6139b085603a015160f01c90565b90506139c083828d8d8d8d613df8565b92505f6139d1866038015160f01c90565b905081811015613a235760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a10565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0161399b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613a9d828651613d63565b90505f5b613aac60018361425a565b811015613ac257603c9390930192600101613aa1565b505f613acf845160c01c90565b9695505050505050565b60605f80808080613aec888a018a6145b9565b9550955095509550955050818710613b0a579450613b269350505050565b838710613b1e578295505050505050613b26565b509293505050505b9392505050565b5f8160f9811015613b805760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a10565b6040519150808483378082016040525f613b9e836009015160c01c90565b905061010060ff82010460200260f9018214613bfc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a10565b509250929050565b5f54610100900460ff16613c805760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b6065805460ff19169055565b5f54610100900460ff16613d085760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a10565b61144b33613264565b60655460ff1661144b5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a10565b5f613d6f835160f01c90565b9050805f03613daa576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613db5603c8261447d565b613dc0906002614247565b82146112cc576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613e07575085613acf565b609b546001600160a01b03165f80805b89811015613eed5760ff89169150600889901c811580613e35575082155b15613e44578060200288013593505b600184841c165f03613edc576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613eae573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ed2919061426d565b8d52506020909b019a5b506001988901989788019701613e17565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615613f685760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a10565b509798975050505050505050565b5f60208284031215613f86575f80fd5b5035919050565b80356001600160a01b0381168114613fa3575f80fd5b919050565b5f60208284031215613fb8575f80fd5b613b2682613f8d565b5f8083601f840112613fd1575f80fd5b50813567ffffffffffffffff811115613fe8575f80fd5b602083019150836020828501011115613fff575f80fd5b9250929050565b5f805f60408486031215614018575f80fd5b833567ffffffffffffffff81111561402e575f80fd5b61403a86828701613fc1565b909790965060209590950135949350505050565b5f806020838503121561405f575f80fd5b823567ffffffffffffffff811115614075575f80fd5b61408185828601613fc1565b90969095509350505050565b5f805f805f8060c087890312156140a2575f80fd5b6140ab87613f8d565b95506140b960208801613f8d565b94506140c760408801613f8d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156140fb575f80fd5b843567ffffffffffffffff80821115614112575f80fd5b61411e88838901613fc1565b90965094506020870135915080821115614136575f80fd5b5061414387828801613fc1565b95989497509550505050565b8015158114612011575f80fd5b5f6020828403121561416c575f80fd5b8135613b268161414f565b5f8060408385031215614188575f80fd5b823567ffffffffffffffff8116811461419f575f80fd5b946020939093013593505050565b5f80604083850312156141be575f80fd5b823567ffffffffffffffff808211156141d5575f80fd5b9084019060e082870312156141e8575f80fd5b909250602084013590808211156141fd575f80fd5b5083016060818603121561420f575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808201808211156112cc576112cc61421a565b818103818111156112cc576112cc61421a565b5f6020828403121561427d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036142b4576142b461421a565b5060010190565b5f602082840312156142cb575f80fd5b8151613b268161414f565b5f602082840312156142e6575f80fd5b813560ff81168114613b26575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614329575f80fd5b83018035915067ffffffffffffffff821115614343575f80fd5b602001915036819003821315613fff575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156143f75784516001600160a01b0316835293830193918301916001016143d2565b50508760408601528481036060860152614412818789614366565b9a9950505050505050505050565b5f82515f5b8181101561443f5760208186018101518583015201614425565b505f920191825250919050565b858152846020820152608060408201525f61446b608083018587614366565b90508260608301529695505050505050565b80820281158282048414176112cc576112cc61421a565b5f826144c7577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614508575f80fd5b8135602067ffffffffffffffff80831115614525576145256144cc565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614568576145686144cc565b6040529384526020818701810194908101925087851115614587575f80fd5b6020870191505b848210156145ae5761459f82613f8d565b8352918301919083019061458e565b979650505050505050565b5f805f805f8060c087890312156145ce575f80fd5b86359550602087013567ffffffffffffffff808211156145ec575f80fd5b6145f88a838b016144f9565b9650604089013595506060890135915080821115614614575f80fd5b6146208a838b016144f9565b94506080890135935060a089013591508082111561463c575f80fd5b5061464989828a016144f9565b915050929550929550929556fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", + Bin: "0x60a060405234801562000010575f80fd5b50604051620048913803806200489183398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516147336200015e5f395f81816105ce015261367001526147335ff3fe6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610987578063f2fde38b146109a6578063fb1e8b04146109c5575f80fd5b8063ddd8a3dc14610934578063de8b303514610953578063dff7827e14610972575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108ed578063d279c19114610902578063d63b354914610921575f80fd5b8063b3e0a5091461089c578063bedb86fb146108bb578063cd4edc69146108da575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610849578063b34844251461085e578063b35dac4e1461087d575f80fd5b8063a479265d146107ea578063a4f209b0146107ff578063abc8d68d1461081e575f80fd5b8063910129d41161016c578063910129d41461076c57806397fc007c1461079d578063a415d8dc146107bc575f80fd5b806388b1ea09146106865780638da5cb5b1461069f5780638f1d3776146106bc575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d14610634578063715018a614610653578063728cdbca14610667575f80fd5b80635ef7a94a1461055d5780635f77cf1d146105bd57806368589dfa14610609575f80fd5b80633e001b661161022c5780633e001b661461051257806357e0af6c146105275780635c975abb14610546575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a146104f3575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614046565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614078565b6109da565b005b348015610398575f80fd5b5061038b6103a73660046140d6565b610aac565b3480156103b7575f80fd5b506103346103c6366004614046565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd36600461411e565b610e05565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614046565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614046565b6112fa565b348015610471575f80fd5b5061035e610480366004614046565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614046565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104db906001600160a01b031681565b6040516001600160a01b039091168152602001610340565b3480156104fe575f80fd5b50609b546104db906001600160a01b031681565b34801561051d575f80fd5b5061035e60aa5481565b348015610532575f80fd5b5061038b610541366004614046565b611328565b348015610551575f80fd5b5060655460ff16610334565b348015610568575f80fd5b5061059d610577366004614046565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105c8575f80fd5b506105f07f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b348015610614575f80fd5b5061035e610623366004614046565b60ab6020525f908152604090205481565b34801561063f575f80fd5b5061038b61064e366004614078565b6113d3565b34801561065e575f80fd5b5061038b611490565b348015610672575f80fd5b5061038b61068136600461415d565b6114a3565b348015610691575f80fd5b5060a6546103349060ff1681565b3480156106aa575f80fd5b506033546001600160a01b03166104db565b3480156106c7575f80fd5b506107286106d6366004614046565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b348015610777575f80fd5b50610334610786366004614046565b5f90815260a4602052604090206003015460ff1690565b3480156107a8575f80fd5b5061038b6107b7366004614078565b6117e6565b3480156107c7575f80fd5b506103346107d6366004614078565b609f6020525f908152604090205460ff1681565b3480156107f5575f80fd5b5061035e60995481565b34801561080a575f80fd5b5061038b610819366004614046565b6118c9565b348015610829575f80fd5b5061035e610838366004614078565b60a56020525f908152604090205481565b348015610854575f80fd5b5061035e60a85481565b348015610869575f80fd5b5061038b6108783660046141b8565b611979565b348015610888575f80fd5b5061038b610897366004614078565b611bbe565b3480156108a7575f80fd5b5061038b6108b636600461411e565b611c17565b3480156108c6575f80fd5b5061038b6108d536600461422c565b611f19565b61038b6108e8366004614247565b612074565b3480156108f8575f80fd5b5061035e60985481565b34801561090d575f80fd5b5061038b61091c366004614078565b612640565b61038b61092f36600461427d565b6126ff565b34801561093f575f80fd5b506097546104db906001600160a01b031681565b34801561095e575f80fd5b5061033461096d366004614046565b613029565b34801561097d575f80fd5b5061035e609a5481565b348015610992575f80fd5b5061038b6109a1366004614046565b613073565b3480156109b1575f80fd5b5061038b6109c0366004614078565b613116565b3480156109d0575f80fd5b5061035e60a95481565b6109e26131a3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a4f5760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ab46131a3565b5f8111610b035760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a46565b5f80610b0f85856131fd565b915091505f610b22836001015160c01c90565b5f81815260a160205260409020549091508214610b815760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b5f60a181610b8f8785614317565b81526020019081526020015f205414610c0f5760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a46565b609d548111610c865760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b610c9160018261432a565b609e555b8315610dfd57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610cdd81613029565b15610d38575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d28908490614317565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610db5575060a85481145b15610dbf575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c95575b505050505050565b60a85415610e555760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b610e5d613218565b5f80610e6984846131fd565b915091505f610e7c836001015160c01c90565b5f81815260a160205260409020549091508214610edb5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b610ee4816112fa565b610f305760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b610f3981613029565b15610f865760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003015460ff1615610fe75760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a46565b5f81815260a260205260409020600101544210156110475760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a46565b605983015160a05f61105a60018561432a565b81526020019081526020015f2054146110b55760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f81815260a06020526040902054156111105760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a46565b80609d54600101146111645760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b609d819055600160a35f611179866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111c660f98401601185015160c01c600986015160c01c61326b565b60a25f6111d460018461432a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061120d908461432a565b81526020019081526020015f205f905560a45f60018361122d919061432a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d6112d6866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061132257505f82815260a1602052604090205415155b92915050565b6113306131a3565b5f8111801561134157506099548114155b61138d5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a46565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113db6131a3565b6001600160a01b0381165f908152609f602052604090205460ff166114425760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a46565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610aa1565b6114986131a3565b6114a15f613334565b565b5f54610100900460ff16158080156114c157505f54600160ff909116105b806114da5750303b1580156114da57505f5460ff166001145b61154c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a46565b5f805460ff19166001179055801561158a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806115a757506001600160a01b038516155b156115de576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166116345760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a46565b61163c61339d565b611644613421565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156117dd575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117ee6131a3565b6001600160a01b038116158015906118145750609c546001600160a01b03828116911614155b6118605760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a46565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6118d16131a3565b5f811180156118e1575060648111155b80156118ef575060a9548114155b61193b5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a46565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113c7565b60a854156119c95760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b6119d1613218565b5f806119dd86866131fd565b915091505f6119f0836001015160c01c90565b5f81815260a160205260409020549091508214611a4f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b611a5881613029565b611aa45760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611afd91614317565b11611b73575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b6e918391906134a5565b6117dd565b611b7e838686613601565b6117dd81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506137b4565b611bc66131a3565b60aa80545f909155611bd88282613880565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113c7565b611c1f6131a3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c965760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a46565b5f80611ca284846131fd565b915091505f611cb5836001015160c01c90565b90505f611cc3846079015190565b905080611d125760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a46565b600984015160c01c15611d675760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a46565b5f611d73856019015190565b03611dc05760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a46565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611dec856039015190565b14611e395760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a46565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611f216131a3565b801561204257611f2f61392b565b60a65460ff16156120015760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f83908490614317565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b61204a613985565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612024565b50565b335f908152609f602052604090205460ff166120d25760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a46565b60a854156121225760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b61212a613218565b60a65460ff161561217d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a46565b8167ffffffffffffffff16609d54106121d85760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a16020526040902054811461223f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b6122528267ffffffffffffffff166112fa565b61229e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156123195760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123a95760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a46565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241d919061433d565b34101561246c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516125be91815260200190565b60405180910390a35f609d5460016125d69190614317565b90505b609e54811161262e578267ffffffffffffffff16811461261c576099545f82815260a2602052604081206001018054909190612616908490614317565b90915550505b8061262681614354565b9150506125d9565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361269f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a46565b335f90815260a560205260408120556126b88282613880565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516126f391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561276b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061278f919061438b565b6127db5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a46565b60a8541561282b5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b612833613218565b61284060208301836143a6565b60ff16156128905760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a46565b5f61289e60408401846143c6565b915050806128ee5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a46565b608083013561293f5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a46565b60a08301356129905760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a46565b5f806129a76129a260208701876143c6565b6131fd565b915091505f6129ba836001015160c01c90565b90505f60a1816129cb846001614317565b81526020019081526020015f205414612a265760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a46565b609e548114612a775760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b5f81815260a160205260409020548214612ad35760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a46565b5f81815260ab6020526040902054608087013514612b335760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f612b42846011015160c01c90565b90505f8080612ba1612b5760408c018c6143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612b9c905060608f018f6143c6565b6139be565b948501949384019392509050612bba60608b018b6143c6565b905061010060ff85010460200214612c145760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b600194909401935f804915612c2a575f49612c4c565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612c5c60608d018d6143c6565b612c68915060f9614317565b90506040519850602081028901604052612c96898d5f016020810190612c8e91906143a6565b60ff16613b3f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612d0389612ce460208e018e6143c6565b604051612cf2929190614427565b604051809103902060b99190910152565b60d98901889052612d2089612d1b60608f018f6143c6565b613b46565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612d865760a7545f90815260a460205260409020600201546099544291612d7991614317565b612d83919061432a565b90505b60405180608001604052804281526020018260985442612da69190614317565b612db09190614317565b8152602001612e018f8060400190612dc891906143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613b5292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612e75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e99919061433d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612f0190612efb908f018f6143c6565b5f613ba9565b5f8e8060400190612f1291906143c6565b6040518663ffffffff1660e01b8152600401612f3295949392919061447d565b602060405180830381865afa158015612f4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f71919061438b565b612fe35760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906113225750505f90815260a46020526040902060030154610100900460ff161590565b61307b6131a3565b5f8111801561308c57506098548114155b6130d85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a46565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113c7565b61311e6131a3565b6001600160a01b03811661319a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a46565b61207181613334565b6033546001600160a01b031633146114a15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a46565b5f805f61320a8585613bfd565b812090969095509350505050565b60655460ff16156114a15760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a46565b805f0361327757505050565b8082035f805b83811015610dfd5761010081850381111561329757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561330a575f80fd5b505af115801561331c573d5f803e3d5ffd5b5050505061010084019350506101008101905061327d565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166134195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613cd4565b5f54610100900460ff1661349d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613d5c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613529573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061354d919061433d565b5f86815260a4602052604090206001015490915061356c908290614317565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906135ab908490614317565b90915550506040516135be9084906144f0565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061364e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a46565b5f61365d846001015160c01c90565b90505f61366b856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061369a876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861375c885160f81c90565b858888866040518663ffffffff1660e01b815260040161378095949392919061451c565b5f6040518083038186803b158015613796575f80fd5b505afa1580156137a8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906137d8908461454d565b6137e29190614564565b90506137ee818361432a565b60aa5f8282546137fe9190614317565b90915550506001600160a01b0384165f90815260a560205260408120805483929061382a908490614317565b909155505060405161383d9084906144f0565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613927575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146138cf576040519150601f19603f3d011682016040523d82523d5f602084013e6138d4565b606091505b50509050806139255760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a46565b505b5050565b613933613218565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586139683390565b6040516001600160a01b03909116815260200160405180910390a1565b61398d613de1565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613968565b60405185515f918291602089019190819084906139dc908590613e33565b90506002840193505f5b81811015613a6057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613a36603c8361454d565b613a409087614317565b90505f613a5182603a015160f01c90565b979097019650506001016139e6565b506020850282016040525b8015613b2b575f613a8085603a015160f01c90565b9050613a9083828d8d8d8d613ec8565b92505f613aa1866038015160f01c90565b905081811015613af35760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a46565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613a6b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613b6d828651613e33565b90505f5b613b7c60018361432a565b811015613b9257603c9390930192600101613b71565b505f613b9f845160c01c90565b9695505050505050565b60605f80808080613bbc888a018a614689565b9550955095509550955050818710613bda579450613bf69350505050565b838710613bee578295505050505050613bf6565b509293505050505b9392505050565b5f8160f9811015613c505760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a46565b6040519150808483378082016040525f613c6e836009015160c01c90565b905061010060ff82010460200260f9018214613ccc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b509250929050565b5f54610100900460ff16613d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6065805460ff19169055565b5f54610100900460ff16613dd85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a133613334565b60655460ff166114a15760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a46565b5f613e3f835160f01c90565b9050805f03613e7a576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e85603c8261454d565b613e90906002614317565b8214611322576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613ed7575085613b9f565b609b546001600160a01b03165f80805b89811015613fbd5760ff89169150600889901c811580613f05575082155b15613f14578060200288013593505b600184841c165f03613fac576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613f7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fa2919061433d565b8d52506020909b019a5b506001988901989788019701613ee7565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156140385760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a46565b509798975050505050505050565b5f60208284031215614056575f80fd5b5035919050565b80356001600160a01b0381168114614073575f80fd5b919050565b5f60208284031215614088575f80fd5b613bf68261405d565b5f8083601f8401126140a1575f80fd5b50813567ffffffffffffffff8111156140b8575f80fd5b6020830191508360208285010111156140cf575f80fd5b9250929050565b5f805f604084860312156140e8575f80fd5b833567ffffffffffffffff8111156140fe575f80fd5b61410a86828701614091565b909790965060209590950135949350505050565b5f806020838503121561412f575f80fd5b823567ffffffffffffffff811115614145575f80fd5b61415185828601614091565b90969095509350505050565b5f805f805f8060c08789031215614172575f80fd5b61417b8761405d565b95506141896020880161405d565b94506141976040880161405d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156141cb575f80fd5b843567ffffffffffffffff808211156141e2575f80fd5b6141ee88838901614091565b90965094506020870135915080821115614206575f80fd5b5061421387828801614091565b95989497509550505050565b8015158114612071575f80fd5b5f6020828403121561423c575f80fd5b8135613bf68161421f565b5f8060408385031215614258575f80fd5b823567ffffffffffffffff8116811461426f575f80fd5b946020939093013593505050565b5f806040838503121561428e575f80fd5b823567ffffffffffffffff808211156142a5575f80fd5b9084019060e082870312156142b8575f80fd5b909250602084013590808211156142cd575f80fd5b508301606081860312156142df575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611322576113226142ea565b81810381811115611322576113226142ea565b5f6020828403121561434d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614384576143846142ea565b5060010190565b5f6020828403121561439b575f80fd5b8151613bf68161421f565b5f602082840312156143b6575f80fd5b813560ff81168114613bf6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126143f9575f80fd5b83018035915067ffffffffffffffff821115614413575f80fd5b6020019150368190038213156140cf575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156144c75784516001600160a01b0316835293830193918301916001016144a2565b505087604086015284810360608601526144e2818789614436565b9a9950505050505050505050565b5f82515f5b8181101561450f57602081860181015185830152016144f5565b505f920191825250919050565b858152846020820152608060408201525f61453b608083018587614436565b90508260608301529695505050505050565b8082028115828204841417611322576113226142ea565b5f82614597577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145d8575f80fd5b8135602067ffffffffffffffff808311156145f5576145f561459c565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156146385761463861459c565b6040529384526020818701810194908101925087851115614657575f80fd5b6020870191505b8482101561467e5761466f8261405d565b8352918301919083019061465e565b979650505050505050565b5f805f805f8060c0878903121561469e575f80fd5b86359550602087013567ffffffffffffffff808211156146bc575f80fd5b6146c88a838b016145c9565b96506040890135955060608901359150808211156146e4575f80fd5b6146f08a838b016145c9565b94506080890135935060a089013591508082111561470c575f80fd5b5061471989828a016145c9565b915050929550929550929556fea164736f6c6343000818000a", } // RollupABI is the input ABI used to generate the binding from. @@ -619,6 +619,37 @@ func (_Rollup *RollupCallerSession) CommittedBatches(batchIndex *big.Int) ([32]b return _Rollup.Contract.CommittedBatches(&_Rollup.CallOpts, batchIndex) } +// CommittedStateRoots is a free data retrieval call binding the contract method 0x68589dfa. +// +// Solidity: function committedStateRoots(uint256 batchIndex) view returns(bytes32 stateRoot) +func (_Rollup *RollupCaller) CommittedStateRoots(opts *bind.CallOpts, batchIndex *big.Int) ([32]byte, error) { + var out []interface{} + err := _Rollup.contract.Call(opts, &out, "committedStateRoots", batchIndex) + + if err != nil { + return *new([32]byte), err + } + + out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) + + return out0, err + +} + +// CommittedStateRoots is a free data retrieval call binding the contract method 0x68589dfa. +// +// Solidity: function committedStateRoots(uint256 batchIndex) view returns(bytes32 stateRoot) +func (_Rollup *RollupSession) CommittedStateRoots(batchIndex *big.Int) ([32]byte, error) { + return _Rollup.Contract.CommittedStateRoots(&_Rollup.CallOpts, batchIndex) +} + +// CommittedStateRoots is a free data retrieval call binding the contract method 0x68589dfa. +// +// Solidity: function committedStateRoots(uint256 batchIndex) view returns(bytes32 stateRoot) +func (_Rollup *RollupCallerSession) CommittedStateRoots(batchIndex *big.Int) ([32]byte, error) { + return _Rollup.Contract.CommittedStateRoots(&_Rollup.CallOpts, batchIndex) +} + // FinalizationPeriodSeconds is a free data retrieval call binding the contract method 0xce5db8d6. // // Solidity: function finalizationPeriodSeconds() view returns(uint256) diff --git a/bindings/bindings/rollup_more.go b/bindings/bindings/rollup_more.go index bcab9c671..96e82c601 100644 --- a/bindings/bindings/rollup_more.go +++ b/bindings/bindings/rollup_more.go @@ -9,11 +9,11 @@ import ( "morph-l2/bindings/solc" ) -const RollupStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1028_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1027_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_paused\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_bool\"},{\"astId\":1006,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_uint256)1027_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"l1StakingContract\",\"offset\":0,\"slot\":\"151\",\"type\":\"t_address\"},{\"astId\":1008,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"finalizationPeriodSeconds\",\"offset\":0,\"slot\":\"152\",\"type\":\"t_uint256\"},{\"astId\":1009,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"proofWindow\",\"offset\":0,\"slot\":\"153\",\"type\":\"t_uint256\"},{\"astId\":1010,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__maxNumTxInChunk\",\"offset\":0,\"slot\":\"154\",\"type\":\"t_uint256\"},{\"astId\":1011,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"155\",\"type\":\"t_address\"},{\"astId\":1012,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"verifier\",\"offset\":0,\"slot\":\"156\",\"type\":\"t_address\"},{\"astId\":1013,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"lastFinalizedBatchIndex\",\"offset\":0,\"slot\":\"157\",\"type\":\"t_uint256\"},{\"astId\":1014,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"lastCommittedBatchIndex\",\"offset\":0,\"slot\":\"158\",\"type\":\"t_uint256\"},{\"astId\":1015,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"isChallenger\",\"offset\":0,\"slot\":\"159\",\"type\":\"t_mapping(t_address,t_bool)\"},{\"astId\":1016,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"finalizedStateRoots\",\"offset\":0,\"slot\":\"160\",\"type\":\"t_mapping(t_uint256,t_bytes32)\"},{\"astId\":1017,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"committedBatches\",\"offset\":0,\"slot\":\"161\",\"type\":\"t_mapping(t_uint256,t_bytes32)\"},{\"astId\":1018,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"batchDataStore\",\"offset\":0,\"slot\":\"162\",\"type\":\"t_mapping(t_uint256,t_struct(BatchData)1030_storage)\"},{\"astId\":1019,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"withdrawalRoots\",\"offset\":0,\"slot\":\"163\",\"type\":\"t_mapping(t_bytes32,t_bool)\"},{\"astId\":1020,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"challenges\",\"offset\":0,\"slot\":\"164\",\"type\":\"t_mapping(t_uint256,t_struct(BatchChallenge)1029_storage)\"},{\"astId\":1021,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"batchChallengeReward\",\"offset\":0,\"slot\":\"165\",\"type\":\"t_mapping(t_address,t_uint256)\"},{\"astId\":1022,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"inChallenge\",\"offset\":0,\"slot\":\"166\",\"type\":\"t_bool\"},{\"astId\":1023,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"batchChallenged\",\"offset\":0,\"slot\":\"167\",\"type\":\"t_uint256\"},{\"astId\":1024,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"revertReqIndex\",\"offset\":0,\"slot\":\"168\",\"type\":\"t_uint256\"},{\"astId\":1025,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"proofRewardPercent\",\"offset\":0,\"slot\":\"169\",\"type\":\"t_uint256\"},{\"astId\":1026,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"proveRemaining\",\"offset\":0,\"slot\":\"170\",\"type\":\"t_uint256\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_uint256)1027_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1028_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_address,t_bool)\":{\"encoding\":\"mapping\",\"label\":\"mapping(address =\u003e bool)\",\"numberOfBytes\":\"32\",\"key\":\"t_address\",\"value\":\"t_bool\"},\"t_mapping(t_address,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(address =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_address\",\"value\":\"t_uint256\"},\"t_mapping(t_bytes32,t_bool)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e bool)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_bool\"},\"t_mapping(t_uint256,t_bytes32)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e bytes32)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_bytes32\"},\"t_mapping(t_uint256,t_struct(BatchChallenge)1029_storage)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e struct IRollup.BatchChallenge)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_struct(BatchChallenge)1029_storage\"},\"t_mapping(t_uint256,t_struct(BatchData)1030_storage)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e struct IRollup.BatchData)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_struct(BatchData)1030_storage\"},\"t_struct(BatchChallenge)1029_storage\":{\"encoding\":\"inplace\",\"label\":\"struct IRollup.BatchChallenge\",\"numberOfBytes\":\"128\"},\"t_struct(BatchData)1030_storage\":{\"encoding\":\"inplace\",\"label\":\"struct IRollup.BatchData\",\"numberOfBytes\":\"128\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint64\":{\"encoding\":\"inplace\",\"label\":\"uint64\",\"numberOfBytes\":\"8\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" +const RollupStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1029_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1028_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"_paused\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_bool\"},{\"astId\":1006,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_uint256)1028_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"l1StakingContract\",\"offset\":0,\"slot\":\"151\",\"type\":\"t_address\"},{\"astId\":1008,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"finalizationPeriodSeconds\",\"offset\":0,\"slot\":\"152\",\"type\":\"t_uint256\"},{\"astId\":1009,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"proofWindow\",\"offset\":0,\"slot\":\"153\",\"type\":\"t_uint256\"},{\"astId\":1010,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"__maxNumTxInChunk\",\"offset\":0,\"slot\":\"154\",\"type\":\"t_uint256\"},{\"astId\":1011,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"155\",\"type\":\"t_address\"},{\"astId\":1012,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"verifier\",\"offset\":0,\"slot\":\"156\",\"type\":\"t_address\"},{\"astId\":1013,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"lastFinalizedBatchIndex\",\"offset\":0,\"slot\":\"157\",\"type\":\"t_uint256\"},{\"astId\":1014,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"lastCommittedBatchIndex\",\"offset\":0,\"slot\":\"158\",\"type\":\"t_uint256\"},{\"astId\":1015,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"isChallenger\",\"offset\":0,\"slot\":\"159\",\"type\":\"t_mapping(t_address,t_bool)\"},{\"astId\":1016,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"finalizedStateRoots\",\"offset\":0,\"slot\":\"160\",\"type\":\"t_mapping(t_uint256,t_bytes32)\"},{\"astId\":1017,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"committedBatches\",\"offset\":0,\"slot\":\"161\",\"type\":\"t_mapping(t_uint256,t_bytes32)\"},{\"astId\":1018,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"batchDataStore\",\"offset\":0,\"slot\":\"162\",\"type\":\"t_mapping(t_uint256,t_struct(BatchData)1031_storage)\"},{\"astId\":1019,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"withdrawalRoots\",\"offset\":0,\"slot\":\"163\",\"type\":\"t_mapping(t_bytes32,t_bool)\"},{\"astId\":1020,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"challenges\",\"offset\":0,\"slot\":\"164\",\"type\":\"t_mapping(t_uint256,t_struct(BatchChallenge)1030_storage)\"},{\"astId\":1021,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"batchChallengeReward\",\"offset\":0,\"slot\":\"165\",\"type\":\"t_mapping(t_address,t_uint256)\"},{\"astId\":1022,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"inChallenge\",\"offset\":0,\"slot\":\"166\",\"type\":\"t_bool\"},{\"astId\":1023,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"batchChallenged\",\"offset\":0,\"slot\":\"167\",\"type\":\"t_uint256\"},{\"astId\":1024,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"revertReqIndex\",\"offset\":0,\"slot\":\"168\",\"type\":\"t_uint256\"},{\"astId\":1025,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"proofRewardPercent\",\"offset\":0,\"slot\":\"169\",\"type\":\"t_uint256\"},{\"astId\":1026,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"proveRemaining\",\"offset\":0,\"slot\":\"170\",\"type\":\"t_uint256\"},{\"astId\":1027,\"contract\":\"contracts/l1/rollup/Rollup.sol:Rollup\",\"label\":\"committedStateRoots\",\"offset\":0,\"slot\":\"171\",\"type\":\"t_mapping(t_uint256,t_bytes32)\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_uint256)1028_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1029_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_address,t_bool)\":{\"encoding\":\"mapping\",\"label\":\"mapping(address =\u003e bool)\",\"numberOfBytes\":\"32\",\"key\":\"t_address\",\"value\":\"t_bool\"},\"t_mapping(t_address,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(address =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_address\",\"value\":\"t_uint256\"},\"t_mapping(t_bytes32,t_bool)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e bool)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_bool\"},\"t_mapping(t_uint256,t_bytes32)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e bytes32)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_bytes32\"},\"t_mapping(t_uint256,t_struct(BatchChallenge)1030_storage)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e struct IRollup.BatchChallenge)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_struct(BatchChallenge)1030_storage\"},\"t_mapping(t_uint256,t_struct(BatchData)1031_storage)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e struct IRollup.BatchData)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_struct(BatchData)1031_storage\"},\"t_struct(BatchChallenge)1030_storage\":{\"encoding\":\"inplace\",\"label\":\"struct IRollup.BatchChallenge\",\"numberOfBytes\":\"128\"},\"t_struct(BatchData)1031_storage\":{\"encoding\":\"inplace\",\"label\":\"struct IRollup.BatchData\",\"numberOfBytes\":\"128\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint64\":{\"encoding\":\"inplace\",\"label\":\"uint64\",\"numberOfBytes\":\"8\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" var RollupStorageLayout = new(solc.StorageLayout) -var RollupDeployedBin = "0x6080604052600436106102f0575f3560e01c80638da5cb5b11610186578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109ac578063f2fde38b146109cb578063fb1e8b04146109ea575f80fd5b8063ddd8a3dc1461094c578063de8b303514610978578063dff7827e14610997575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610905578063d279c1911461091a578063d63b354914610939575f80fd5b8063b3e0a509146108b4578063bedb86fb146108d3578063cd4edc69146108f2575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610861578063b348442514610876578063b35dac4e14610895575f80fd5b8063a479265d14610802578063a4f209b014610817578063abc8d68d14610836575f80fd5b8063910129d41161016c578063910129d41461078457806397fc007c146107b5578063a415d8dc146107d4575f80fd5b80638da5cb5b146106905780638f1d3776146106ba575f80fd5b80632571098d116102465780635ef7a94a116101f1578063715018a6116101cc578063715018a614610644578063728cdbca1461065857806388b1ea0914610677575f80fd5b80635ef7a94a146105795780635f77cf1d146105d95780636c578c1d14610625575f80fd5b80633e001b66116102215780633e001b661461052e57806357e0af6c146105435780635c975abb14610562575f80fd5b80632571098d146104865780632b7ac3f3146104b15780633b70c18a14610502575f80fd5b8063121dcd50116102a657806318af3b2b1161028157806318af3b2b1461040c57806321e2f9e01461043c5780632362f03e1461045b575f80fd5b8063121dcd50146103c357806313361101146103d857806318463fb0146103f7575f80fd5b80630ceb6780116102d65780630ceb67801461036157806310d4458314610382578063116a1f42146103a1575f80fd5b806304d77215146102fb578063059def611461033e575f80fd5b366102f757005b5f80fd5b348015610306575f80fd5b506103296103153660046149ce565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610349575f80fd5b50610353609d5481565b604051908152602001610335565b34801561036c575f80fd5b5061038061037b366004614a0d565b6109ff565b005b34801561038d575f80fd5b5061038061039c366004614a6b565b610b23565b3480156103ac575f80fd5b506103296103bb3660046149ce565b609d54101590565b3480156103ce575f80fd5b50610353609e5481565b3480156103e3575f80fd5b506103806103f2366004614ab3565b610f0f565b348015610402575f80fd5b5061035360a75481565b348015610417575f80fd5b506103296104263660046149ce565b5f90815260a26020526040902060010154421090565b348015610447575f80fd5b506103296104563660046149ce565b6114ec565b348015610466575f80fd5b506103536104753660046149ce565b60a16020525f908152604090205481565b348015610491575f80fd5b506103536104a03660046149ce565b60a06020525f908152604090205481565b3480156104bc575f80fd5b50609c546104dd9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610335565b34801561050d575f80fd5b50609b546104dd9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610539575f80fd5b5061035360aa5481565b34801561054e575f80fd5b5061038061055d3660046149ce565b61151a565b34801561056d575f80fd5b5060655460ff16610329565b348015610584575f80fd5b506105b96105933660046149ce565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610335565b3480156105e4575f80fd5b5061060c7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610335565b348015610630575f80fd5b5061038061063f366004614a0d565b6115df565b34801561064f575f80fd5b506103806116ee565b348015610663575f80fd5b50610380610672366004614af2565b611701565b348015610682575f80fd5b5060a6546103299060ff1681565b34801561069b575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104dd565b3480156106c5575f80fd5b506107336106d43660046149ce565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c001610335565b34801561078f575f80fd5b5061032961079e3660046149ce565b5f90815260a4602052604090206003015460ff1690565b3480156107c0575f80fd5b506103806107cf366004614a0d565b611aca565b3480156107df575f80fd5b506103296107ee366004614a0d565b609f6020525f908152604090205460ff1681565b34801561080d575f80fd5b5061035360995481565b348015610822575f80fd5b506103806108313660046149ce565b611bee565b348015610841575f80fd5b50610353610850366004614a0d565b60a56020525f908152604090205481565b34801561086c575f80fd5b5061035360a85481565b348015610881575f80fd5b50610380610890366004614b4d565b611cb8565b3480156108a0575f80fd5b506103806108af366004614a0d565b611f87565b3480156108bf575f80fd5b506103806108ce366004614ab3565b611fed565b3480156108de575f80fd5b506103806108ed366004614bc1565b612367565b610380610900366004614bdc565b6124fa565b348015610910575f80fd5b5061035360985481565b348015610925575f80fd5b50610380610934366004614a0d565b612c0f565b610380610947366004614c12565b612cf5565b348015610957575f80fd5b506097546104dd9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610983575f80fd5b506103296109923660046149ce565b61370e565b3480156109a2575f80fd5b50610353609a5481565b3480156109b7575f80fd5b506103806109c63660046149ce565b613765565b3480156109d6575f80fd5b506103806109e5366004614a0d565b613822565b3480156109f5575f80fd5b5061035360a95481565b610a076138d6565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610a9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b2b6138d6565b5f8111610b94576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a92565b5f80610ba08585613957565b915091505f610bb3836001015160c01c90565b5f81815260a160205260409020549091508214610c2c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a92565b5f60a181610c3a8785614cac565b81526020019081526020015f205414610cd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a92565b609d548111610d65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a92565b610d70600182614cbf565b609e555b8315610f0757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610dbc8161370e565b15610e42575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e14908490614cac565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ebf575060a85481145b15610ec9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610d74575b505050505050565b60a85415610f79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a92565b610f81613972565b5f80610f8d8484613957565b915091505f610fa0836001015160c01c90565b5f81815260a160205260409020549091508214611019576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a92565b611022816114ec565b611088576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a92565b6110918161370e565b156110f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a92565b5f81815260a4602052604090206003015460ff1615611173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a92565b5f81815260a260205260409020600101544210156111ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a92565b605983015160a05f611200600185614cbf565b81526020019081526020015f205414611275576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a92565b5f81815260a06020526040902054156112ea576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a92565b80609d5460010114611358576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a92565b609d819055600160a35f61136d866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a060205260409020556113d860f98401601185015160c01c600986015160c01c6139df565b60a25f6113e6600184614cbf565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560a4919061141f9084614cbf565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d6114c8866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061151457505f82815260a1602052604090205415155b92915050565b6115226138d6565b5f8111801561153357506099548114155b611599576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a92565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6115e76138d6565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff16611675576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a92565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b18565b6116f66138d6565b6116ff5f613ab5565b565b5f54610100900460ff161580801561171f57505f54600160ff909116105b806117385750303b15801561173857505f5460ff166001145b6117c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a92565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611820575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff86161580611857575073ffffffffffffffffffffffffffffffffffffffff8516155b1561188e576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff871661190b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a92565b611913613b2b565b61191b613bc9565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611ac1575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611ad26138d6565b73ffffffffffffffffffffffffffffffffffffffff811615801590611b125750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b611b78576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a92565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611bf66138d6565b5f81118015611c06575060648111155b8015611c14575060a9548114155b611c7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a92565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016115d3565b60a85415611d22576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a92565b611d2a613972565b5f80611d368686613957565b915091505f611d49836001015160c01c90565b5f81815260a160205260409020549091508214611dc2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a92565b611dcb8161370e565b611e31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a92565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556099546002909101544291611ea891614cac565b11611f3c575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611f3791839190613c67565b611ac1565b611f47838686613dea565b611ac181336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613fc4565b611f8f6138d6565b60aa80545f909155611fa182826140aa565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016115d3565b611ff56138d6565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415612086576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a92565b5f806120928484613957565b915091505f6120a5836001015160c01c90565b90505f6120b3846079015190565b90508061211c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a92565b600984015160c01c1561218b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a92565b5f612197856019015190565b036121fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a92565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c44401461222a856039015190565b14612291576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a92565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b61236f6138d6565b80156124c85761237d61417c565b60a65460ff161561247a5760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a590925282208054919290916123de908490614cac565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6124d0614201565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa3361249d565b50565b335f908152609f602052604090205460ff16612572576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a92565b60a854156125dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a92565b6125e4613972565b60a65460ff1615612651576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a92565b8167ffffffffffffffff16609d54106126c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a92565b67ffffffffffffffff82165f90815260a160205260409020548114612747576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a92565b61275a8267ffffffffffffffff166114ec565b6127c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a92565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1615612862576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a92565b67ffffffffffffffff82165f90815260a26020526040902060010154421061290c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a92565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612976573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061299a9190614cd2565b341015612a03576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a92565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b997634604051612b6f91815260200190565b60405180910390a35f609d546001612b879190614cac565b90505b609e548111612bdf578267ffffffffffffffff168114612bcd576099545f82815260a2602052604081206001018054909190612bc7908490614cac565b90915550505b80612bd781614ce9565b915050612b8a565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003612c88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a92565b335f90815260a56020526040812055612ca182826140aa565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051612ce991815260200190565b60405180910390a25050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015612d7b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d9f9190614d20565b612e05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a92565b60a85415612e6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a92565b612e77613972565b612e846020830183614d3b565b60ff1615612eee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a92565b5f612efc6040840184614d5b565b91505080612f66576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a92565b6080830135612fd1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a92565b60a083013561303c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a92565b5f8061305361304e6020870187614d5b565b613957565b915091505f613066836001015160c01c90565b5f81815260a1602052604090205490915082146130df576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a92565b5f60a1816130ee846001614cac565b81526020019081526020015f205414613163576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a92565b609e5481146131ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a92565b5f6131dd846011015160c01c90565b90505f808061323c6131f260408c018c614d5b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613237905060608f018f614d5b565b614258565b94850194938401939250905061325560608b018b614d5b565b905061010060ff850104602002146132c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a92565b600194909401935f8049156132df575f49613301565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f61331160608d018d614d5b565b61331d915060f9614cac565b9050604051985060208102890160405261334b898d5f0160208101906133439190614d3b565b60ff166143f3565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a01526133b88961339960208e018e614d5b565b6040516133a7929190614dbc565b604051809103902060b99190910152565b60d989018890526133d5896133d060608f018f614d5b565b6143fa565b603989018290528089205f88815260a1602052604081209190915560a65460ff161561342a5760a7545f90815260a46020526040902060020154609954429161341d91614cac565b6134279190614cbf565b90505b6040518060800160405280428152602001826098544261344a9190614cac565b6134549190614cac565b81526020016134a58f806040019061346c9190614d5b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061440692505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015613533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135579190614cd2565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c35906135cc906135c6908f018f614d5b565b5f61445d565b5f8e80604001906135dd9190614d5b565b6040518663ffffffff1660e01b81526004016135fd959493929190614e12565b602060405180830381865afa158015613618573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061363c9190614d20565b6136c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a92565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16158015906115145750505f90815260a46020526040902060030154610100900460ff161590565b61376d6138d6565b5f8111801561377e57506098548114155b6137e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a92565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016115d3565b61382a6138d6565b73ffffffffffffffffffffffffffffffffffffffff81166138cd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a92565b6124f781613ab5565b60335473ffffffffffffffffffffffffffffffffffffffff1633146116ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a92565b5f805f61396485856144b1565b812090969095509350505050565b60655460ff16156116ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a92565b805f036139eb57505050565b8082035f805b83811015610f0757610100818503811115613a0b57508084035b8651609b546040517f55f613ce00000000000000000000000000000000000000000000000000000000815260048101879052602481018490526044810183905260209099019891945073ffffffffffffffffffffffffffffffffffffffff16906355f613ce906064015f604051808303815f87803b158015613a8b575f80fd5b505af1158015613a9d573d5f803e3d5ffd5b505050506101008401935050610100810190506139f1565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613bc1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a92565b6116ff6145bc565b5f54610100900460ff16613c5f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a92565b6116ff61467c565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af1158015613cf8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d1c9190614cd2565b5f86815260a46020526040902060010154909150613d3b908290614cac565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a590915281208054909190613d87908490614cac565b9091555050604051613d9a908490614e92565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613e51576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a92565b5f613e60846001015160c01c90565b90505f613e6e856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613e9d876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a848613f6c885160f81c90565b858888866040518663ffffffff1660e01b8152600401613f90959493929190614ebe565b5f6040518083038186803b158015613fa6575f80fd5b505afa158015613fb8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613fe89084614eef565b613ff29190614f06565b9050613ffe8183614cbf565b60aa5f82825461400e9190614cac565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a5602052604081208054839290614047908490614cac565b909155505060405161405a908490614e92565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015614178575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f8114614106576040519150601f19603f3d011682016040523d82523d5f602084013e61410b565b606091505b5050905080614176576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a92565b505b5050565b614184613972565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586141d73390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b61420961471b565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336141d7565b60405185515f91829160208901919081908490614276908590614787565b90506002840193505f5b818110156142fa57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f6142d0603c83614eef565b6142da9087614cac565b90505f6142eb82603a015160f01c90565b97909701965050600101614280565b506020850282016040525b80156143df575f61431a85603a015160f01c90565b905061432a83828d8d8d8d61481c565b92505f61433b866038015160f01c90565b9050818110156143a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a92565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01614305565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f614421828651614787565b90505f5b614430600183614cbf565b81101561444657603c9390930192600101614425565b505f614453845160c01c90565b9695505050505050565b60605f80808080614470888a018a61502b565b955095509550955095505081871061448e5794506144aa9350505050565b8387106144a25782955050505050506144aa565b509293505050505b9392505050565b5f8160f981101561451e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a92565b6040519150808483378082016040525f61453c836009015160c01c90565b905061010060ff82010460200260f90182146145b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a92565b509250929050565b5f54610100900460ff16614652576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a92565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff16614712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a92565b6116ff33613ab5565b60655460ff166116ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a92565b5f614793835160f01c90565b9050805f036147ce576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6147d9603c82614eef565b6147e4906002614cac565b8214611514576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f0361482b575085614453565b609b5473ffffffffffffffffffffffffffffffffffffffff165f80805b8981101561492b5760ff89169150600889901c811580614866575082155b15614875578060200288013593505b600184841c165f0361491a576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f9073ffffffffffffffffffffffffffffffffffffffff87169063ae453cd590602401602060405180830381865afa1580156148ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149109190614cd2565b8d52506020909b019a5b506001988901989788019701614848565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156149c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a92565b509798975050505050505050565b5f602082840312156149de575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614a08575f80fd5b919050565b5f60208284031215614a1d575f80fd5b6144aa826149e5565b5f8083601f840112614a36575f80fd5b50813567ffffffffffffffff811115614a4d575f80fd5b602083019150836020828501011115614a64575f80fd5b9250929050565b5f805f60408486031215614a7d575f80fd5b833567ffffffffffffffff811115614a93575f80fd5b614a9f86828701614a26565b909790965060209590950135949350505050565b5f8060208385031215614ac4575f80fd5b823567ffffffffffffffff811115614ada575f80fd5b614ae685828601614a26565b90969095509350505050565b5f805f805f8060c08789031215614b07575f80fd5b614b10876149e5565b9550614b1e602088016149e5565b9450614b2c604088016149e5565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614b60575f80fd5b843567ffffffffffffffff80821115614b77575f80fd5b614b8388838901614a26565b90965094506020870135915080821115614b9b575f80fd5b50614ba887828801614a26565b95989497509550505050565b80151581146124f7575f80fd5b5f60208284031215614bd1575f80fd5b81356144aa81614bb4565b5f8060408385031215614bed575f80fd5b823567ffffffffffffffff81168114614c04575f80fd5b946020939093013593505050565b5f8060408385031215614c23575f80fd5b823567ffffffffffffffff80821115614c3a575f80fd5b9084019060e08287031215614c4d575f80fd5b90925060208401359080821115614c62575f80fd5b50830160608186031215614c74575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561151457611514614c7f565b8181038181111561151457611514614c7f565b5f60208284031215614ce2575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614d1957614d19614c7f565b5060010190565b5f60208284031215614d30575f80fd5b81516144aa81614bb4565b5f60208284031215614d4b575f80fd5b813560ff811681146144aa575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614d8e575f80fd5b83018035915067ffffffffffffffff821115614da8575f80fd5b602001915036819003821315614a64575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b81811015614e6957845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101614e37565b50508760408601528481036060860152614e84818789614dcb565b9a9950505050505050505050565b5f82515f5b81811015614eb15760208186018101518583015201614e97565b505f920191825250919050565b858152846020820152608060408201525f614edd608083018587614dcb565b90508260608301529695505050505050565b808202811582820484141761151457611514614c7f565b5f82614f39577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614f7a575f80fd5b8135602067ffffffffffffffff80831115614f9757614f97614f3e565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614fda57614fda614f3e565b6040529384526020818701810194908101925087851115614ff9575f80fd5b6020870191505b8482101561502057615011826149e5565b83529183019190830190615000565b979650505050505050565b5f805f805f8060c08789031215615040575f80fd5b86359550602087013567ffffffffffffffff8082111561505e575f80fd5b61506a8a838b01614f6b565b9650604089013595506060890135915080821115615086575f80fd5b6150928a838b01614f6b565b94506080890135935060a08901359150808211156150ae575f80fd5b506150bb89828a01614f6b565b915050929550929550929556fea164736f6c6343000818000a" +var RollupDeployedBin = "0x6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109e2578063f2fde38b14610a01578063fb1e8b0414610a20575f80fd5b8063ddd8a3dc14610982578063de8b3035146109ae578063dff7827e146109cd575f80fd5b8063ce5db8d6116100b7578063ce5db8d61461093b578063d279c19114610950578063d63b35491461096f575f80fd5b8063b3e0a509146108ea578063bedb86fb14610909578063cd4edc6914610928575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610897578063b3484425146108ac578063b35dac4e146108cb575f80fd5b8063a479265d14610838578063a4f209b01461084d578063abc8d68d1461086c575f80fd5b8063910129d41161016c578063910129d4146107ba57806397fc007c146107eb578063a415d8dc1461080a575f80fd5b806388b1ea09146106ad5780638da5cb5b146106c65780638f1d3776146106f0575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d1461065b578063715018a61461067a578063728cdbca1461068e575f80fd5b80635ef7a94a146105845780635f77cf1d146105e457806368589dfa14610630575f80fd5b80633e001b661161022c5780633e001b661461053957806357e0af6c1461054e5780635c975abb1461056d575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a1461050d575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614ab8565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614af7565b610a35565b005b348015610398575f80fd5b5061038b6103a7366004614b55565b610b59565b3480156103b7575f80fd5b506103346103c6366004614ab8565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd366004614b9d565b610f45565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614ab8565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614ab8565b611542565b348015610471575f80fd5b5061035e610480366004614ab8565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614ab8565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610340565b348015610518575f80fd5b50609b546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b348015610544575f80fd5b5061035e60aa5481565b348015610559575f80fd5b5061038b610568366004614ab8565b611570565b348015610578575f80fd5b5060655460ff16610334565b34801561058f575f80fd5b506105c461059e366004614ab8565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105ef575f80fd5b506106177f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b34801561063b575f80fd5b5061035e61064a366004614ab8565b60ab6020525f908152604090205481565b348015610666575f80fd5b5061038b610675366004614af7565b611635565b348015610685575f80fd5b5061038b611744565b348015610699575f80fd5b5061038b6106a8366004614bdc565b611757565b3480156106b8575f80fd5b5060a6546103349060ff1681565b3480156106d1575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104e8565b3480156106fb575f80fd5b5061076961070a366004614ab8565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b3480156107c5575f80fd5b506103346107d4366004614ab8565b5f90815260a4602052604090206003015460ff1690565b3480156107f6575f80fd5b5061038b610805366004614af7565b611b20565b348015610815575f80fd5b50610334610824366004614af7565b609f6020525f908152604090205460ff1681565b348015610843575f80fd5b5061035e60995481565b348015610858575f80fd5b5061038b610867366004614ab8565b611c44565b348015610877575f80fd5b5061035e610886366004614af7565b60a56020525f908152604090205481565b3480156108a2575f80fd5b5061035e60a85481565b3480156108b7575f80fd5b5061038b6108c6366004614c37565b611d0e565b3480156108d6575f80fd5b5061038b6108e5366004614af7565b611fdd565b3480156108f5575f80fd5b5061038b610904366004614b9d565b612043565b348015610914575f80fd5b5061038b610923366004614cab565b6123c7565b61038b610936366004614cc6565b61255a565b348015610946575f80fd5b5061035e60985481565b34801561095b575f80fd5b5061038b61096a366004614af7565b612c6f565b61038b61097d366004614cfc565b612d55565b34801561098d575f80fd5b506097546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109b9575f80fd5b506103346109c8366004614ab8565b6137f8565b3480156109d8575f80fd5b5061035e609a5481565b3480156109ed575f80fd5b5061038b6109fc366004614ab8565b61384f565b348015610a0c575f80fd5b5061038b610a1b366004614af7565b61390c565b348015610a2b575f80fd5b5061035e60a95481565b610a3d6139c0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b616139c0565b5f8111610bca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610ac8565b5f80610bd68585613a41565b915091505f610be9836001015160c01c90565b5f81815260a160205260409020549091508214610c62576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b5f60a181610c708785614d96565b81526020019081526020015f205414610d0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b609d548111610d9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b610da6600182614da9565b609e555b8315610f3d57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610df2816137f8565b15610e78575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e4a908490614d96565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ef5575060a85481145b15610eff575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610daa575b505050505050565b60a85415610faf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b610fb7613a5c565b5f80610fc38484613a41565b915091505f610fd6836001015160c01c90565b5f81815260a16020526040902054909150821461104f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b61105881611542565b6110be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610ac8565b6110c7816137f8565b1561112e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610ac8565b5f81815260a4602052604090206003015460ff16156111a9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610ac8565b5f81815260a26020526040902060010154421015611223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610ac8565b605983015160a05f611236600185614da9565b81526020019081526020015f2054146112ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610ac8565b5f81815260a0602052604090205415611320576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610ac8565b80609d546001011461138e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610ac8565b609d819055600160a35f6113a3866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561140e60f98401601185015160c01c600986015160c01c613ac9565b60a25f61141c600184614da9565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906114559084614da9565b81526020019081526020015f205f905560a45f6001836114759190614da9565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d61151e866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061156a57505f82815260a1602052604090205415155b92915050565b6115786139c0565b5f8111801561158957506099548114155b6115ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610ac8565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b61163d6139c0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff166116cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610ac8565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b4e565b61174c6139c0565b6117555f613b9f565b565b5f54610100900460ff161580801561177557505f54600160ff909116105b8061178e5750303b15801561178e57505f5460ff166001145b61181a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610ac8565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611876575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff861615806118ad575073ffffffffffffffffffffffffffffffffffffffff8516155b156118e4576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8716611961576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610ac8565b611969613c15565b611971613cb3565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611b17575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611b286139c0565b73ffffffffffffffffffffffffffffffffffffffff811615801590611b685750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b611bce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610ac8565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611c4c6139c0565b5f81118015611c5c575060648111155b8015611c6a575060a9548114155b611cd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610ac8565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611629565b60a85415611d78576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b611d80613a5c565b5f80611d8c8686613a41565b915091505f611d9f836001015160c01c90565b5f81815260a160205260409020549091508214611e18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b611e21816137f8565b611e87576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610ac8565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556099546002909101544291611efe91614d96565b11611f92575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611f8d91839190613d51565b611b17565b611f9d838686613ed4565b611b1781336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506140ae565b611fe56139c0565b60aa80545f909155611ff78282614194565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611629565b61204b6139c0565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea54156120dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610ac8565b5f806120e88484613a41565b915091505f6120fb836001015160c01c90565b90505f612109846079015190565b905080612172576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610ac8565b600984015160c01c156121e1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610ac8565b5f6121ed856019015190565b03612254576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610ac8565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612280856039015190565b146122e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610ac8565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6123cf6139c0565b8015612528576123dd614266565b60a65460ff16156124da5760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a5909252822080549192909161243e908490614d96565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6125306142eb565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336124fd565b50565b335f908152609f602052604090205460ff166125d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610ac8565b60a8541561263c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b612644613a5c565b60a65460ff16156126b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610ac8565b8167ffffffffffffffff16609d5410612726576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a1602052604090205481146127a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b6127ba8267ffffffffffffffff16611542565b612820576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16156128c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a26020526040902060010154421061296c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610ac8565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129fa9190614dbc565b341015612a63576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610ac8565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b997634604051612bcf91815260200190565b60405180910390a35f609d546001612be79190614d96565b90505b609e548111612c3f578267ffffffffffffffff168114612c2d576099545f82815260a2602052604081206001018054909190612c27908490614d96565b90915550505b80612c3781614dd3565b915050612bea565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003612ce8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610ac8565b335f90815260a56020526040812055612d018282614194565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051612d4991815260200190565b60405180910390a25050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015612ddb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612dff9190614e0a565b612e65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610ac8565b60a85415612ecf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b612ed7613a5c565b612ee46020830183614e25565b60ff1615612f4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610ac8565b5f612f5c6040840184614e45565b91505080612fc6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610ac8565b6080830135613031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610ac8565b60a083013561309c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610ac8565b5f806130b36130ae6020870187614e45565b613a41565b915091505f6130c6836001015160c01c90565b90505f60a1816130d7846001614d96565b81526020019081526020015f20541461314c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610ac8565b609e5481146131b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610ac8565b5f81815260a16020526040902054821461322d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610ac8565b5f81815260ab60205260409020546080870135146132a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610ac8565b5f6132b6846011015160c01c90565b90505f80806133156132cb60408c018c614e45565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613310905060608f018f614e45565b614342565b94850194938401939250905061332e60608b018b614e45565b905061010060ff850104602002146133a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610ac8565b600194909401935f8049156133b8575f496133da565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f6133ea60608d018d614e45565b6133f6915060f9614d96565b90506040519850602081028901604052613424898d5f01602081019061341c9190614e25565b60ff166144dd565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a01526134918961347260208e018e614e45565b604051613480929190614ea6565b604051809103902060b99190910152565b60d989018890526134ae896134a960608f018f614e45565b6144e4565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156135145760a7545f90815260a46020526040902060020154609954429161350791614d96565b6135119190614da9565b90505b604051806080016040528042815260200182609854426135349190614d96565b61353e9190614d96565b815260200161358f8f80604001906135569190614e45565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506144f092505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa15801561361d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136419190614dbc565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c35906136b6906136b0908f018f614e45565b5f614547565b5f8e80604001906136c79190614e45565b6040518663ffffffff1660e01b81526004016136e7959493929190614efc565b602060405180830381865afa158015613702573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137269190614e0a565b6137b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff161580159061156a5750505f90815260a46020526040902060030154610100900460ff161590565b6138576139c0565b5f8111801561386857506098548114155b6138ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610ac8565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611629565b6139146139c0565b73ffffffffffffffffffffffffffffffffffffffff81166139b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610ac8565b61255781613b9f565b60335473ffffffffffffffffffffffffffffffffffffffff163314611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ac8565b5f805f613a4e858561459b565b812090969095509350505050565b60655460ff1615611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610ac8565b805f03613ad557505050565b8082035f805b83811015610f3d57610100818503811115613af557508084035b8651609b546040517f55f613ce00000000000000000000000000000000000000000000000000000000815260048101879052602481018490526044810183905260209099019891945073ffffffffffffffffffffffffffffffffffffffff16906355f613ce906064015f604051808303815f87803b158015613b75575f80fd5b505af1158015613b87573d5f803e3d5ffd5b50505050610100840193505061010081019050613adb565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613cab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b6117556146a6565b5f54610100900460ff16613d49576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b611755614766565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af1158015613de2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e069190614dbc565b5f86815260a46020526040902060010154909150613e25908290614d96565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a590915281208054909190613e71908490614d96565b9091555050604051613e84908490614f7c565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613f3b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610ac8565b5f613f4a846001015160c01c90565b90505f613f58856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613f87876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a848614056885160f81c90565b858888866040518663ffffffff1660e01b815260040161407a959493929190614fa8565b5f6040518083038186803b158015614090575f80fd5b505afa1580156140a2573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906140d29084614fd9565b6140dc9190614ff0565b90506140e88183614da9565b60aa5f8282546140f89190614d96565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a5602052604081208054839290614131908490614d96565b9091555050604051614144908490614f7c565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015614262575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f81146141f0576040519150601f19603f3d011682016040523d82523d5f602084013e6141f5565b606091505b5050905080614260576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610ac8565b505b5050565b61426e613a5c565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586142c13390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6142f3614805565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336142c1565b60405185515f91829160208901919081908490614360908590614871565b90506002840193505f5b818110156143e457603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f6143ba603c83614fd9565b6143c49087614d96565b90505f6143d582603a015160f01c90565b9790970196505060010161436a565b506020850282016040525b80156144c9575f61440485603a015160f01c90565b905061441483828d8d8d8d614906565b92505f614425866038015160f01c90565b905081811015614491576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610ac8565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016143ef565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f61450b828651614871565b90505f5b61451a600183614da9565b81101561453057603c939093019260010161450f565b505f61453d845160c01c90565b9695505050505050565b60605f8080808061455a888a018a615115565b95509550955095509550508187106145785794506145949350505050565b83871061458c578295505050505050614594565b509293505050505b9392505050565b5f8160f9811015614608576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610ac8565b6040519150808483378082016040525f614626836009015160c01c90565b905061010060ff82010460200260f901821461469e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610ac8565b509250929050565b5f54610100900460ff1661473c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff166147fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b61175533613b9f565b60655460ff16611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610ac8565b5f61487d835160f01c90565b9050805f036148b8576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6148c3603c82614fd9565b6148ce906002614d96565b821461156a576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f0361491557508561453d565b609b5473ffffffffffffffffffffffffffffffffffffffff165f80805b89811015614a155760ff89169150600889901c811580614950575082155b1561495f578060200288013593505b600184841c165f03614a04576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f9073ffffffffffffffffffffffffffffffffffffffff87169063ae453cd590602401602060405180830381865afa1580156149d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149fa9190614dbc565b8d52506020909b019a5b506001988901989788019701614932565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615614aaa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610ac8565b509798975050505050505050565b5f60208284031215614ac8575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614af2575f80fd5b919050565b5f60208284031215614b07575f80fd5b61459482614acf565b5f8083601f840112614b20575f80fd5b50813567ffffffffffffffff811115614b37575f80fd5b602083019150836020828501011115614b4e575f80fd5b9250929050565b5f805f60408486031215614b67575f80fd5b833567ffffffffffffffff811115614b7d575f80fd5b614b8986828701614b10565b909790965060209590950135949350505050565b5f8060208385031215614bae575f80fd5b823567ffffffffffffffff811115614bc4575f80fd5b614bd085828601614b10565b90969095509350505050565b5f805f805f8060c08789031215614bf1575f80fd5b614bfa87614acf565b9550614c0860208801614acf565b9450614c1660408801614acf565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614c4a575f80fd5b843567ffffffffffffffff80821115614c61575f80fd5b614c6d88838901614b10565b90965094506020870135915080821115614c85575f80fd5b50614c9287828801614b10565b95989497509550505050565b8015158114612557575f80fd5b5f60208284031215614cbb575f80fd5b813561459481614c9e565b5f8060408385031215614cd7575f80fd5b823567ffffffffffffffff81168114614cee575f80fd5b946020939093013593505050565b5f8060408385031215614d0d575f80fd5b823567ffffffffffffffff80821115614d24575f80fd5b9084019060e08287031215614d37575f80fd5b90925060208401359080821115614d4c575f80fd5b50830160608186031215614d5e575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561156a5761156a614d69565b8181038181111561156a5761156a614d69565b5f60208284031215614dcc575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614e0357614e03614d69565b5060010190565b5f60208284031215614e1a575f80fd5b815161459481614c9e565b5f60208284031215614e35575f80fd5b813560ff81168114614594575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614e78575f80fd5b83018035915067ffffffffffffffff821115614e92575f80fd5b602001915036819003821315614b4e575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b81811015614f5357845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101614f21565b50508760408601528481036060860152614f6e818789614eb5565b9a9950505050505050505050565b5f82515f5b81811015614f9b5760208186018101518583015201614f81565b505f920191825250919050565b858152846020820152608060408201525f614fc7608083018587614eb5565b90508260608301529695505050505050565b808202811582820484141761156a5761156a614d69565b5f82615023577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112615064575f80fd5b8135602067ffffffffffffffff8083111561508157615081615028565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156150c4576150c4615028565b60405293845260208187018101949081019250878511156150e3575f80fd5b6020870191505b8482101561510a576150fb82614acf565b835291830191908301906150ea565b979650505050505050565b5f805f805f8060c0878903121561512a575f80fd5b86359550602087013567ffffffffffffffff80821115615148575f80fd5b6151548a838b01615055565b9650604089013595506060890135915080821115615170575f80fd5b61517c8a838b01615055565b94506080890135935060a0890135915080821115615198575f80fd5b506151a589828a01615055565b915050929550929550929556fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(RollupStorageLayoutJSON), RollupStorageLayout); err != nil { From abcff342a0d57e253c954854595247d891b7965d Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Fri, 1 Nov 2024 14:34:25 +0800 Subject: [PATCH 04/33] Add fee sum storage (#619) --- tx-submitter/db/db.go | 49 +++++++++++ tx-submitter/db/db_test.go | 21 +++++ tx-submitter/entry.go | 29 ++++--- tx-submitter/flags/flags.go | 7 ++ tx-submitter/metrics/metrics.go | 22 ++--- tx-submitter/services/rollup.go | 129 ++++++++++++++++++++++++----- tx-submitter/utils/config.go | 4 + tx-submitter/utils/methods.go | 74 +++++++++++++++++ tx-submitter/utils/methods_test.go | 86 +++++++++++++++++++ 9 files changed, 377 insertions(+), 44 deletions(-) create mode 100644 tx-submitter/db/db.go create mode 100644 tx-submitter/db/db_test.go create mode 100644 tx-submitter/utils/methods_test.go diff --git a/tx-submitter/db/db.go b/tx-submitter/db/db.go new file mode 100644 index 000000000..4a5914c49 --- /dev/null +++ b/tx-submitter/db/db.go @@ -0,0 +1,49 @@ +package db + +import ( + "fmt" + "strconv" + + "morph-l2/tx-submitter/utils" + + "github.com/morph-l2/go-ethereum/ethdb/leveldb" +) + +var ( + ErrKeyNotFound = fmt.Errorf("not found") +) + +type Db struct { + db *leveldb.Database +} + +func New(pathname string) (*Db, error) { + // leveldb + ldb, err := leveldb.New(pathname, 0, 0, "tx-submitter", false) + if err != nil { + return nil, fmt.Errorf("failed to create leveldb: %w", err) + } + return &Db{db: ldb}, nil +} +func (d *Db) GetFloat(key string) (float64, error) { + v, err := d.db.Get([]byte(key)) + if err != nil { + return 0, fmt.Errorf("failed get key from leveldb %s: %w", key, err) + } + res, err := utils.ParseStringToType[float64](string(v)) + if err != nil { + return 0, fmt.Errorf("failed to parse string to float64 %s", err) + } + return res, nil +} +func (d *Db) PutFloat(key string, val float64) error { + valStr := strconv.FormatFloat(val, 'f', -1, 64) + err := d.db.Put([]byte(key), []byte(valStr)) + if err != nil { + return fmt.Errorf("failed to put key into leveldb %w", err) + } + return nil +} +func (d *Db) Close() error { + return d.db.Close() +} diff --git a/tx-submitter/db/db_test.go b/tx-submitter/db/db_test.go new file mode 100644 index 000000000..a7ecac6da --- /dev/null +++ b/tx-submitter/db/db_test.go @@ -0,0 +1,21 @@ +package db + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func Test_Get_Put(t *testing.T) { + db, err := New("test") + require.NoError(t, err) + + expect := 1.123456789012345 + // expectStr := "1.123456789012345" + + err = db.PutFloat("test", expect) + require.NoError(t, err) + v, err := db.GetFloat("test") + require.NoError(t, err) + require.Equal(t, expect, v) +} diff --git a/tx-submitter/entry.go b/tx-submitter/entry.go index 0145243ad..1b9809b3a 100644 --- a/tx-submitter/entry.go +++ b/tx-submitter/entry.go @@ -10,8 +10,10 @@ import ( "os" "os/signal" "strings" + "time" "morph-l2/bindings/bindings" + "morph-l2/tx-submitter/db" "morph-l2/tx-submitter/event" "morph-l2/tx-submitter/iface" "morph-l2/tx-submitter/metrics" @@ -65,6 +67,7 @@ func Main() func(ctx *cli.Context) error { "rough_estimate_base_gas", cfg.RollupTxGasBase, "rough_estimate_per_l1_msg", cfg.RollupTxGasPerL1Msg, "log_level", cfg.LogLevel, + "leveldb_pathname", cfg.LeveldbPathName, ) ctx, cancel := context.WithCancel(context.Background()) @@ -96,14 +99,11 @@ func Main() func(ctx *cli.Context) error { } output = io.MultiWriter(output, logFile) } - logHandler := log.StreamHandler(output, log.TerminalFormat(false)) - logLevel, err := log.LvlFromString(cfg.LogLevel) if err != nil { return err } - log.Root().SetHandler(log.LvlFilterHandler(logLevel, logHandler)) l1RpcClient, err := rpc.Dial(cfg.L1EthRpc) @@ -189,6 +189,11 @@ func Main() func(ctx *cli.Context) error { // start rorator event indexer rotator.StartEventIndexer() + ldb, err := db.New(cfg.LeveldbPathName) + if err != nil { + return fmt.Errorf("failed to connect leveldb: %w", err) + } + // new rollup service sr := services.NewRollup( ctx, @@ -205,11 +210,9 @@ func Main() func(ctx *cli.Context) error { cfg, rsaPriv, rotator, + ldb, ) - // init rollup service - if err := sr.PreCheck(); err != nil { - return err - } + // metrics { if cfg.MetricsServerEnable { @@ -223,11 +226,6 @@ func Main() func(ctx *cli.Context) error { log.Info("metrics server enabled", "host", cfg.MetricsHostname, "port", cfg.MetricsPort) } - // log external sign info - if cfg.ExternalSign { - - } - log.Info("external sign info", "external_sign", cfg.ExternalSign, "appid", cfg.ExternalSignAppid, @@ -236,7 +234,12 @@ func Main() func(ctx *cli.Context) error { "url", cfg.ExternalSignUrl, ) - sr.Start() + err = sr.Start() + for err != nil { + log.Error("rollup service start failed", "error", err) + time.Sleep(time.Second * 5) + err = sr.Start() + } // Catch CTRL-C to ensure a graceful shutdown. interrupt := make(chan os.Signal, 1) diff --git a/tx-submitter/flags/flags.go b/tx-submitter/flags/flags.go index dcfe874ca..522546488 100644 --- a/tx-submitter/flags/flags.go +++ b/tx-submitter/flags/flags.go @@ -292,6 +292,12 @@ var ( Value: 100, EnvVar: prefixEnvVar("EVENT_INDEX_STEP"), } + LeveldbPathNameFlag = cli.StringFlag{ + Name: "leveldb_path_name", + Usage: "The path name of the leveldb", + EnvVar: prefixEnvVar("LEVELDB_PATH_NAME"), + Value: "submitter-leveldb", + } ) var requiredFlags = []cli.Flag{ @@ -345,6 +351,7 @@ var optionalFlags = []cli.Flag{ RotatorBufferFlag, StakingEventStoreFileFlag, EventIndexStepFlag, + LeveldbPathNameFlag, } // Flags contains the list of configuration options available to the binary. diff --git a/tx-submitter/metrics/metrics.go b/tx-submitter/metrics/metrics.go index 05f9d1afe..2b09d467c 100644 --- a/tx-submitter/metrics/metrics.go +++ b/tx-submitter/metrics/metrics.go @@ -19,8 +19,8 @@ type Metrics struct { FinalizeCostSum prometheus.Counter RollupCost prometheus.Gauge FinalizeCost prometheus.Gauge - L1FeeCollectionSum prometheus.Counter - L1FeeCollection prometheus.Gauge + CollectedL1FeeSum prometheus.Counter + CollectedL1Fee prometheus.Gauge IndexerBlockProcessed prometheus.Gauge } @@ -57,14 +57,14 @@ func NewMetrics() *Metrics { Help: "Finalize cost", Namespace: metricsNamespace, }), - L1FeeCollection: promauto.NewGauge(prometheus.GaugeOpts{ - Name: "submitter_l1_fee_collection", - Help: "L1 fee collection", + CollectedL1Fee: promauto.NewGauge(prometheus.GaugeOpts{ + Name: "submitter_collected_l1_fee", + Help: "Collected L1 fee for every batch", Namespace: metricsNamespace, }), - L1FeeCollectionSum: promauto.NewCounter(prometheus.CounterOpts{ - Name: "submitter_l1_fee_collection_sum", - Help: "L1 fee collection", + CollectedL1FeeSum: promauto.NewCounter(prometheus.CounterOpts{ + Name: "submitter_collected_l1_fee_sum", + Help: "Collected L1 fee for all batches committed ", Namespace: metricsNamespace, }), @@ -101,12 +101,12 @@ func (m *Metrics) SetRollupCost(cost float64) { func (m *Metrics) SetFinalizeCost(cost float64) { m.FinalizeCostSum.Add(cost) - m.RollupCost.Set(cost) + m.FinalizeCost.Set(cost) } func (m *Metrics) SetCollectedL1Fee(cost float64) { - m.L1FeeCollectionSum.Add(cost) - m.L1FeeCollection.Set(cost) + m.CollectedL1FeeSum.Add(cost) + m.CollectedL1Fee.Set(cost) } func (m *Metrics) SetIndexerBlockProcessed(blockNumber uint64) { diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index f18e11b61..63a654123 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -27,6 +27,7 @@ import ( "github.com/tendermint/tendermint/blssignatures" "morph-l2/bindings/bindings" + "morph-l2/tx-submitter/db" "morph-l2/tx-submitter/event" "morph-l2/tx-submitter/iface" "morph-l2/tx-submitter/localpool" @@ -35,38 +36,43 @@ import ( ) const ( - txSlotSize = 32 * 1024 - txMaxSize = 4 * txSlotSize // 128KB - rotatorWait = 3 * time.Second + txSlotSize = 32 * 1024 + txMaxSize = 4 * txSlotSize // 128KB + rotatorWait = 3 * time.Second + rollupSumKey = "rollup_sum" + finalizeSumKey = "finalize_sum" + collectedL1FeeSumKey = "collected_l1_fee_sum" ) type Rollup struct { - ctx context.Context - metrics *metrics.Metrics - + ctx context.Context + metrics *metrics.Metrics l1RpcClient *rpc.Client L1Client iface.Client L2Clients []iface.L2Client Rollup iface.IRollup - - Staking iface.IL1Staking - - chainId *big.Int - privKey *ecdsa.PrivateKey - rollupAddr common.Address - abi *abi.ABI - + Staking iface.IL1Staking + chainId *big.Int + privKey *ecdsa.PrivateKey + rollupAddr common.Address + abi *abi.ABI // rotator - rotator *Rotator - pendingTxs *PendingTxs - + rotator *Rotator + pendingTxs *PendingTxs rollupFinalizeMu sync.Mutex externalRsaPriv *rsa.PrivateKey // cfg cfg utils.Config // signer signer types.Signer - + // leveldb + ldb *db.Db + // rollupFeeSum + rollupFeeSum float64 + // finalizeFeeSum + finalizeFeeSum float64 + // collectedL1FeeSum + collectedL1FeeSum float64 // batchcache batchCache map[uint64]*eth.RPCRollupBatch } @@ -86,6 +92,7 @@ func NewRollup( cfg utils.Config, rsaPriv *rsa.PrivateKey, rotator *Rotator, + ldb *db.Db, ) *Rollup { return &Rollup{ @@ -105,10 +112,16 @@ func NewRollup( signer: types.LatestSignerForChainID(chainId), externalRsaPriv: rsaPriv, batchCache: make(map[uint64]*eth.RPCRollupBatch), + ldb: ldb, } } -func (r *Rollup) Start() { +func (r *Rollup) Start() error { + + // init rollup service + if err := r.PreCheck(); err != nil { + return err + } // journal jn := localpool.New(r.cfg.JournalFilePath) @@ -125,6 +138,12 @@ func (r *Rollup) Start() { r.pendingTxs.Recover(txs, r.abi) } + // init fee metrics sum + err = r.InitFeeMetricsSum() + if err != nil { + return fmt.Errorf("init fee metrics sum failed: %w", err) + } + // metrics go utils.Loop(r.ctx, 10*time.Second, func() { @@ -189,7 +208,7 @@ func (r *Rollup) Start() { } } }) - + return nil } func (r *Rollup) ProcessTx() error { @@ -324,10 +343,21 @@ func (r *Rollup) ProcessTx() error { log.Warn("fee is zero", "hash", rtx.Hash().Hex()) } if method == "commitBatch" { + r.rollupFeeSum += fee + err = r.ldb.PutFloat(rollupSumKey, r.rollupFeeSum) + if err != nil { + log.Warn("put rollup fee sum error", "error", err) + } r.metrics.SetRollupCost(fee) index := utils.ParseParentBatchIndex(rtx.Data()) + 1 batch, ok := r.batchCache[index] if ok { + collectedL1FeeFloat := ToEtherFloat((*big.Int)(batch.CollectedL1Fee)) + r.collectedL1FeeSum += collectedL1FeeFloat + err = r.ldb.PutFloat(collectedL1FeeSumKey, r.collectedL1FeeSum) + if err != nil { + log.Warn("put collected l1 fee sum error", "error", err) + } r.metrics.SetCollectedL1Fee(ToEtherFloat((*big.Int)(batch.CollectedL1Fee))) // remove batch from cache delete(r.batchCache, index) @@ -338,6 +368,11 @@ func (r *Rollup) ProcessTx() error { } } else if method == "finalizeBatch" { + r.finalizeFeeSum += fee + err = r.ldb.PutFloat(finalizeSumKey, r.finalizeFeeSum) + if err != nil { + log.Warn("put finalize fee sum error", "error", err) + } r.metrics.SetFinalizeCost(fee) } } @@ -1235,3 +1270,57 @@ func (r *Rollup) RoughFinalizeGasEstimate() uint64 { func (r *Rollup) GetModuleName() string { return "rollup" } + +func (r *Rollup) InitFeeMetricsSum() error { + // try to init rollupFeeSum & finalizeFeeSum + // read rollupFeeSum + rollupFeeSum, err := r.ldb.GetFloat(rollupSumKey) + if err != nil { + log.Warn("read rollupFeeSum from leveldb failed", "error", err) + if utils.ErrStringMatch(err, db.ErrKeyNotFound) { + err = r.ldb.PutFloat(rollupSumKey, 0) + if err != nil { + return fmt.Errorf("put rollupFeeSum to leveldb failed, key: %s, %w", rollupSumKey, err) + } + } else { + return fmt.Errorf("get data from leveldb faild, key: %s, %w", rollupSumKey, err) + } + } + log.Info("rollupFeeSum: %f", rollupFeeSum) + finalizeFeeSum, err := r.ldb.GetFloat(finalizeSumKey) + if err != nil { + log.Warn("read finalizeFeeSum from leveldb failed", "error", err) + if utils.ErrStringMatch(err, db.ErrKeyNotFound) { + err = r.ldb.PutFloat(finalizeSumKey, 0) + if err != nil { + return fmt.Errorf("put finalizeFeeSum to leveldb failed, key: %s, %w", finalizeSumKey, err) + } + } else { + return fmt.Errorf("get data from leveldb faild, key: %s, %w", finalizeSumKey, err) + } + } + log.Info("finalizeFeeSum: %f", finalizeFeeSum) + collectedL1FeeSum, err := r.ldb.GetFloat(collectedL1FeeSumKey) + if err != nil { + log.Warn("read collectedL1FeeSum from leveldb failed", "error", err) + if utils.ErrStringMatch(err, db.ErrKeyNotFound) { + err = r.ldb.PutFloat(collectedL1FeeSumKey, 0) + if err != nil { + return fmt.Errorf("put collectedL1FeeSum to leveldb failed, key: %s, %w", collectedL1FeeSumKey, err) + } + } else { + return fmt.Errorf("get data from leveldb faild, key: %s, %w", collectedL1FeeSumKey, err) + } + } + r.collectedL1FeeSum = collectedL1FeeSum + log.Info("collectedL1FeeSum: %f", collectedL1FeeSum) + + r.rollupFeeSum = rollupFeeSum + r.finalizeFeeSum = finalizeFeeSum + r.collectedL1FeeSum = collectedL1FeeSum + // set fee sum init val + r.metrics.RollupCostSum.Add(r.rollupFeeSum) + r.metrics.FinalizeCostSum.Add(r.finalizeFeeSum) + r.metrics.CollectedL1FeeSum.Add(r.collectedL1FeeSum) + return nil +} diff --git a/tx-submitter/utils/config.go b/tx-submitter/utils/config.go index 5a6a9c814..3d63fa042 100644 --- a/tx-submitter/utils/config.go +++ b/tx-submitter/utils/config.go @@ -104,6 +104,8 @@ type Config struct { L1StakingDeployedBlockNumber uint64 // event indexer index step EventIndexStep uint64 + // leveldb path name + LeveldbPathName string } // NewConfig parses the DriverConfig from the provided flags or environment variables. @@ -171,6 +173,8 @@ func NewConfig(ctx *cli.Context) (Config, error) { L1StakingDeployedBlockNumber: ctx.GlobalUint64(flags.L1StakingDeployedBlocknumFlag.Name), // index step EventIndexStep: ctx.GlobalUint64(flags.EventIndexStepFlag.Name), + // leveldb path name + LeveldbPathName: ctx.GlobalString(flags.LeveldbPathNameFlag.Name), } return cfg, nil diff --git a/tx-submitter/utils/methods.go b/tx-submitter/utils/methods.go index 12d94c2d3..b2e19782a 100644 --- a/tx-submitter/utils/methods.go +++ b/tx-submitter/utils/methods.go @@ -1,7 +1,10 @@ package utils import ( + "fmt" "math/big" + "reflect" + "strconv" "github.com/morph-l2/go-ethereum" "github.com/morph-l2/go-ethereum/common" @@ -61,3 +64,74 @@ func IntersectionOfAddresses(a, b []common.Address) []common.Address { return intersection } + +func ParseStringToType[T any](s string) (T, error) { + var result T + var err error + + // 获取目标类型的名称 + switch any(result).(type) { + case int: + var v int64 + v, err = strconv.ParseInt(s, 10, 0) + result = reflect.ValueOf(int(v)).Interface().(T) + case int8: + var v int64 + v, err = strconv.ParseInt(s, 10, 8) + result = reflect.ValueOf(int8(v)).Interface().(T) + case int16: + var v int64 + v, err = strconv.ParseInt(s, 10, 16) + result = reflect.ValueOf(int16(v)).Interface().(T) + case int32: + var v int64 + v, err = strconv.ParseInt(s, 10, 32) + result = reflect.ValueOf(int32(v)).Interface().(T) + case int64: + var v int64 + v, err = strconv.ParseInt(s, 10, 64) + result = reflect.ValueOf(v).Interface().(T) + case uint: + var v uint64 + v, err = strconv.ParseUint(s, 10, 0) + result = reflect.ValueOf(uint(v)).Interface().(T) + case uint8: + var v uint64 + v, err = strconv.ParseUint(s, 10, 8) + result = reflect.ValueOf(uint8(v)).Interface().(T) + case uint16: + var v uint64 + v, err = strconv.ParseUint(s, 10, 16) + result = reflect.ValueOf(uint16(v)).Interface().(T) + case uint32: + var v uint64 + v, err = strconv.ParseUint(s, 10, 32) + result = reflect.ValueOf(uint32(v)).Interface().(T) + case uint64: + var v uint64 + v, err = strconv.ParseUint(s, 10, 64) + result = reflect.ValueOf(v).Interface().(T) + case float32: + var v float64 + v, err = strconv.ParseFloat(s, 32) + result = reflect.ValueOf(float32(v)).Interface().(T) + case float64: + var v float64 + v, err = strconv.ParseFloat(s, 64) + result = reflect.ValueOf(v).Interface().(T) + case bool: + var v bool + v, err = strconv.ParseBool(s) + result = reflect.ValueOf(v).Interface().(T) + case string: + result = reflect.ValueOf(s).Interface().(T) + default: + return *new(T), fmt.Errorf("unsupported type: %v", reflect.TypeOf(result)) + } + + if err != nil { + return *new(T), err + } + + return result, nil +} diff --git a/tx-submitter/utils/methods_test.go b/tx-submitter/utils/methods_test.go new file mode 100644 index 000000000..381cb65e4 --- /dev/null +++ b/tx-submitter/utils/methods_test.go @@ -0,0 +1,86 @@ +package utils + +import ( + "fmt" + "testing" + + "github.com/stretchr/testify/require" +) + +func TestParseStringToType(t *testing.T) { + tests := []struct { + input string + expected any + hasError bool + }{ + // int cases + {"123", int(123), false}, + {"-123", int(-123), false}, + {"notanumber", int(0), true}, + + // int8 cases + {"123", int8(123), false}, + {"-128", int8(-128), false}, + {"notanumber", int8(0), true}, + + // int16 cases + {"123", int16(123), false}, + {"32767", int16(32767), false}, + {"notanumber", int16(0), true}, + + // uint cases + {"123", uint(123), false}, + {"notanumber", uint(0), true}, + + // float32 cases + {"123.45", float32(123.45), false}, + {"-123.45", float32(-123.45), false}, + {"notanumber", float32(0), true}, + + // float64 cases + {"123.45", float64(123.45), false}, + {"-123.45", float64(-123.45), false}, + {"notanumber", float64(0), true}, + + // bool cases + {"true", true, false}, + {"false", false, false}, + {"notabool", false, true}, + + // string cases + {"test", "test", false}, + } + + for _, tc := range tests { + t.Run(fmt.Sprintf("%v -> %v", tc.input, tc.expected), func(t *testing.T) { + var result any + var err error + + switch tc.expected.(type) { + case int: + result, err = ParseStringToType[int](tc.input) + case int8: + result, err = ParseStringToType[int8](tc.input) + case int16: + result, err = ParseStringToType[int16](tc.input) + case uint: + result, err = ParseStringToType[uint](tc.input) + case float32: + result, err = ParseStringToType[float32](tc.input) + case float64: + result, err = ParseStringToType[float64](tc.input) + case bool: + result, err = ParseStringToType[bool](tc.input) + case string: + result, err = ParseStringToType[string](tc.input) + } + + if tc.hasError { + require.Error(t, err) + } else { + require.NoError(t, err) + require.Equal(t, tc.expected, result) + } + }) + } +} From 4e7c972df5da2c5d790d63a2f44c10181c77510f Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Tue, 5 Nov 2024 15:19:20 +0800 Subject: [PATCH 05/33] fix(tx-submitter): Fixed transaction fee calculation issue - Fixed blob fee calculation logic in Blob transaction type - Added judgment for weiAmt being nil to avoid potential null pointer exceptions --- tx-submitter/services/utils.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tx-submitter/services/utils.go b/tx-submitter/services/utils.go index 4c55dd038..e8e185b42 100644 --- a/tx-submitter/services/utils.go +++ b/tx-submitter/services/utils.go @@ -54,10 +54,10 @@ func calcFee(receipt *types.Receipt) float64 { // blobfee blobfee := big.NewInt(0) if receipt.Type == types.BlobTxType { - if receipt.BlobGasPrice == nil { - return 0 + if receipt.BlobGasPrice != nil { + blobfee = new(big.Int).Mul(big.NewInt(int64(receipt.BlobGasUsed)), receipt.BlobGasPrice) } - blobfee = new(big.Int).Mul(big.NewInt(int64(receipt.BlobGasUsed)), receipt.BlobGasPrice) + } fee := new(big.Int).Add(calldatafee, blobfee) @@ -65,6 +65,9 @@ func calcFee(receipt *types.Receipt) float64 { } func ToEtherFloat(weiAmt *big.Int) float64 { + if weiAmt == nil { + return 0 + } etherAmt := new(big.Rat).SetFrac(weiAmt, big.NewInt(params.Ether)) fEtherAmt, _ := etherAmt.Float64() return fEtherAmt From debb3bcb5e5ada7414b307f3196e8527e67a2813 Mon Sep 17 00:00:00 2001 From: kukoo Date: Tue, 12 Nov 2024 23:37:28 +0800 Subject: [PATCH 06/33] Add usdc migration and flatten contracts (#633) (#634) --- .../libraries/usdc/FiatTokenProxy.sol.flatten | 576 ++++ .../libraries/usdc/FiatTokenV2_2.sol.flatten | 2876 +++++++++++++++++ .../libraries/usdc/MigrationUSDC.sol | 110 + .../usdc/SignatureChecker.sol.flatten | 219 ++ contracts/tasks/token_deploy.ts | 322 +- 5 files changed, 3997 insertions(+), 106 deletions(-) create mode 100644 contracts/contracts/libraries/usdc/FiatTokenProxy.sol.flatten create mode 100644 contracts/contracts/libraries/usdc/FiatTokenV2_2.sol.flatten create mode 100644 contracts/contracts/libraries/usdc/MigrationUSDC.sol create mode 100644 contracts/contracts/libraries/usdc/SignatureChecker.sol.flatten diff --git a/contracts/contracts/libraries/usdc/FiatTokenProxy.sol.flatten b/contracts/contracts/libraries/usdc/FiatTokenProxy.sol.flatten new file mode 100644 index 000000000..2f9e11121 --- /dev/null +++ b/contracts/contracts/libraries/usdc/FiatTokenProxy.sol.flatten @@ -0,0 +1,576 @@ +// SPDX-License-Identifier: Apache-2.0 +pragma solidity <0.8.0 =0.6.12 >=0.6.2; + +// contracts/upgradeability/Proxy.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @notice Implements delegation of calls to other contracts, with proper + * forwarding of return values and bubbling of failures. + * It defines a fallback function that delegates all calls to the address + * returned by the abstract _implementation() internal function. + * @dev Forked from https://github.com/zeppelinos/zos-lib/blob/8a16ef3ad17ec7430e3a9d2b5e3f39b8204f8c8d/contracts/upgradeability/Proxy.sol + * Modifications: + * 1. Reformat and conform to Solidity 0.6 syntax (5/13/20) + */ +abstract contract Proxy { + /** + * @dev Fallback function. + * Implemented entirely in `_fallback`. + */ + fallback() external payable { + _fallback(); + } + + /** + * @return The Address of the implementation. + */ + function _implementation() internal virtual view returns (address); + + /** + * @dev Delegates execution to an implementation contract. + * This is a low level function that doesn't return to its internal call site. + * It will return to the external caller whatever the implementation returns. + * @param implementation Address to delegate. + */ + function _delegate(address implementation) internal { + assembly { + // Copy msg.data. We take full control of memory in this inline assembly + // block because it will not return to Solidity code. We overwrite the + // Solidity scratch pad at memory position 0. + calldatacopy(0, 0, calldatasize()) + + // Call the implementation. + // out and outsize are 0 because we don't know the size yet. + let result := delegatecall( + gas(), + implementation, + 0, + calldatasize(), + 0, + 0 + ) + + // Copy the returned data. + returndatacopy(0, 0, returndatasize()) + + switch result + // delegatecall returns 0 on error. + case 0 { + revert(0, returndatasize()) + } + default { + return(0, returndatasize()) + } + } + } + + /** + * @dev Function that is run as the first thing in the fallback function. + * Can be redefined in derived contracts to add functionality. + * Redefinitions must call super._willFallback(). + */ + function _willFallback() internal virtual {} + + /** + * @dev fallback implementation. + * Extracted to enable manual triggering. + */ + function _fallback() internal { + _willFallback(); + _delegate(_implementation()); + } +} + +// node_modules/@openzeppelin/contracts/utils/Address.sol + +/** + * @dev Collection of functions related to the address type + */ +library Address { + /** + * @dev Returns true if `account` is a contract. + * + * [IMPORTANT] + * ==== + * It is unsafe to assume that an address for which this function returns + * false is an externally-owned account (EOA) and not a contract. + * + * Among others, `isContract` will return false for the following + * types of addresses: + * + * - an externally-owned account + * - a contract in construction + * - an address where a contract will be created + * - an address where a contract lived, but was destroyed + * ==== + */ + function isContract(address account) internal view returns (bool) { + // This method relies on extcodesize, which returns 0 for contracts in + // construction, since the code is only stored at the end of the + // constructor execution. + + uint256 size; + // solhint-disable-next-line no-inline-assembly + assembly { size := extcodesize(account) } + return size > 0; + } + + /** + * @dev Replacement for Solidity's `transfer`: sends `amount` wei to + * `recipient`, forwarding all available gas and reverting on errors. + * + * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost + * of certain opcodes, possibly making contracts go over the 2300 gas limit + * imposed by `transfer`, making them unable to receive funds via + * `transfer`. {sendValue} removes this limitation. + * + * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more]. + * + * IMPORTANT: because control is transferred to `recipient`, care must be + * taken to not create reentrancy vulnerabilities. Consider using + * {ReentrancyGuard} or the + * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]. + */ + function sendValue(address payable recipient, uint256 amount) internal { + require(address(this).balance >= amount, "Address: insufficient balance"); + + // solhint-disable-next-line avoid-low-level-calls, avoid-call-value + (bool success, ) = recipient.call{ value: amount }(""); + require(success, "Address: unable to send value, recipient may have reverted"); + } + + /** + * @dev Performs a Solidity function call using a low level `call`. A + * plain`call` is an unsafe replacement for a function call: use this + * function instead. + * + * If `target` reverts with a revert reason, it is bubbled up by this + * function (like regular Solidity function calls). + * + * Returns the raw returned data. To convert to the expected return value, + * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. + * + * Requirements: + * + * - `target` must be a contract. + * - calling `target` with `data` must not revert. + * + * _Available since v3.1._ + */ + function functionCall(address target, bytes memory data) internal returns (bytes memory) { + return functionCall(target, data, "Address: low-level call failed"); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with + * `errorMessage` as a fallback revert reason when `target` reverts. + * + * _Available since v3.1._ + */ + function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { + return functionCallWithValue(target, data, 0, errorMessage); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], + * but also transferring `value` wei to `target`. + * + * Requirements: + * + * - the calling contract must have an ETH balance of at least `value`. + * - the called Solidity function must be `payable`. + * + * _Available since v3.1._ + */ + function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { + return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); + } + + /** + * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but + * with `errorMessage` as a fallback revert reason when `target` reverts. + * + * _Available since v3.1._ + */ + function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { + require(address(this).balance >= value, "Address: insufficient balance for call"); + require(isContract(target), "Address: call to non-contract"); + + // solhint-disable-next-line avoid-low-level-calls + (bool success, bytes memory returndata) = target.call{ value: value }(data); + return _verifyCallResult(success, returndata, errorMessage); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], + * but performing a static call. + * + * _Available since v3.3._ + */ + function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { + return functionStaticCall(target, data, "Address: low-level static call failed"); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], + * but performing a static call. + * + * _Available since v3.3._ + */ + function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { + require(isContract(target), "Address: static call to non-contract"); + + // solhint-disable-next-line avoid-low-level-calls + (bool success, bytes memory returndata) = target.staticcall(data); + return _verifyCallResult(success, returndata, errorMessage); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], + * but performing a delegate call. + * + * _Available since v3.4._ + */ + function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { + return functionDelegateCall(target, data, "Address: low-level delegate call failed"); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], + * but performing a delegate call. + * + * _Available since v3.4._ + */ + function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { + require(isContract(target), "Address: delegate call to non-contract"); + + // solhint-disable-next-line avoid-low-level-calls + (bool success, bytes memory returndata) = target.delegatecall(data); + return _verifyCallResult(success, returndata, errorMessage); + } + + function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { + if (success) { + return returndata; + } else { + // Look for revert reason and bubble it up if present + if (returndata.length > 0) { + // The easiest way to bubble the revert reason is using memory via assembly + + // solhint-disable-next-line no-inline-assembly + assembly { + let returndata_size := mload(returndata) + revert(add(32, returndata), returndata_size) + } + } else { + revert(errorMessage); + } + } + } +} + +// contracts/upgradeability/UpgradeabilityProxy.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @notice This contract implements a proxy that allows to change the + * implementation address to which it will delegate. + * Such a change is called an implementation upgrade. + * @dev Forked from https://github.com/zeppelinos/zos-lib/blob/8a16ef3ad17ec7430e3a9d2b5e3f39b8204f8c8d/contracts/upgradeability/UpgradeabilityProxy.sol + * Modifications: + * 1. Reformat, conform to Solidity 0.6 syntax, and add error messages (5/13/20) + * 2. Use Address utility library from the latest OpenZeppelin (5/13/20) + */ +contract UpgradeabilityProxy is Proxy { + /** + * @dev Emitted when the implementation is upgraded. + * @param implementation Address of the new implementation. + */ + event Upgraded(address implementation); + + /** + * @dev Storage slot with the address of the current implementation. + * This is the keccak-256 hash of "org.zeppelinos.proxy.implementation", and is + * validated in the constructor. + */ + bytes32 + private constant IMPLEMENTATION_SLOT = 0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3; + + /** + * @dev Contract constructor. + * @param implementationContract Address of the initial implementation. + */ + constructor(address implementationContract) public { + assert( + IMPLEMENTATION_SLOT == + keccak256("org.zeppelinos.proxy.implementation") + ); + + _setImplementation(implementationContract); + } + + /** + * @dev Returns the current implementation. + * @return impl Address of the current implementation + */ + function _implementation() internal override view returns (address impl) { + bytes32 slot = IMPLEMENTATION_SLOT; + assembly { + impl := sload(slot) + } + } + + /** + * @dev Upgrades the proxy to a new implementation. + * @param newImplementation Address of the new implementation. + */ + function _upgradeTo(address newImplementation) internal { + _setImplementation(newImplementation); + emit Upgraded(newImplementation); + } + + /** + * @dev Sets the implementation address of the proxy. + * @param newImplementation Address of the new implementation. + */ + function _setImplementation(address newImplementation) private { + require( + Address.isContract(newImplementation), + "Cannot set a proxy implementation to a non-contract address" + ); + + bytes32 slot = IMPLEMENTATION_SLOT; + + assembly { + sstore(slot, newImplementation) + } + } +} + +// contracts/upgradeability/AdminUpgradeabilityProxy.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @notice This contract combines an upgradeability proxy with an authorization + * mechanism for administrative tasks. + * @dev Forked from https://github.com/zeppelinos/zos-lib/blob/8a16ef3ad17ec7430e3a9d2b5e3f39b8204f8c8d/contracts/upgradeability/AdminUpgradeabilityProxy.sol + * Modifications: + * 1. Reformat, conform to Solidity 0.6 syntax, and add error messages (5/13/20) + * 2. Remove ifAdmin modifier from admin() and implementation() (5/13/20) + */ +contract AdminUpgradeabilityProxy is UpgradeabilityProxy { + /** + * @dev Emitted when the administration has been transferred. + * @param previousAdmin Address of the previous admin. + * @param newAdmin Address of the new admin. + */ + event AdminChanged(address previousAdmin, address newAdmin); + + /** + * @dev Storage slot with the admin of the contract. + * This is the keccak-256 hash of "org.zeppelinos.proxy.admin", and is + * validated in the constructor. + */ + bytes32 + private constant ADMIN_SLOT = 0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b; + + /** + * @dev Modifier to check whether the `msg.sender` is the admin. + * If it is, it will run the function. Otherwise, it will delegate the call + * to the implementation. + */ + modifier ifAdmin() { + if (msg.sender == _admin()) { + _; + } else { + _fallback(); + } + } + + /** + * @dev Contract constructor. + * It sets the `msg.sender` as the proxy administrator. + * @param implementationContract address of the initial implementation. + */ + constructor(address implementationContract) + public + UpgradeabilityProxy(implementationContract) + { + assert(ADMIN_SLOT == keccak256("org.zeppelinos.proxy.admin")); + + _setAdmin(msg.sender); + } + + /** + * @return The address of the proxy admin. + */ + function admin() external view returns (address) { + return _admin(); + } + + /** + * @return The address of the implementation. + */ + function implementation() external view returns (address) { + return _implementation(); + } + + /** + * @dev Changes the admin of the proxy. + * Only the current admin can call this function. + * @param newAdmin Address to transfer proxy administration to. + */ + function changeAdmin(address newAdmin) external ifAdmin { + require( + newAdmin != address(0), + "Cannot change the admin of a proxy to the zero address" + ); + emit AdminChanged(_admin(), newAdmin); + _setAdmin(newAdmin); + } + + /** + * @dev Upgrade the backing implementation of the proxy. + * Only the admin can call this function. + * @param newImplementation Address of the new implementation. + */ + function upgradeTo(address newImplementation) external ifAdmin { + _upgradeTo(newImplementation); + } + + /** + * @dev Upgrade the backing implementation of the proxy and call a function + * on the new implementation. + * This is useful to initialize the proxied contract. + * @param newImplementation Address of the new implementation. + * @param data Data to send as msg.data in the low level call. + * It should include the signature and the parameters of the function to be + * called, as described in + * https://solidity.readthedocs.io/en/develop/abi-spec.html#function-selector-and-argument-encoding. + */ + function upgradeToAndCall(address newImplementation, bytes calldata data) + external + payable + ifAdmin + { + _upgradeTo(newImplementation); + // prettier-ignore + // solhint-disable-next-line avoid-low-level-calls + (bool success,) = address(this).call{value: msg.value}(data); + // solhint-disable-next-line reason-string + require(success); + } + + /** + * @return adm The admin slot. + */ + function _admin() internal view returns (address adm) { + bytes32 slot = ADMIN_SLOT; + + assembly { + adm := sload(slot) + } + } + + /** + * @dev Sets the address of the proxy admin. + * @param newAdmin Address of the new proxy admin. + */ + function _setAdmin(address newAdmin) internal { + bytes32 slot = ADMIN_SLOT; + + assembly { + sstore(slot, newAdmin) + } + } + + /** + * @dev Only fall back when the sender is not the admin. + */ + function _willFallback() internal override { + require( + msg.sender != _admin(), + "Cannot call fallback function from the proxy admin" + ); + super._willFallback(); + } +} + +// contracts/v1/FiatTokenProxy.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title FiatTokenProxy + * @dev This contract proxies FiatToken calls and enables FiatToken upgrades + */ +contract FiatTokenProxy is AdminUpgradeabilityProxy { + constructor(address implementationContract) + public + AdminUpgradeabilityProxy(implementationContract) + {} +} diff --git a/contracts/contracts/libraries/usdc/FiatTokenV2_2.sol.flatten b/contracts/contracts/libraries/usdc/FiatTokenV2_2.sol.flatten new file mode 100644 index 000000000..9f8d3d419 --- /dev/null +++ b/contracts/contracts/libraries/usdc/FiatTokenV2_2.sol.flatten @@ -0,0 +1,2876 @@ +// SPDX-License-Identifier: Apache-2.0 +pragma solidity <0.8.0 =0.6.12 >=0.6.0 >=0.6.2; + +// contracts/interface/IERC1271.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @dev Interface of the ERC1271 standard signature validation method for + * contracts as defined in https://eips.ethereum.org/EIPS/eip-1271[ERC-1271]. + */ +interface IERC1271 { + /** + * @dev Should return whether the signature provided is valid for the provided data + * @param hash Hash of the data to be signed + * @param signature Signature byte array associated with the provided data hash + * @return magicValue bytes4 magic value 0x1626ba7e when function passes + */ + function isValidSignature(bytes32 hash, bytes memory signature) + external + view + returns (bytes4 magicValue); +} + +// contracts/util/ECRecover.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title ECRecover + * @notice A library that provides a safe ECDSA recovery function + */ +library ECRecover { + /** + * @notice Recover signer's address from a signed message + * @dev Adapted from: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/65e4ffde586ec89af3b7e9140bdc9235d1254853/contracts/cryptography/ECDSA.sol + * Modifications: Accept v, r, and s as separate arguments + * @param digest Keccak-256 hash digest of the signed message + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + * @return Signer address + */ + function recover( + bytes32 digest, + uint8 v, + bytes32 r, + bytes32 s + ) internal pure returns (address) { + // EIP-2 still allows signature malleability for ecrecover(). Remove this possibility and make the signature + // unique. Appendix F in the Ethereum Yellow paper (https://ethereum.github.io/yellowpaper/paper.pdf), defines + // the valid range for s in (281): 0 < s < secp256k1n ÷ 2 + 1, and for v in (282): v ∈ {27, 28}. Most + // signatures from current libraries generate a unique signature with an s-value in the lower half order. + // + // If your library generates malleable signatures, such as s-values in the upper range, calculate a new s-value + // with 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 - s1 and flip v from 27 to 28 or + // vice versa. If your library also generates signatures with 0/1 for v instead 27/28, add 27 to v to accept + // these malleable signatures as well. + if ( + uint256(s) > + 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0 + ) { + revert("ECRecover: invalid signature 's' value"); + } + + if (v != 27 && v != 28) { + revert("ECRecover: invalid signature 'v' value"); + } + + // If the signature is valid (and not malleable), return the signer address + address signer = ecrecover(digest, v, r, s); + require(signer != address(0), "ECRecover: invalid signature"); + + return signer; + } + + /** + * @notice Recover signer's address from a signed message + * @dev Adapted from: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/0053ee040a7ff1dbc39691c9e67a69f564930a88/contracts/utils/cryptography/ECDSA.sol + * @param digest Keccak-256 hash digest of the signed message + * @param signature Signature byte array associated with hash + * @return Signer address + */ + function recover(bytes32 digest, bytes memory signature) + internal + pure + returns (address) + { + require(signature.length == 65, "ECRecover: invalid signature length"); + + bytes32 r; + bytes32 s; + uint8 v; + + // ecrecover takes the signature parameters, and the only way to get them + // currently is to use assembly. + /// @solidity memory-safe-assembly + assembly { + r := mload(add(signature, 0x20)) + s := mload(add(signature, 0x40)) + v := byte(0, mload(add(signature, 0x60))) + } + return recover(digest, v, r, s); + } +} + +// contracts/util/EIP712.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title EIP712 + * @notice A library that provides EIP712 helper functions + */ +library EIP712 { + /** + * @notice Make EIP712 domain separator + * @param name Contract name + * @param version Contract version + * @param chainId Blockchain ID + * @return Domain separator + */ + function makeDomainSeparator( + string memory name, + string memory version, + uint256 chainId + ) internal view returns (bytes32) { + return + keccak256( + abi.encode( + // keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)") + 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f, + keccak256(bytes(name)), + keccak256(bytes(version)), + chainId, + address(this) + ) + ); + } + + /** + * @notice Make EIP712 domain separator + * @param name Contract name + * @param version Contract version + * @return Domain separator + */ + function makeDomainSeparator(string memory name, string memory version) + internal + view + returns (bytes32) + { + uint256 chainId; + assembly { + chainId := chainid() + } + return makeDomainSeparator(name, version, chainId); + } +} + +// contracts/util/MessageHashUtils.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @dev Signature message hash utilities for producing digests to be consumed by {ECDSA} recovery or signing. + * + * The library provides methods for generating a hash of a message that conforms to the + * https://eips.ethereum.org/EIPS/eip-191[EIP 191] and https://eips.ethereum.org/EIPS/eip-712[EIP 712] + * specifications. + */ +library MessageHashUtils { + /** + * @dev Returns the keccak256 digest of an EIP-712 typed data (EIP-191 version `0x01`). + * Adapted from https://github.com/OpenZeppelin/openzeppelin-contracts/blob/21bb89ef5bfc789b9333eb05e3ba2b7b284ac77c/contracts/utils/cryptography/MessageHashUtils.sol + * + * The digest is calculated from a `domainSeparator` and a `structHash`, by prefixing them with + * `\x19\x01` and hashing the result. It corresponds to the hash signed by the + * https://eips.ethereum.org/EIPS/eip-712[`eth_signTypedData`] JSON-RPC method as part of EIP-712. + * + * @param domainSeparator Domain separator + * @param structHash Hashed EIP-712 data struct + * @return digest The keccak256 digest of an EIP-712 typed data + */ + function toTypedDataHash(bytes32 domainSeparator, bytes32 structHash) + internal + pure + returns (bytes32 digest) + { + assembly { + let ptr := mload(0x40) + mstore(ptr, "\x19\x01") + mstore(add(ptr, 0x02), domainSeparator) + mstore(add(ptr, 0x22), structHash) + digest := keccak256(ptr, 0x42) + } + } +} + +// contracts/v1/Ownable.sol +/** + + * + * Copyright (c) 2018 zOS Global Limited. + * Copyright (c) 2018-2020 CENTRE SECZ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +/** + * @notice The Ownable contract has an owner address, and provides basic + * authorization control functions + * @dev Forked from https://github.com/OpenZeppelin/openzeppelin-labs/blob/3887ab77b8adafba4a26ace002f3a684c1a3388b/upgradeability_ownership/contracts/ownership/Ownable.sol + * Modifications: + * 1. Consolidate OwnableStorage into this contract (7/13/18) + * 2. Reformat, conform to Solidity 0.6 syntax, and add error messages (5/13/20) + * 3. Make public functions external (5/27/20) + */ +contract Ownable { + // Owner of the contract + address private _owner; + + /** + * @dev Event to show ownership has been transferred + * @param previousOwner representing the address of the previous owner + * @param newOwner representing the address of the new owner + */ + event OwnershipTransferred(address previousOwner, address newOwner); + + /** + * @dev The constructor sets the original owner of the contract to the sender account. + */ + constructor() public { + setOwner(msg.sender); + } + + /** + * @dev Tells the address of the owner + * @return the address of the owner + */ + function owner() external view returns (address) { + return _owner; + } + + /** + * @dev Sets a new owner address + */ + function setOwner(address newOwner) internal { + _owner = newOwner; + } + + /** + * @dev Throws if called by any account other than the owner. + */ + modifier onlyOwner() { + require(msg.sender == _owner, "Ownable: caller is not the owner"); + _; + } + + /** + * @dev Allows the current owner to transfer control of the contract to a newOwner. + * @param newOwner The address to transfer ownership to. + */ + function transferOwnership(address newOwner) external onlyOwner { + require( + newOwner != address(0), + "Ownable: new owner is the zero address" + ); + emit OwnershipTransferred(_owner, newOwner); + setOwner(newOwner); + } +} + +// contracts/v2/EIP712Domain.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// solhint-disable func-name-mixedcase + +/** + * @title EIP712 Domain + */ +contract EIP712Domain { + // was originally DOMAIN_SEPARATOR + // but that has been moved to a method so we can override it in V2_2+ + bytes32 internal _DEPRECATED_CACHED_DOMAIN_SEPARATOR; + + /** + * @notice Get the EIP712 Domain Separator. + * @return The bytes32 EIP712 domain separator. + */ + function DOMAIN_SEPARATOR() external view returns (bytes32) { + return _domainSeparator(); + } + + /** + * @dev Internal method to get the EIP712 Domain Separator. + * @return The bytes32 EIP712 domain separator. + */ + function _domainSeparator() internal virtual view returns (bytes32) { + return _DEPRECATED_CACHED_DOMAIN_SEPARATOR; + } +} + +// node_modules/@openzeppelin/contracts/math/SafeMath.sol + +/** + * @dev Wrappers over Solidity's arithmetic operations with added overflow + * checks. + * + * Arithmetic operations in Solidity wrap on overflow. This can easily result + * in bugs, because programmers usually assume that an overflow raises an + * error, which is the standard behavior in high level programming languages. + * `SafeMath` restores this intuition by reverting the transaction when an + * operation overflows. + * + * Using this library instead of the unchecked operations eliminates an entire + * class of bugs, so it's recommended to use it always. + */ +library SafeMath { + /** + * @dev Returns the addition of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { + uint256 c = a + b; + if (c < a) return (false, 0); + return (true, c); + } + + /** + * @dev Returns the substraction of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b > a) return (false, 0); + return (true, a - b); + } + + /** + * @dev Returns the multiplication of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { + // Gas optimization: this is cheaper than requiring 'a' not being zero, but the + // benefit is lost if 'b' is also tested. + // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 + if (a == 0) return (true, 0); + uint256 c = a * b; + if (c / a != b) return (false, 0); + return (true, c); + } + + /** + * @dev Returns the division of two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b == 0) return (false, 0); + return (true, a / b); + } + + /** + * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b == 0) return (false, 0); + return (true, a % b); + } + + /** + * @dev Returns the addition of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `+` operator. + * + * Requirements: + * + * - Addition cannot overflow. + */ + function add(uint256 a, uint256 b) internal pure returns (uint256) { + uint256 c = a + b; + require(c >= a, "SafeMath: addition overflow"); + return c; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting on + * overflow (when the result is negative). + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b) internal pure returns (uint256) { + require(b <= a, "SafeMath: subtraction overflow"); + return a - b; + } + + /** + * @dev Returns the multiplication of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `*` operator. + * + * Requirements: + * + * - Multiplication cannot overflow. + */ + function mul(uint256 a, uint256 b) internal pure returns (uint256) { + if (a == 0) return 0; + uint256 c = a * b; + require(c / a == b, "SafeMath: multiplication overflow"); + return c; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting on + * division by zero. The result is rounded towards zero. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b) internal pure returns (uint256) { + require(b > 0, "SafeMath: division by zero"); + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting when dividing by zero. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b) internal pure returns (uint256) { + require(b > 0, "SafeMath: modulo by zero"); + return a % b; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting with custom message on + * overflow (when the result is negative). + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {trySub}. + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b <= a, errorMessage); + return a - b; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting with custom message on + * division by zero. The result is rounded towards zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryDiv}. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b > 0, errorMessage); + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting with custom message when dividing by zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryMod}. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b > 0, errorMessage); + return a % b; + } +} + +// node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol + +/** + * @dev Interface of the ERC20 standard as defined in the EIP. + */ +interface IERC20 { + /** + * @dev Returns the amount of tokens in existence. + */ + function totalSupply() external view returns (uint256); + + /** + * @dev Returns the amount of tokens owned by `account`. + */ + function balanceOf(address account) external view returns (uint256); + + /** + * @dev Moves `amount` tokens from the caller's account to `recipient`. + * + * Returns a boolean value indicating whether the operation succeeded. + * + * Emits a {Transfer} event. + */ + function transfer(address recipient, uint256 amount) external returns (bool); + + /** + * @dev Returns the remaining number of tokens that `spender` will be + * allowed to spend on behalf of `owner` through {transferFrom}. This is + * zero by default. + * + * This value changes when {approve} or {transferFrom} are called. + */ + function allowance(address owner, address spender) external view returns (uint256); + + /** + * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. + * + * Returns a boolean value indicating whether the operation succeeded. + * + * IMPORTANT: Beware that changing an allowance with this method brings the risk + * that someone may use both the old and the new allowance by unfortunate + * transaction ordering. One possible solution to mitigate this race + * condition is to first reduce the spender's allowance to 0 and set the + * desired value afterwards: + * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 + * + * Emits an {Approval} event. + */ + function approve(address spender, uint256 amount) external returns (bool); + + /** + * @dev Moves `amount` tokens from `sender` to `recipient` using the + * allowance mechanism. `amount` is then deducted from the caller's + * allowance. + * + * Returns a boolean value indicating whether the operation succeeded. + * + * Emits a {Transfer} event. + */ + function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); + + /** + * @dev Emitted when `value` tokens are moved from one account (`from`) to + * another (`to`). + * + * Note that `value` may be zero. + */ + event Transfer(address indexed from, address indexed to, uint256 value); + + /** + * @dev Emitted when the allowance of a `spender` for an `owner` is set by + * a call to {approve}. `value` is the new allowance. + */ + event Approval(address indexed owner, address indexed spender, uint256 value); +} + +// node_modules/@openzeppelin/contracts/utils/Address.sol + +/** + * @dev Collection of functions related to the address type + */ +library Address { + /** + * @dev Returns true if `account` is a contract. + * + * [IMPORTANT] + * ==== + * It is unsafe to assume that an address for which this function returns + * false is an externally-owned account (EOA) and not a contract. + * + * Among others, `isContract` will return false for the following + * types of addresses: + * + * - an externally-owned account + * - a contract in construction + * - an address where a contract will be created + * - an address where a contract lived, but was destroyed + * ==== + */ + function isContract(address account) internal view returns (bool) { + // This method relies on extcodesize, which returns 0 for contracts in + // construction, since the code is only stored at the end of the + // constructor execution. + + uint256 size; + // solhint-disable-next-line no-inline-assembly + assembly { size := extcodesize(account) } + return size > 0; + } + + /** + * @dev Replacement for Solidity's `transfer`: sends `amount` wei to + * `recipient`, forwarding all available gas and reverting on errors. + * + * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost + * of certain opcodes, possibly making contracts go over the 2300 gas limit + * imposed by `transfer`, making them unable to receive funds via + * `transfer`. {sendValue} removes this limitation. + * + * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more]. + * + * IMPORTANT: because control is transferred to `recipient`, care must be + * taken to not create reentrancy vulnerabilities. Consider using + * {ReentrancyGuard} or the + * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]. + */ + function sendValue(address payable recipient, uint256 amount) internal { + require(address(this).balance >= amount, "Address: insufficient balance"); + + // solhint-disable-next-line avoid-low-level-calls, avoid-call-value + (bool success, ) = recipient.call{ value: amount }(""); + require(success, "Address: unable to send value, recipient may have reverted"); + } + + /** + * @dev Performs a Solidity function call using a low level `call`. A + * plain`call` is an unsafe replacement for a function call: use this + * function instead. + * + * If `target` reverts with a revert reason, it is bubbled up by this + * function (like regular Solidity function calls). + * + * Returns the raw returned data. To convert to the expected return value, + * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. + * + * Requirements: + * + * - `target` must be a contract. + * - calling `target` with `data` must not revert. + * + * _Available since v3.1._ + */ + function functionCall(address target, bytes memory data) internal returns (bytes memory) { + return functionCall(target, data, "Address: low-level call failed"); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with + * `errorMessage` as a fallback revert reason when `target` reverts. + * + * _Available since v3.1._ + */ + function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { + return functionCallWithValue(target, data, 0, errorMessage); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], + * but also transferring `value` wei to `target`. + * + * Requirements: + * + * - the calling contract must have an ETH balance of at least `value`. + * - the called Solidity function must be `payable`. + * + * _Available since v3.1._ + */ + function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { + return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); + } + + /** + * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but + * with `errorMessage` as a fallback revert reason when `target` reverts. + * + * _Available since v3.1._ + */ + function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { + require(address(this).balance >= value, "Address: insufficient balance for call"); + require(isContract(target), "Address: call to non-contract"); + + // solhint-disable-next-line avoid-low-level-calls + (bool success, bytes memory returndata) = target.call{ value: value }(data); + return _verifyCallResult(success, returndata, errorMessage); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], + * but performing a static call. + * + * _Available since v3.3._ + */ + function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { + return functionStaticCall(target, data, "Address: low-level static call failed"); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], + * but performing a static call. + * + * _Available since v3.3._ + */ + function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { + require(isContract(target), "Address: static call to non-contract"); + + // solhint-disable-next-line avoid-low-level-calls + (bool success, bytes memory returndata) = target.staticcall(data); + return _verifyCallResult(success, returndata, errorMessage); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], + * but performing a delegate call. + * + * _Available since v3.4._ + */ + function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { + return functionDelegateCall(target, data, "Address: low-level delegate call failed"); + } + + /** + * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], + * but performing a delegate call. + * + * _Available since v3.4._ + */ + function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { + require(isContract(target), "Address: delegate call to non-contract"); + + // solhint-disable-next-line avoid-low-level-calls + (bool success, bytes memory returndata) = target.delegatecall(data); + return _verifyCallResult(success, returndata, errorMessage); + } + + function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { + if (success) { + return returndata; + } else { + // Look for revert reason and bubble it up if present + if (returndata.length > 0) { + // The easiest way to bubble the revert reason is using memory via assembly + + // solhint-disable-next-line no-inline-assembly + assembly { + let returndata_size := mload(returndata) + revert(add(32, returndata), returndata_size) + } + } else { + revert(errorMessage); + } + } + } +} + +// contracts/v1/AbstractFiatTokenV1.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +abstract contract AbstractFiatTokenV1 is IERC20 { + function _approve( + address owner, + address spender, + uint256 value + ) internal virtual; + + function _transfer( + address from, + address to, + uint256 value + ) internal virtual; +} + +// contracts/v1/Blacklistable.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title Blacklistable Token + * @dev Allows accounts to be blacklisted by a "blacklister" role + */ +abstract contract Blacklistable is Ownable { + address public blacklister; + mapping(address => bool) internal _deprecatedBlacklisted; + + event Blacklisted(address indexed _account); + event UnBlacklisted(address indexed _account); + event BlacklisterChanged(address indexed newBlacklister); + + /** + * @dev Throws if called by any account other than the blacklister. + */ + modifier onlyBlacklister() { + require( + msg.sender == blacklister, + "Blacklistable: caller is not the blacklister" + ); + _; + } + + /** + * @dev Throws if argument account is blacklisted. + * @param _account The address to check. + */ + modifier notBlacklisted(address _account) { + require( + !_isBlacklisted(_account), + "Blacklistable: account is blacklisted" + ); + _; + } + + /** + * @notice Checks if account is blacklisted. + * @param _account The address to check. + * @return True if the account is blacklisted, false if the account is not blacklisted. + */ + function isBlacklisted(address _account) external view returns (bool) { + return _isBlacklisted(_account); + } + + /** + * @notice Adds account to blacklist. + * @param _account The address to blacklist. + */ + function blacklist(address _account) external onlyBlacklister { + _blacklist(_account); + emit Blacklisted(_account); + } + + /** + * @notice Removes account from blacklist. + * @param _account The address to remove from the blacklist. + */ + function unBlacklist(address _account) external onlyBlacklister { + _unBlacklist(_account); + emit UnBlacklisted(_account); + } + + /** + * @notice Updates the blacklister address. + * @param _newBlacklister The address of the new blacklister. + */ + function updateBlacklister(address _newBlacklister) external onlyOwner { + require( + _newBlacklister != address(0), + "Blacklistable: new blacklister is the zero address" + ); + blacklister = _newBlacklister; + emit BlacklisterChanged(blacklister); + } + + /** + * @dev Checks if account is blacklisted. + * @param _account The address to check. + * @return true if the account is blacklisted, false otherwise. + */ + function _isBlacklisted(address _account) + internal + virtual + view + returns (bool); + + /** + * @dev Helper method that blacklists an account. + * @param _account The address to blacklist. + */ + function _blacklist(address _account) internal virtual; + + /** + * @dev Helper method that unblacklists an account. + * @param _account The address to unblacklist. + */ + function _unBlacklist(address _account) internal virtual; +} + +// contracts/v1/Pausable.sol +/** + + * + * Copyright (c) 2016 Smart Contract Solutions, Inc. + * Copyright (c) 2018-2020 CENTRE SECZ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +/** + * @notice Base contract which allows children to implement an emergency stop + * mechanism + * @dev Forked from https://github.com/OpenZeppelin/openzeppelin-contracts/blob/feb665136c0dae9912e08397c1a21c4af3651ef3/contracts/lifecycle/Pausable.sol + * Modifications: + * 1. Added pauser role, switched pause/unpause to be onlyPauser (6/14/2018) + * 2. Removed whenNotPause/whenPaused from pause/unpause (6/14/2018) + * 3. Removed whenPaused (6/14/2018) + * 4. Switches ownable library to use ZeppelinOS (7/12/18) + * 5. Remove constructor (7/13/18) + * 6. Reformat, conform to Solidity 0.6 syntax and add error messages (5/13/20) + * 7. Make public functions external (5/27/20) + */ +contract Pausable is Ownable { + event Pause(); + event Unpause(); + event PauserChanged(address indexed newAddress); + + address public pauser; + bool public paused = false; + + /** + * @dev Modifier to make a function callable only when the contract is not paused. + */ + modifier whenNotPaused() { + require(!paused, "Pausable: paused"); + _; + } + + /** + * @dev throws if called by any account other than the pauser + */ + modifier onlyPauser() { + require(msg.sender == pauser, "Pausable: caller is not the pauser"); + _; + } + + /** + * @dev called by the owner to pause, triggers stopped state + */ + function pause() external onlyPauser { + paused = true; + emit Pause(); + } + + /** + * @dev called by the owner to unpause, returns to normal state + */ + function unpause() external onlyPauser { + paused = false; + emit Unpause(); + } + + /** + * @notice Updates the pauser address. + * @param _newPauser The address of the new pauser. + */ + function updatePauser(address _newPauser) external onlyOwner { + require( + _newPauser != address(0), + "Pausable: new pauser is the zero address" + ); + pauser = _newPauser; + emit PauserChanged(pauser); + } +} + +// contracts/util/SignatureChecker.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @dev Signature verification helper that can be used instead of `ECRecover.recover` to seamlessly support both ECDSA + * signatures from externally owned accounts (EOAs) as well as ERC1271 signatures from smart contract wallets. + * + * Adapted from https://github.com/OpenZeppelin/openzeppelin-contracts/blob/21bb89ef5bfc789b9333eb05e3ba2b7b284ac77c/contracts/utils/cryptography/SignatureChecker.sol + */ +library SignatureChecker { + /** + * @dev Checks if a signature is valid for a given signer and data hash. If the signer is a smart contract, the + * signature is validated against that smart contract using ERC1271, otherwise it's validated using `ECRecover.recover`. + * @param signer Address of the claimed signer + * @param digest Keccak-256 hash digest of the signed message + * @param signature Signature byte array associated with hash + */ + function isValidSignatureNow( + address signer, + bytes32 digest, + bytes memory signature + ) external view returns (bool) { + if (!isContract(signer)) { + return ECRecover.recover(digest, signature) == signer; + } + return isValidERC1271SignatureNow(signer, digest, signature); + } + + /** + * @dev Checks if a signature is valid for a given signer and data hash. The signature is validated + * against the signer smart contract using ERC1271. + * @param signer Address of the claimed signer + * @param digest Keccak-256 hash digest of the signed message + * @param signature Signature byte array associated with hash + * + * NOTE: Unlike ECDSA signatures, contract signatures are revocable, and the outcome of this function can thus + * change through time. It could return true at block N and false at block N+1 (or the opposite). + */ + function isValidERC1271SignatureNow( + address signer, + bytes32 digest, + bytes memory signature + ) internal view returns (bool) { + (bool success, bytes memory result) = signer.staticcall( + abi.encodeWithSelector( + IERC1271.isValidSignature.selector, + digest, + signature + ) + ); + return (success && + result.length >= 32 && + abi.decode(result, (bytes32)) == + bytes32(IERC1271.isValidSignature.selector)); + } + + /** + * @dev Checks if the input address is a smart contract. + */ + function isContract(address addr) internal view returns (bool) { + uint256 size; + assembly { + size := extcodesize(addr) + } + return size > 0; + } +} + +// contracts/v2/AbstractFiatTokenV2.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +abstract contract AbstractFiatTokenV2 is AbstractFiatTokenV1 { + function _increaseAllowance( + address owner, + address spender, + uint256 increment + ) internal virtual; + + function _decreaseAllowance( + address owner, + address spender, + uint256 decrement + ) internal virtual; +} + +// node_modules/@openzeppelin/contracts/token/ERC20/SafeERC20.sol + +/** + * @title SafeERC20 + * @dev Wrappers around ERC20 operations that throw on failure (when the token + * contract returns false). Tokens that return no value (and instead revert or + * throw on failure) are also supported, non-reverting calls are assumed to be + * successful. + * To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract, + * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. + */ +library SafeERC20 { + using SafeMath for uint256; + using Address for address; + + function safeTransfer(IERC20 token, address to, uint256 value) internal { + _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); + } + + function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal { + _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value)); + } + + /** + * @dev Deprecated. This function has issues similar to the ones found in + * {IERC20-approve}, and its usage is discouraged. + * + * Whenever possible, use {safeIncreaseAllowance} and + * {safeDecreaseAllowance} instead. + */ + function safeApprove(IERC20 token, address spender, uint256 value) internal { + // safeApprove should only be called when setting an initial allowance, + // or when resetting it to zero. To increase and decrease it, use + // 'safeIncreaseAllowance' and 'safeDecreaseAllowance' + // solhint-disable-next-line max-line-length + require((value == 0) || (token.allowance(address(this), spender) == 0), + "SafeERC20: approve from non-zero to non-zero allowance" + ); + _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); + } + + function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal { + uint256 newAllowance = token.allowance(address(this), spender).add(value); + _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); + } + + function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal { + uint256 newAllowance = token.allowance(address(this), spender).sub(value, "SafeERC20: decreased allowance below zero"); + _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); + } + + /** + * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement + * on the return value: the return value is optional (but if data is returned, it must not be false). + * @param token The token targeted by the call. + * @param data The call data (encoded using abi.encode or one of its variants). + */ + function _callOptionalReturn(IERC20 token, bytes memory data) private { + // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since + // we're implementing it ourselves. We use {Address.functionCall} to perform this call, which verifies that + // the target address contains contract code and also asserts for success in the low-level call. + + bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed"); + if (returndata.length > 0) { // Return data is optional + // solhint-disable-next-line max-line-length + require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); + } + } +} + +// contracts/v1.1/Rescuable.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +contract Rescuable is Ownable { + using SafeERC20 for IERC20; + + address private _rescuer; + + event RescuerChanged(address indexed newRescuer); + + /** + * @notice Returns current rescuer + * @return Rescuer's address + */ + function rescuer() external view returns (address) { + return _rescuer; + } + + /** + * @notice Revert if called by any account other than the rescuer. + */ + modifier onlyRescuer() { + require(msg.sender == _rescuer, "Rescuable: caller is not the rescuer"); + _; + } + + /** + * @notice Rescue ERC20 tokens locked up in this contract. + * @param tokenContract ERC20 token contract address + * @param to Recipient address + * @param amount Amount to withdraw + */ + function rescueERC20( + IERC20 tokenContract, + address to, + uint256 amount + ) external onlyRescuer { + tokenContract.safeTransfer(to, amount); + } + + /** + * @notice Updates the rescuer address. + * @param newRescuer The address of the new rescuer. + */ + function updateRescuer(address newRescuer) external onlyOwner { + require( + newRescuer != address(0), + "Rescuable: new rescuer is the zero address" + ); + _rescuer = newRescuer; + emit RescuerChanged(newRescuer); + } +} + +// contracts/v1/FiatTokenV1.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title FiatToken + * @dev ERC20 Token backed by fiat reserves + */ +contract FiatTokenV1 is AbstractFiatTokenV1, Ownable, Pausable, Blacklistable { + using SafeMath for uint256; + + string public name; + string public symbol; + uint8 public decimals; + string public currency; + address public masterMinter; + bool internal initialized; + + /// @dev A mapping that stores the balance and blacklist states for a given address. + /// The first bit defines whether the address is blacklisted (1 if blacklisted, 0 otherwise). + /// The last 255 bits define the balance for the address. + mapping(address => uint256) internal balanceAndBlacklistStates; + mapping(address => mapping(address => uint256)) internal allowed; + uint256 internal totalSupply_ = 0; + mapping(address => bool) internal minters; + mapping(address => uint256) internal minterAllowed; + + event Mint(address indexed minter, address indexed to, uint256 amount); + event Burn(address indexed burner, uint256 amount); + event MinterConfigured(address indexed minter, uint256 minterAllowedAmount); + event MinterRemoved(address indexed oldMinter); + event MasterMinterChanged(address indexed newMasterMinter); + + /** + * @notice Initializes the fiat token contract. + * @param tokenName The name of the fiat token. + * @param tokenSymbol The symbol of the fiat token. + * @param tokenCurrency The fiat currency that the token represents. + * @param tokenDecimals The number of decimals that the token uses. + * @param newMasterMinter The masterMinter address for the fiat token. + * @param newPauser The pauser address for the fiat token. + * @param newBlacklister The blacklister address for the fiat token. + * @param newOwner The owner of the fiat token. + */ + function initialize( + string memory tokenName, + string memory tokenSymbol, + string memory tokenCurrency, + uint8 tokenDecimals, + address newMasterMinter, + address newPauser, + address newBlacklister, + address newOwner + ) public { + require(!initialized, "FiatToken: contract is already initialized"); + require( + newMasterMinter != address(0), + "FiatToken: new masterMinter is the zero address" + ); + require( + newPauser != address(0), + "FiatToken: new pauser is the zero address" + ); + require( + newBlacklister != address(0), + "FiatToken: new blacklister is the zero address" + ); + require( + newOwner != address(0), + "FiatToken: new owner is the zero address" + ); + + name = tokenName; + symbol = tokenSymbol; + currency = tokenCurrency; + decimals = tokenDecimals; + masterMinter = newMasterMinter; + pauser = newPauser; + blacklister = newBlacklister; + setOwner(newOwner); + initialized = true; + } + + /** + * @dev Throws if called by any account other than a minter. + */ + modifier onlyMinters() { + require(minters[msg.sender], "FiatToken: caller is not a minter"); + _; + } + + /** + * @notice Mints fiat tokens to an address. + * @param _to The address that will receive the minted tokens. + * @param _amount The amount of tokens to mint. Must be less than or equal + * to the minterAllowance of the caller. + * @return True if the operation was successful. + */ + function mint(address _to, uint256 _amount) + external + whenNotPaused + onlyMinters + notBlacklisted(msg.sender) + notBlacklisted(_to) + returns (bool) + { + require(_to != address(0), "FiatToken: mint to the zero address"); + require(_amount > 0, "FiatToken: mint amount not greater than 0"); + + uint256 mintingAllowedAmount = minterAllowed[msg.sender]; + require( + _amount <= mintingAllowedAmount, + "FiatToken: mint amount exceeds minterAllowance" + ); + + totalSupply_ = totalSupply_.add(_amount); + _setBalance(_to, _balanceOf(_to).add(_amount)); + minterAllowed[msg.sender] = mintingAllowedAmount.sub(_amount); + emit Mint(msg.sender, _to, _amount); + emit Transfer(address(0), _to, _amount); + return true; + } + + /** + * @dev Throws if called by any account other than the masterMinter + */ + modifier onlyMasterMinter() { + require( + msg.sender == masterMinter, + "FiatToken: caller is not the masterMinter" + ); + _; + } + + /** + * @notice Gets the minter allowance for an account. + * @param minter The address to check. + * @return The remaining minter allowance for the account. + */ + function minterAllowance(address minter) external view returns (uint256) { + return minterAllowed[minter]; + } + + /** + * @notice Checks if an account is a minter. + * @param account The address to check. + * @return True if the account is a minter, false if the account is not a minter. + */ + function isMinter(address account) external view returns (bool) { + return minters[account]; + } + + /** + * @notice Gets the remaining amount of fiat tokens a spender is allowed to transfer on + * behalf of the token owner. + * @param owner The token owner's address. + * @param spender The spender's address. + * @return The remaining allowance. + */ + function allowance(address owner, address spender) + external + override + view + returns (uint256) + { + return allowed[owner][spender]; + } + + /** + * @notice Gets the totalSupply of the fiat token. + * @return The totalSupply of the fiat token. + */ + function totalSupply() external override view returns (uint256) { + return totalSupply_; + } + + /** + * @notice Gets the fiat token balance of an account. + * @param account The address to check. + * @return balance The fiat token balance of the account. + */ + function balanceOf(address account) + external + override + view + returns (uint256) + { + return _balanceOf(account); + } + + /** + * @notice Sets a fiat token allowance for a spender to spend on behalf of the caller. + * @param spender The spender's address. + * @param value The allowance amount. + * @return True if the operation was successful. + */ + function approve(address spender, uint256 value) + external + virtual + override + whenNotPaused + notBlacklisted(msg.sender) + notBlacklisted(spender) + returns (bool) + { + _approve(msg.sender, spender, value); + return true; + } + + /** + * @dev Internal function to set allowance. + * @param owner Token owner's address. + * @param spender Spender's address. + * @param value Allowance amount. + */ + function _approve( + address owner, + address spender, + uint256 value + ) internal override { + require(owner != address(0), "ERC20: approve from the zero address"); + require(spender != address(0), "ERC20: approve to the zero address"); + allowed[owner][spender] = value; + emit Approval(owner, spender, value); + } + + /** + * @notice Transfers tokens from an address to another by spending the caller's allowance. + * @dev The caller must have some fiat token allowance on the payer's tokens. + * @param from Payer's address. + * @param to Payee's address. + * @param value Transfer amount. + * @return True if the operation was successful. + */ + function transferFrom( + address from, + address to, + uint256 value + ) + external + override + whenNotPaused + notBlacklisted(msg.sender) + notBlacklisted(from) + notBlacklisted(to) + returns (bool) + { + require( + value <= allowed[from][msg.sender], + "ERC20: transfer amount exceeds allowance" + ); + _transfer(from, to, value); + allowed[from][msg.sender] = allowed[from][msg.sender].sub(value); + return true; + } + + /** + * @notice Transfers tokens from the caller. + * @param to Payee's address. + * @param value Transfer amount. + * @return True if the operation was successful. + */ + function transfer(address to, uint256 value) + external + override + whenNotPaused + notBlacklisted(msg.sender) + notBlacklisted(to) + returns (bool) + { + _transfer(msg.sender, to, value); + return true; + } + + /** + * @dev Internal function to process transfers. + * @param from Payer's address. + * @param to Payee's address. + * @param value Transfer amount. + */ + function _transfer( + address from, + address to, + uint256 value + ) internal override { + require(from != address(0), "ERC20: transfer from the zero address"); + require(to != address(0), "ERC20: transfer to the zero address"); + require( + value <= _balanceOf(from), + "ERC20: transfer amount exceeds balance" + ); + + _setBalance(from, _balanceOf(from).sub(value)); + _setBalance(to, _balanceOf(to).add(value)); + emit Transfer(from, to, value); + } + + /** + * @notice Adds or updates a new minter with a mint allowance. + * @param minter The address of the minter. + * @param minterAllowedAmount The minting amount allowed for the minter. + * @return True if the operation was successful. + */ + function configureMinter(address minter, uint256 minterAllowedAmount) + external + whenNotPaused + onlyMasterMinter + returns (bool) + { + minters[minter] = true; + minterAllowed[minter] = minterAllowedAmount; + emit MinterConfigured(minter, minterAllowedAmount); + return true; + } + + /** + * @notice Removes a minter. + * @param minter The address of the minter to remove. + * @return True if the operation was successful. + */ + function removeMinter(address minter) + external + onlyMasterMinter + returns (bool) + { + minters[minter] = false; + minterAllowed[minter] = 0; + emit MinterRemoved(minter); + return true; + } + + /** + * @notice Allows a minter to burn some of its own tokens. + * @dev The caller must be a minter, must not be blacklisted, and the amount to burn + * should be less than or equal to the account's balance. + * @param _amount the amount of tokens to be burned. + */ + function burn(uint256 _amount) + external + whenNotPaused + onlyMinters + notBlacklisted(msg.sender) + { + uint256 balance = _balanceOf(msg.sender); + require(_amount > 0, "FiatToken: burn amount not greater than 0"); + require(balance >= _amount, "FiatToken: burn amount exceeds balance"); + + totalSupply_ = totalSupply_.sub(_amount); + _setBalance(msg.sender, balance.sub(_amount)); + emit Burn(msg.sender, _amount); + emit Transfer(msg.sender, address(0), _amount); + } + + /** + * @notice Updates the master minter address. + * @param _newMasterMinter The address of the new master minter. + */ + function updateMasterMinter(address _newMasterMinter) external onlyOwner { + require( + _newMasterMinter != address(0), + "FiatToken: new masterMinter is the zero address" + ); + masterMinter = _newMasterMinter; + emit MasterMinterChanged(masterMinter); + } + + /** + * + */ + function _blacklist(address _account) internal override { + _setBlacklistState(_account, true); + } + + /** + * + */ + function _unBlacklist(address _account) internal override { + _setBlacklistState(_account, false); + } + + /** + * @dev Helper method that sets the blacklist state of an account. + * @param _account The address of the account. + * @param _shouldBlacklist True if the account should be blacklisted, false if the account should be unblacklisted. + */ + function _setBlacklistState(address _account, bool _shouldBlacklist) + internal + virtual + { + _deprecatedBlacklisted[_account] = _shouldBlacklist; + } + + /** + * @dev Helper method that sets the balance of an account. + * @param _account The address of the account. + * @param _balance The new fiat token balance of the account. + */ + function _setBalance(address _account, uint256 _balance) internal virtual { + balanceAndBlacklistStates[_account] = _balance; + } + + /** + * + */ + function _isBlacklisted(address _account) + internal + virtual + override + view + returns (bool) + { + return _deprecatedBlacklisted[_account]; + } + + /** + * @dev Helper method to obtain the balance of an account. + * @param _account The address of the account. + * @return The fiat token balance of the account. + */ + function _balanceOf(address _account) + internal + virtual + view + returns (uint256) + { + return balanceAndBlacklistStates[_account]; + } +} + +// contracts/v2/EIP2612.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title EIP-2612 + * @notice Provide internal implementation for gas-abstracted approvals + */ +abstract contract EIP2612 is AbstractFiatTokenV2, EIP712Domain { + // keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)") + bytes32 + public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9; + + mapping(address => uint256) private _permitNonces; + + /** + * @notice Nonces for permit + * @param owner Token owner's address (Authorizer) + * @return Next nonce + */ + function nonces(address owner) external view returns (uint256) { + return _permitNonces[owner]; + } + + /** + * @notice Verify a signed approval permit and execute if valid + * @param owner Token owner's address (Authorizer) + * @param spender Spender's address + * @param value Amount of allowance + * @param deadline The time at which the signature expires (unix time), or max uint256 value to signal no expiration + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function _permit( + address owner, + address spender, + uint256 value, + uint256 deadline, + uint8 v, + bytes32 r, + bytes32 s + ) internal { + _permit(owner, spender, value, deadline, abi.encodePacked(r, s, v)); + } + + /** + * @notice Verify a signed approval permit and execute if valid + * @dev EOA wallet signatures should be packed in the order of r, s, v. + * @param owner Token owner's address (Authorizer) + * @param spender Spender's address + * @param value Amount of allowance + * @param deadline The time at which the signature expires (unix time), or max uint256 value to signal no expiration + * @param signature Signature byte array signed by an EOA wallet or a contract wallet + */ + function _permit( + address owner, + address spender, + uint256 value, + uint256 deadline, + bytes memory signature + ) internal { + require( + deadline == type(uint256).max || deadline >= now, + "FiatTokenV2: permit is expired" + ); + + bytes32 typedDataHash = MessageHashUtils.toTypedDataHash( + _domainSeparator(), + keccak256( + abi.encode( + PERMIT_TYPEHASH, + owner, + spender, + value, + _permitNonces[owner]++, + deadline + ) + ) + ); + require( + SignatureChecker.isValidSignatureNow( + owner, + typedDataHash, + signature + ), + "EIP2612: invalid signature" + ); + + _approve(owner, spender, value); + } +} + +// contracts/v2/EIP3009.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title EIP-3009 + * @notice Provide internal implementation for gas-abstracted transfers + * @dev Contracts that inherit from this must wrap these with publicly + * accessible functions, optionally adding modifiers where necessary + */ +abstract contract EIP3009 is AbstractFiatTokenV2, EIP712Domain { + // keccak256("TransferWithAuthorization(address from,address to,uint256 value,uint256 validAfter,uint256 validBefore,bytes32 nonce)") + bytes32 + public constant TRANSFER_WITH_AUTHORIZATION_TYPEHASH = 0x7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a2267; + + // keccak256("ReceiveWithAuthorization(address from,address to,uint256 value,uint256 validAfter,uint256 validBefore,bytes32 nonce)") + bytes32 + public constant RECEIVE_WITH_AUTHORIZATION_TYPEHASH = 0xd099cc98ef71107a616c4f0f941f04c322d8e254fe26b3c6668db87aae413de8; + + // keccak256("CancelAuthorization(address authorizer,bytes32 nonce)") + bytes32 + public constant CANCEL_AUTHORIZATION_TYPEHASH = 0x158b0a9edf7a828aad02f63cd515c68ef2f50ba807396f6d12842833a1597429; + + /** + * @dev authorizer address => nonce => bool (true if nonce is used) + */ + mapping(address => mapping(bytes32 => bool)) private _authorizationStates; + + event AuthorizationUsed(address indexed authorizer, bytes32 indexed nonce); + event AuthorizationCanceled( + address indexed authorizer, + bytes32 indexed nonce + ); + + /** + * @notice Returns the state of an authorization + * @dev Nonces are randomly generated 32-byte data unique to the + * authorizer's address + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + * @return True if the nonce is used + */ + function authorizationState(address authorizer, bytes32 nonce) + external + view + returns (bool) + { + return _authorizationStates[authorizer][nonce]; + } + + /** + * @notice Execute a transfer with a signed authorization + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function _transferWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + uint8 v, + bytes32 r, + bytes32 s + ) internal { + _transferWithAuthorization( + from, + to, + value, + validAfter, + validBefore, + nonce, + abi.encodePacked(r, s, v) + ); + } + + /** + * @notice Execute a transfer with a signed authorization + * @dev EOA wallet signatures should be packed in the order of r, s, v. + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param signature Signature byte array produced by an EOA wallet or a contract wallet + */ + function _transferWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + bytes memory signature + ) internal { + _requireValidAuthorization(from, nonce, validAfter, validBefore); + _requireValidSignature( + from, + keccak256( + abi.encode( + TRANSFER_WITH_AUTHORIZATION_TYPEHASH, + from, + to, + value, + validAfter, + validBefore, + nonce + ) + ), + signature + ); + + _markAuthorizationAsUsed(from, nonce); + _transfer(from, to, value); + } + + /** + * @notice Receive a transfer with a signed authorization from the payer + * @dev This has an additional check to ensure that the payee's address + * matches the caller of this function to prevent front-running attacks. + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function _receiveWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + uint8 v, + bytes32 r, + bytes32 s + ) internal { + _receiveWithAuthorization( + from, + to, + value, + validAfter, + validBefore, + nonce, + abi.encodePacked(r, s, v) + ); + } + + /** + * @notice Receive a transfer with a signed authorization from the payer + * @dev This has an additional check to ensure that the payee's address + * matches the caller of this function to prevent front-running attacks. + * EOA wallet signatures should be packed in the order of r, s, v. + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param signature Signature byte array produced by an EOA wallet or a contract wallet + */ + function _receiveWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + bytes memory signature + ) internal { + require(to == msg.sender, "FiatTokenV2: caller must be the payee"); + _requireValidAuthorization(from, nonce, validAfter, validBefore); + _requireValidSignature( + from, + keccak256( + abi.encode( + RECEIVE_WITH_AUTHORIZATION_TYPEHASH, + from, + to, + value, + validAfter, + validBefore, + nonce + ) + ), + signature + ); + + _markAuthorizationAsUsed(from, nonce); + _transfer(from, to, value); + } + + /** + * @notice Attempt to cancel an authorization + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function _cancelAuthorization( + address authorizer, + bytes32 nonce, + uint8 v, + bytes32 r, + bytes32 s + ) internal { + _cancelAuthorization(authorizer, nonce, abi.encodePacked(r, s, v)); + } + + /** + * @notice Attempt to cancel an authorization + * @dev EOA wallet signatures should be packed in the order of r, s, v. + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + * @param signature Signature byte array produced by an EOA wallet or a contract wallet + */ + function _cancelAuthorization( + address authorizer, + bytes32 nonce, + bytes memory signature + ) internal { + _requireUnusedAuthorization(authorizer, nonce); + _requireValidSignature( + authorizer, + keccak256( + abi.encode(CANCEL_AUTHORIZATION_TYPEHASH, authorizer, nonce) + ), + signature + ); + + _authorizationStates[authorizer][nonce] = true; + emit AuthorizationCanceled(authorizer, nonce); + } + + /** + * @notice Validates that signature against input data struct + * @param signer Signer's address + * @param dataHash Hash of encoded data struct + * @param signature Signature byte array produced by an EOA wallet or a contract wallet + */ + function _requireValidSignature( + address signer, + bytes32 dataHash, + bytes memory signature + ) private view { + require( + SignatureChecker.isValidSignatureNow( + signer, + MessageHashUtils.toTypedDataHash(_domainSeparator(), dataHash), + signature + ), + "FiatTokenV2: invalid signature" + ); + } + + /** + * @notice Check that an authorization is unused + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + */ + function _requireUnusedAuthorization(address authorizer, bytes32 nonce) + private + view + { + require( + !_authorizationStates[authorizer][nonce], + "FiatTokenV2: authorization is used or canceled" + ); + } + + /** + * @notice Check that authorization is valid + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + */ + function _requireValidAuthorization( + address authorizer, + bytes32 nonce, + uint256 validAfter, + uint256 validBefore + ) private view { + require( + now > validAfter, + "FiatTokenV2: authorization is not yet valid" + ); + require(now < validBefore, "FiatTokenV2: authorization is expired"); + _requireUnusedAuthorization(authorizer, nonce); + } + + /** + * @notice Mark an authorization as used + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + */ + function _markAuthorizationAsUsed(address authorizer, bytes32 nonce) + private + { + _authorizationStates[authorizer][nonce] = true; + emit AuthorizationUsed(authorizer, nonce); + } +} + +// contracts/v1.1/FiatTokenV1_1.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title FiatTokenV1_1 + * @dev ERC20 Token backed by fiat reserves + */ +contract FiatTokenV1_1 is FiatTokenV1, Rescuable { + +} + +// contracts/v2/FiatTokenV2.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title FiatToken V2 + * @notice ERC20 Token backed by fiat reserves, version 2 + */ +contract FiatTokenV2 is FiatTokenV1_1, EIP3009, EIP2612 { + uint8 internal _initializedVersion; + + /** + * @notice Initialize v2 + * @param newName New token name + */ + function initializeV2(string calldata newName) external { + // solhint-disable-next-line reason-string + require(initialized && _initializedVersion == 0); + name = newName; + _DEPRECATED_CACHED_DOMAIN_SEPARATOR = EIP712.makeDomainSeparator( + newName, + "2" + ); + _initializedVersion = 1; + } + + /** + * @notice Increase the allowance by a given increment + * @param spender Spender's address + * @param increment Amount of increase in allowance + * @return True if successful + */ + function increaseAllowance(address spender, uint256 increment) + external + virtual + whenNotPaused + notBlacklisted(msg.sender) + notBlacklisted(spender) + returns (bool) + { + _increaseAllowance(msg.sender, spender, increment); + return true; + } + + /** + * @notice Decrease the allowance by a given decrement + * @param spender Spender's address + * @param decrement Amount of decrease in allowance + * @return True if successful + */ + function decreaseAllowance(address spender, uint256 decrement) + external + virtual + whenNotPaused + notBlacklisted(msg.sender) + notBlacklisted(spender) + returns (bool) + { + _decreaseAllowance(msg.sender, spender, decrement); + return true; + } + + /** + * @notice Execute a transfer with a signed authorization + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function transferWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + uint8 v, + bytes32 r, + bytes32 s + ) external whenNotPaused notBlacklisted(from) notBlacklisted(to) { + _transferWithAuthorization( + from, + to, + value, + validAfter, + validBefore, + nonce, + v, + r, + s + ); + } + + /** + * @notice Receive a transfer with a signed authorization from the payer + * @dev This has an additional check to ensure that the payee's address + * matches the caller of this function to prevent front-running attacks. + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function receiveWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + uint8 v, + bytes32 r, + bytes32 s + ) external whenNotPaused notBlacklisted(from) notBlacklisted(to) { + _receiveWithAuthorization( + from, + to, + value, + validAfter, + validBefore, + nonce, + v, + r, + s + ); + } + + /** + * @notice Attempt to cancel an authorization + * @dev Works only if the authorization is not yet used. + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function cancelAuthorization( + address authorizer, + bytes32 nonce, + uint8 v, + bytes32 r, + bytes32 s + ) external whenNotPaused { + _cancelAuthorization(authorizer, nonce, v, r, s); + } + + /** + * @notice Update allowance with a signed permit + * @param owner Token owner's address (Authorizer) + * @param spender Spender's address + * @param value Amount of allowance + * @param deadline The time at which the signature expires (unix time), or max uint256 value to signal no expiration + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + */ + function permit( + address owner, + address spender, + uint256 value, + uint256 deadline, + uint8 v, + bytes32 r, + bytes32 s + ) + external + virtual + whenNotPaused + notBlacklisted(owner) + notBlacklisted(spender) + { + _permit(owner, spender, value, deadline, v, r, s); + } + + /** + * @dev Internal function to increase the allowance by a given increment + * @param owner Token owner's address + * @param spender Spender's address + * @param increment Amount of increase + */ + function _increaseAllowance( + address owner, + address spender, + uint256 increment + ) internal override { + _approve(owner, spender, allowed[owner][spender].add(increment)); + } + + /** + * @dev Internal function to decrease the allowance by a given decrement + * @param owner Token owner's address + * @param spender Spender's address + * @param decrement Amount of decrease + */ + function _decreaseAllowance( + address owner, + address spender, + uint256 decrement + ) internal override { + _approve( + owner, + spender, + allowed[owner][spender].sub( + decrement, + "ERC20: decreased allowance below zero" + ) + ); + } +} + +// contracts/v2/FiatTokenV2_1.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// solhint-disable func-name-mixedcase + +/** + * @title FiatToken V2.1 + * @notice ERC20 Token backed by fiat reserves, version 2.1 + */ +contract FiatTokenV2_1 is FiatTokenV2 { + /** + * @notice Initialize v2.1 + * @param lostAndFound The address to which the locked funds are sent + */ + function initializeV2_1(address lostAndFound) external { + // solhint-disable-next-line reason-string + require(_initializedVersion == 1); + + uint256 lockedAmount = _balanceOf(address(this)); + if (lockedAmount > 0) { + _transfer(address(this), lostAndFound, lockedAmount); + } + _blacklist(address(this)); + + _initializedVersion = 2; + } + + /** + * @notice Version string for the EIP712 domain separator + * @return Version string + */ + function version() external pure returns (string memory) { + return "2"; + } +} + +// contracts/v2/FiatTokenV2_2.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + // solhint-disable-line no-unused-import + // solhint-disable-line no-unused-import + // solhint-disable-line no-unused-import + // solhint-disable-line no-unused-import + +// solhint-disable func-name-mixedcase + +/** + * @title FiatToken V2.2 + * @notice ERC20 Token backed by fiat reserves, version 2.2 + */ +contract FiatTokenV2_2 is FiatTokenV2_1 { + /** + * @notice Initialize v2.2 + * @param accountsToBlacklist A list of accounts to migrate from the old blacklist + * @param newSymbol New token symbol + * data structure to the new blacklist data structure. + */ + function initializeV2_2( + address[] calldata accountsToBlacklist, + string calldata newSymbol + ) external { + // solhint-disable-next-line reason-string + require(_initializedVersion == 2); + + // Update fiat token symbol + symbol = newSymbol; + + // Add previously blacklisted accounts to the new blacklist data structure + // and remove them from the old blacklist data structure. + for (uint256 i = 0; i < accountsToBlacklist.length; i++) { + require( + _deprecatedBlacklisted[accountsToBlacklist[i]], + "FiatTokenV2_2: Blacklisting previously unblacklisted account!" + ); + _blacklist(accountsToBlacklist[i]); + delete _deprecatedBlacklisted[accountsToBlacklist[i]]; + } + _blacklist(address(this)); + delete _deprecatedBlacklisted[address(this)]; + + _initializedVersion = 3; + } + + /** + * @dev Internal function to get the current chain id. + * @return The current chain id. + */ + function _chainId() internal virtual view returns (uint256) { + uint256 chainId; + assembly { + chainId := chainid() + } + return chainId; + } + + /** + * + */ + function _domainSeparator() internal override view returns (bytes32) { + return EIP712.makeDomainSeparator(name, "2", _chainId()); + } + + /** + * @notice Update allowance with a signed permit + * @dev EOA wallet signatures should be packed in the order of r, s, v. + * @param owner Token owner's address (Authorizer) + * @param spender Spender's address + * @param value Amount of allowance + * @param deadline The time at which the signature expires (unix time), or max uint256 value to signal no expiration + * @param signature Signature bytes signed by an EOA wallet or a contract wallet + */ + function permit( + address owner, + address spender, + uint256 value, + uint256 deadline, + bytes memory signature + ) external whenNotPaused { + _permit(owner, spender, value, deadline, signature); + } + + /** + * @notice Execute a transfer with a signed authorization + * @dev EOA wallet signatures should be packed in the order of r, s, v. + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param signature Signature bytes signed by an EOA wallet or a contract wallet + */ + function transferWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + bytes memory signature + ) external whenNotPaused notBlacklisted(from) notBlacklisted(to) { + _transferWithAuthorization( + from, + to, + value, + validAfter, + validBefore, + nonce, + signature + ); + } + + /** + * @notice Receive a transfer with a signed authorization from the payer + * @dev This has an additional check to ensure that the payee's address + * matches the caller of this function to prevent front-running attacks. + * EOA wallet signatures should be packed in the order of r, s, v. + * @param from Payer's address (Authorizer) + * @param to Payee's address + * @param value Amount to be transferred + * @param validAfter The time after which this is valid (unix time) + * @param validBefore The time before which this is valid (unix time) + * @param nonce Unique nonce + * @param signature Signature bytes signed by an EOA wallet or a contract wallet + */ + function receiveWithAuthorization( + address from, + address to, + uint256 value, + uint256 validAfter, + uint256 validBefore, + bytes32 nonce, + bytes memory signature + ) external whenNotPaused notBlacklisted(from) notBlacklisted(to) { + _receiveWithAuthorization( + from, + to, + value, + validAfter, + validBefore, + nonce, + signature + ); + } + + /** + * @notice Attempt to cancel an authorization + * @dev Works only if the authorization is not yet used. + * EOA wallet signatures should be packed in the order of r, s, v. + * @param authorizer Authorizer's address + * @param nonce Nonce of the authorization + * @param signature Signature bytes signed by an EOA wallet or a contract wallet + */ + function cancelAuthorization( + address authorizer, + bytes32 nonce, + bytes memory signature + ) external whenNotPaused { + _cancelAuthorization(authorizer, nonce, signature); + } + + /** + * @dev Helper method that sets the blacklist state of an account on balanceAndBlacklistStates. + * If _shouldBlacklist is true, we apply a (1 << 255) bitmask with an OR operation on the + * account's balanceAndBlacklistState. This flips the high bit for the account to 1, + * indicating that the account is blacklisted. + * + * If _shouldBlacklist if false, we reset the account's balanceAndBlacklistStates to their + * balances. This clears the high bit for the account, indicating that the account is unblacklisted. + * @param _account The address of the account. + * @param _shouldBlacklist True if the account should be blacklisted, false if the account should be unblacklisted. + */ + function _setBlacklistState(address _account, bool _shouldBlacklist) + internal + override + { + balanceAndBlacklistStates[_account] = _shouldBlacklist + ? balanceAndBlacklistStates[_account] | (1 << 255) + : _balanceOf(_account); + } + + /** + * @dev Helper method that sets the balance of an account on balanceAndBlacklistStates. + * Since balances are stored in the last 255 bits of the balanceAndBlacklistStates value, + * we need to ensure that the updated balance does not exceed (2^255 - 1). + * Since blacklisted accounts' balances cannot be updated, the method will also + * revert if the account is blacklisted + * @param _account The address of the account. + * @param _balance The new fiat token balance of the account (max: (2^255 - 1)). + */ + function _setBalance(address _account, uint256 _balance) internal override { + require( + _balance <= ((1 << 255) - 1), + "FiatTokenV2_2: Balance exceeds (2^255 - 1)" + ); + require( + !_isBlacklisted(_account), + "FiatTokenV2_2: Account is blacklisted" + ); + + balanceAndBlacklistStates[_account] = _balance; + } + + /** + * + */ + function _isBlacklisted(address _account) + internal + override + view + returns (bool) + { + return balanceAndBlacklistStates[_account] >> 255 == 1; + } + + /** + * @dev Helper method to obtain the balance of an account. Since balances + * are stored in the last 255 bits of the balanceAndBlacklistStates value, + * we apply a ((1 << 255) - 1) bit bitmask with an AND operation on the + * balanceAndBlacklistState to obtain the balance. + * @param _account The address of the account. + * @return The fiat token balance of the account. + */ + function _balanceOf(address _account) + internal + override + view + returns (uint256) + { + return balanceAndBlacklistStates[_account] & ((1 << 255) - 1); + } + + /** + * + */ + function approve(address spender, uint256 value) + external + override + whenNotPaused + returns (bool) + { + _approve(msg.sender, spender, value); + return true; + } + + /** + * + */ + function permit( + address owner, + address spender, + uint256 value, + uint256 deadline, + uint8 v, + bytes32 r, + bytes32 s + ) external override whenNotPaused { + _permit(owner, spender, value, deadline, v, r, s); + } + + /** + * + */ + function increaseAllowance(address spender, uint256 increment) + external + override + whenNotPaused + returns (bool) + { + _increaseAllowance(msg.sender, spender, increment); + return true; + } + + /** + * + */ + function decreaseAllowance(address spender, uint256 decrement) + external + override + whenNotPaused + returns (bool) + { + _decreaseAllowance(msg.sender, spender, decrement); + return true; + } +} diff --git a/contracts/contracts/libraries/usdc/MigrationUSDC.sol b/contracts/contracts/libraries/usdc/MigrationUSDC.sol new file mode 100644 index 000000000..ffef27aa9 --- /dev/null +++ b/contracts/contracts/libraries/usdc/MigrationUSDC.sol @@ -0,0 +1,110 @@ +// SPDX-License-Identifier: MIT + +pragma solidity =0.8.24; + +import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; +import {PausableUpgradeable} from "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol"; +import {ReentrancyGuardUpgradeable} from "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol"; +import {IERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol"; +import {SafeERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol"; + +contract MigrationUSDC is OwnableUpgradeable, PausableUpgradeable, ReentrancyGuardUpgradeable { + using SafeERC20Upgradeable for IERC20Upgradeable; + + error ErrZeroAddress(); + + /// @dev Thrown the token balance is zero. + error ErrorTokenBalanceZero(); + + event Migrate(address indexed user, uint256 amount); + event Transfer(address indexed token, address indexed to, uint256 amount); + event UpdateRecipient(address indexed oldRecipient, address indexed newRecipient); + + /// @notice The address of old USDC address. + address public immutable OLD_USDC; + + /// @notice The address of new USDC address. + address public immutable NEW_USDC; + + /// @notice Wallet that will receive the tokens on L2. + address public recipient; + + /*************** + * Constructor * + ***************/ + /// @notice Constructor for `MigrationUSDC` implementation contract. + /// + /// @param _oldUSDC The address of old USDC in L2. + /// @param _newUSDC The address of new USDC in L2. + constructor(address _oldUSDC, address _newUSDC) { + _disableInitializers(); + + OLD_USDC = _oldUSDC; + NEW_USDC = _newUSDC; + } + + // initialize contract status + function initialize(address _recipient) external initializer { + if (_recipient == address(0)) { + revert ErrZeroAddress(); + } + recipient = _recipient; + + __Ownable_init(); + __Pausable_init(); + __ReentrancyGuard_init(); + + emit UpdateRecipient(address(0), recipient); + } + + // Transfer all old USDC to this contract and then transfer new USDC token to msg sender. + function migrate() external nonReentrant whenNotPaused { + // Get old USDC balance. + uint256 balance = IERC20Upgradeable(OLD_USDC).balanceOf(_msgSender()); + if (balance == 0) { + revert ErrorTokenBalanceZero(); + } + // Transfer token into this contract. + IERC20Upgradeable(OLD_USDC).safeTransferFrom(_msgSender(), address(this), balance); + // Transfer new USDC token to msg sender. + IERC20Upgradeable(NEW_USDC).transfer(_msgSender(), balance); + emit Migrate(_msgSender(), balance); + } + + // Transfer token to other address. + function transferToken(address _token, uint256 _amount) external onlyOwner { + if (recipient == address(0)) { + revert ErrZeroAddress(); + } + uint256 balance = IERC20Upgradeable(_token).balanceOf(address(this)); + if (balance == 0) { + revert ErrorTokenBalanceZero(); + } + // transfer all token + if (balance < _amount) { + _amount = balance; + } + // Transfer token. + IERC20Upgradeable(_token).transfer(recipient, _amount); + emit Transfer(_token, recipient, _amount); + } + + // Update the address of recipient. + function updateRecipient(address _newRecipient) external onlyOwner { + address _oldRecipient = recipient; + recipient = _newRecipient; + + emit UpdateRecipient(_oldRecipient, _newRecipient); + } + + // Change pause status + function setPause(bool status) external onlyOwner { + if (status) { + _requireNotPaused(); + _pause(); + } else { + _requirePaused(); + _unpause(); + } + } +} diff --git a/contracts/contracts/libraries/usdc/SignatureChecker.sol.flatten b/contracts/contracts/libraries/usdc/SignatureChecker.sol.flatten new file mode 100644 index 000000000..5f3ef0554 --- /dev/null +++ b/contracts/contracts/libraries/usdc/SignatureChecker.sol.flatten @@ -0,0 +1,219 @@ +// SPDX-License-Identifier: Apache-2.0 +pragma solidity =0.6.12; + +// contracts/interface/IERC1271.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @dev Interface of the ERC1271 standard signature validation method for + * contracts as defined in https://eips.ethereum.org/EIPS/eip-1271[ERC-1271]. + */ +interface IERC1271 { + /** + * @dev Should return whether the signature provided is valid for the provided data + * @param hash Hash of the data to be signed + * @param signature Signature byte array associated with the provided data hash + * @return magicValue bytes4 magic value 0x1626ba7e when function passes + */ + function isValidSignature(bytes32 hash, bytes memory signature) + external + view + returns (bytes4 magicValue); +} + +// contracts/util/ECRecover.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title ECRecover + * @notice A library that provides a safe ECDSA recovery function + */ +library ECRecover { + /** + * @notice Recover signer's address from a signed message + * @dev Adapted from: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/65e4ffde586ec89af3b7e9140bdc9235d1254853/contracts/cryptography/ECDSA.sol + * Modifications: Accept v, r, and s as separate arguments + * @param digest Keccak-256 hash digest of the signed message + * @param v v of the signature + * @param r r of the signature + * @param s s of the signature + * @return Signer address + */ + function recover( + bytes32 digest, + uint8 v, + bytes32 r, + bytes32 s + ) internal pure returns (address) { + // EIP-2 still allows signature malleability for ecrecover(). Remove this possibility and make the signature + // unique. Appendix F in the Ethereum Yellow paper (https://ethereum.github.io/yellowpaper/paper.pdf), defines + // the valid range for s in (281): 0 < s < secp256k1n ÷ 2 + 1, and for v in (282): v ∈ {27, 28}. Most + // signatures from current libraries generate a unique signature with an s-value in the lower half order. + // + // If your library generates malleable signatures, such as s-values in the upper range, calculate a new s-value + // with 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 - s1 and flip v from 27 to 28 or + // vice versa. If your library also generates signatures with 0/1 for v instead 27/28, add 27 to v to accept + // these malleable signatures as well. + if ( + uint256(s) > + 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0 + ) { + revert("ECRecover: invalid signature 's' value"); + } + + if (v != 27 && v != 28) { + revert("ECRecover: invalid signature 'v' value"); + } + + // If the signature is valid (and not malleable), return the signer address + address signer = ecrecover(digest, v, r, s); + require(signer != address(0), "ECRecover: invalid signature"); + + return signer; + } + + /** + * @notice Recover signer's address from a signed message + * @dev Adapted from: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/0053ee040a7ff1dbc39691c9e67a69f564930a88/contracts/utils/cryptography/ECDSA.sol + * @param digest Keccak-256 hash digest of the signed message + * @param signature Signature byte array associated with hash + * @return Signer address + */ + function recover(bytes32 digest, bytes memory signature) + internal + pure + returns (address) + { + require(signature.length == 65, "ECRecover: invalid signature length"); + + bytes32 r; + bytes32 s; + uint8 v; + + // ecrecover takes the signature parameters, and the only way to get them + // currently is to use assembly. + /// @solidity memory-safe-assembly + assembly { + r := mload(add(signature, 0x20)) + s := mload(add(signature, 0x40)) + v := byte(0, mload(add(signature, 0x60))) + } + return recover(digest, v, r, s); + } +} + +// contracts/util/SignatureChecker.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @dev Signature verification helper that can be used instead of `ECRecover.recover` to seamlessly support both ECDSA + * signatures from externally owned accounts (EOAs) as well as ERC1271 signatures from smart contract wallets. + * + * Adapted from https://github.com/OpenZeppelin/openzeppelin-contracts/blob/21bb89ef5bfc789b9333eb05e3ba2b7b284ac77c/contracts/utils/cryptography/SignatureChecker.sol + */ +library SignatureChecker { + /** + * @dev Checks if a signature is valid for a given signer and data hash. If the signer is a smart contract, the + * signature is validated against that smart contract using ERC1271, otherwise it's validated using `ECRecover.recover`. + * @param signer Address of the claimed signer + * @param digest Keccak-256 hash digest of the signed message + * @param signature Signature byte array associated with hash + */ + function isValidSignatureNow( + address signer, + bytes32 digest, + bytes memory signature + ) external view returns (bool) { + if (!isContract(signer)) { + return ECRecover.recover(digest, signature) == signer; + } + return isValidERC1271SignatureNow(signer, digest, signature); + } + + /** + * @dev Checks if a signature is valid for a given signer and data hash. The signature is validated + * against the signer smart contract using ERC1271. + * @param signer Address of the claimed signer + * @param digest Keccak-256 hash digest of the signed message + * @param signature Signature byte array associated with hash + * + * NOTE: Unlike ECDSA signatures, contract signatures are revocable, and the outcome of this function can thus + * change through time. It could return true at block N and false at block N+1 (or the opposite). + */ + function isValidERC1271SignatureNow( + address signer, + bytes32 digest, + bytes memory signature + ) internal view returns (bool) { + (bool success, bytes memory result) = signer.staticcall( + abi.encodeWithSelector( + IERC1271.isValidSignature.selector, + digest, + signature + ) + ); + return (success && + result.length >= 32 && + abi.decode(result, (bytes32)) == + bytes32(IERC1271.isValidSignature.selector)); + } + + /** + * @dev Checks if the input address is a smart contract. + */ + function isContract(address addr) internal view returns (bool) { + uint256 size; + assembly { + size := extcodesize(addr) + } + return size > 0; + } +} diff --git a/contracts/tasks/token_deploy.ts b/contracts/tasks/token_deploy.ts index bd7a10ef3..b942b243b 100644 --- a/contracts/tasks/token_deploy.ts +++ b/contracts/tasks/token_deploy.ts @@ -253,11 +253,11 @@ task("init-l1-lidogateway") const gateway = await GatewayFactory.attach(taskArgs.l1lidogateway) console.log(`gateway at ${gateway.address}`) - let res = await gateway.initialize(taskArgs.counterpart,taskArgs.router,taskArgs.messenger) + let res = await gateway.initialize(taskArgs.counterpart, taskArgs.router, taskArgs.messenger) let rec = await res.wait() console.log(`initialize ${rec.status == 1}, txHash: ${rec.transactionHash}`) - res = await gateway.initializeV2(taskArgs.opter,taskArgs.opter,taskArgs.opter,taskArgs.opter) + res = await gateway.initializeV2(taskArgs.opter, taskArgs.opter, taskArgs.opter, taskArgs.opter) rec = await res.wait() console.log(`initializeV2 ${rec.status == 1}, txHash: ${rec.transactionHash}`) @@ -268,14 +268,14 @@ task("init-l1-lidogateway") let withdrawalEnabled = await gateway.isWithdrawalsEnabled() console.log(`counterpart ${counterpart}, router ${router}, messenger ${messenger}, depositEnabled ${depositEnabled}, withdrawalEnabled ${withdrawalEnabled}`) - const DEPOSITS_ENABLER_ROLE =await gateway.DEPOSITS_ENABLER_ROLE() - const DEPOSITS_DISABLER_ROLE =await gateway.DEPOSITS_DISABLER_ROLE() - const WITHDRAWALS_ENABLER_ROLE =await gateway.WITHDRAWALS_ENABLER_ROLE() - const WITHDRAWALS_DISABLER_ROLE =await gateway.WITHDRAWALS_DISABLER_ROLE() - const depositE = await gateway.hasRole(DEPOSITS_ENABLER_ROLE,taskArgs.opter) - const depositD = await gateway.hasRole(DEPOSITS_DISABLER_ROLE,taskArgs.opter) - const withdrawE = await gateway.hasRole(WITHDRAWALS_ENABLER_ROLE,taskArgs.opter) - const withdrawD = await gateway.hasRole(WITHDRAWALS_DISABLER_ROLE,taskArgs.opter) + const DEPOSITS_ENABLER_ROLE = await gateway.DEPOSITS_ENABLER_ROLE() + const DEPOSITS_DISABLER_ROLE = await gateway.DEPOSITS_DISABLER_ROLE() + const WITHDRAWALS_ENABLER_ROLE = await gateway.WITHDRAWALS_ENABLER_ROLE() + const WITHDRAWALS_DISABLER_ROLE = await gateway.WITHDRAWALS_DISABLER_ROLE() + const depositE = await gateway.hasRole(DEPOSITS_ENABLER_ROLE, taskArgs.opter) + const depositD = await gateway.hasRole(DEPOSITS_DISABLER_ROLE, taskArgs.opter) + const withdrawE = await gateway.hasRole(WITHDRAWALS_ENABLER_ROLE, taskArgs.opter) + const withdrawD = await gateway.hasRole(WITHDRAWALS_DISABLER_ROLE, taskArgs.opter) console.log(`Role: depositE ${depositE}, depositD ${depositD}, withdrawE ${withdrawE}, withdrawD ${withdrawD}`) }) @@ -301,11 +301,11 @@ task("init-l2-lidogateway") const gateway = await GatewayFactory.attach(taskArgs.l2lidogateway) console.log(`gateway at ${gateway.address}`) - let res = await gateway.initialize(taskArgs.counterpart,taskArgs.router,taskArgs.messenger) + let res = await gateway.initialize(taskArgs.counterpart, taskArgs.router, taskArgs.messenger) let rec = await res.wait() console.log(`initialize ${rec.status == 1}, txHash: ${rec.transactionHash}`) - res = await gateway.initializeV2(taskArgs.opter,taskArgs.opter,taskArgs.opter,taskArgs.opter) + res = await gateway.initializeV2(taskArgs.opter, taskArgs.opter, taskArgs.opter, taskArgs.opter) rec = await res.wait() console.log(`initializeV2 ${rec.status == 1}, txHash: ${rec.transactionHash}`) @@ -316,14 +316,14 @@ task("init-l2-lidogateway") let withdrawalEnabled = await gateway.isWithdrawalsEnabled() console.log(`counterpart ${counterpart}, router ${router}, messenger ${messenger}, depositEnabled ${depositEnabled}, withdrawalEnabled ${withdrawalEnabled}`) - const DEPOSITS_ENABLER_ROLE =await gateway.DEPOSITS_ENABLER_ROLE() - const DEPOSITS_DISABLER_ROLE =await gateway.DEPOSITS_DISABLER_ROLE() - const WITHDRAWALS_ENABLER_ROLE =await gateway.WITHDRAWALS_ENABLER_ROLE() - const WITHDRAWALS_DISABLER_ROLE =await gateway.WITHDRAWALS_DISABLER_ROLE() - const depositE = await gateway.hasRole(DEPOSITS_ENABLER_ROLE,taskArgs.opter) - const depositD = await gateway.hasRole(DEPOSITS_DISABLER_ROLE,taskArgs.opter) - const withdrawE = await gateway.hasRole(WITHDRAWALS_ENABLER_ROLE,taskArgs.opter) - const withdrawD = await gateway.hasRole(WITHDRAWALS_DISABLER_ROLE,taskArgs.opter) + const DEPOSITS_ENABLER_ROLE = await gateway.DEPOSITS_ENABLER_ROLE() + const DEPOSITS_DISABLER_ROLE = await gateway.DEPOSITS_DISABLER_ROLE() + const WITHDRAWALS_ENABLER_ROLE = await gateway.WITHDRAWALS_ENABLER_ROLE() + const WITHDRAWALS_DISABLER_ROLE = await gateway.WITHDRAWALS_DISABLER_ROLE() + const depositE = await gateway.hasRole(DEPOSITS_ENABLER_ROLE, taskArgs.opter) + const depositD = await gateway.hasRole(DEPOSITS_DISABLER_ROLE, taskArgs.opter) + const withdrawE = await gateway.hasRole(WITHDRAWALS_ENABLER_ROLE, taskArgs.opter) + const withdrawD = await gateway.hasRole(WITHDRAWALS_DISABLER_ROLE, taskArgs.opter) console.log(`Role: depositE ${depositE}, depositD ${depositD}, withdrawE ${withdrawE}, withdrawD ${withdrawD}`) }) @@ -336,48 +336,49 @@ task("upgrade-l1-usdcgateway") .addParam("router") .addParam("messenger") .setAction(async (taskArgs, hre) => { - // params check - if (!ethers.utils.isAddress(taskArgs.proxyadmin) || - !ethers.utils.isAddress(taskArgs.l1usdcgatewayproxy) || - !ethers.utils.isAddress(taskArgs.l1token) || - !ethers.utils.isAddress(taskArgs.l2token) || - !ethers.utils.isAddress(taskArgs.counterpart) || - !ethers.utils.isAddress(taskArgs.router) || - !ethers.utils.isAddress(taskArgs.messenger) - ) { - console.error(`address params check failed`) - return - } - // deploy gateway impl - const GatewayFactory = await hre.ethers.getContractFactory("L1USDCGateway") - const gateway = await GatewayFactory.deploy(taskArgs.l1token, taskArgs.l2token) - await gateway.deployed() - console.log(`gateway impl deployed at ${gateway.address}`) - - // upgrade proxy with initialize - const ProxyAdminFactory = await hre.ethers.getContractFactory("ProxyAdmin") - const proxyAdmin = await ProxyAdminFactory.attach(taskArgs.proxyadmin) - console.log(`proxy admin at ${proxyAdmin.address}`) - - let res = await proxyAdmin.upgradeAndCall( - taskArgs.l1usdcgatewayproxy, - gateway.address, - GatewayFactory.interface.encodeFunctionData("initialize", [ - taskArgs.counterpart, - taskArgs.router, - taskArgs.messenger - ] - ) - ) - let rec =await res.wait() - console.log(`upgrade gateway ${rec.status == 1}`) - - const gatewayProxy = GatewayFactory.attach(taskArgs.l1usdcgatewayproxy) - const counterpart = await gatewayProxy.counterpart() - const router = await gatewayProxy.router() - const l1USDC = await gatewayProxy.l1USDC() - const l2USDC = await gatewayProxy.l2USDC() - console.log(`gatewayProxy ${gatewayProxy.address}, counterpart ${counterpart}, router ${router}, l1USDC ${l1USDC}, l2USDC ${l2USDC}`) + // params check + if (!ethers.utils.isAddress(taskArgs.proxyadmin) || + !ethers.utils.isAddress(taskArgs.l1usdcgatewayproxy) || + !ethers.utils.isAddress(taskArgs.l1token) || + !ethers.utils.isAddress(taskArgs.l2token) || + !ethers.utils.isAddress(taskArgs.counterpart) || + !ethers.utils.isAddress(taskArgs.router) || + !ethers.utils.isAddress(taskArgs.messenger) + ) { + console.error(`address params check failed`) + return + } + // deploy gateway impl + const GatewayFactory = await hre.ethers.getContractFactory("L1USDCGateway") + const gateway = await GatewayFactory.deploy(taskArgs.l1token, taskArgs.l2token) + await gateway.deployed() + console.log(`gateway impl deployed at ${gateway.address}`) + + // upgrade proxy with initialize + const ProxyAdminFactory = await hre.ethers.getContractFactory("ProxyAdmin") + const proxyAdmin = await ProxyAdminFactory.attach(taskArgs.proxyadmin) + console.log(`proxy admin at ${proxyAdmin.address}`) + + let res = await proxyAdmin.upgrade( + taskArgs.l1usdcgatewayproxy, + gateway.address + ) + let rec = await res.wait() + console.log(`upgrade gateway ${rec.status == 1}`) + + + const gatewayProxy = GatewayFactory.attach(taskArgs.l1usdcgatewayproxy) + res = await gatewayProxy.initialize(taskArgs.counterpart, taskArgs.router, taskArgs.messenger) + rec = await res.wait() + console.log(`init gateway ${rec.status == 1}`) + + const owner = await gatewayProxy.owner() + const counterpart = await gatewayProxy.counterpart() + const router = await gatewayProxy.router() + const messenger = await gatewayProxy.messenger() + const l1USDC = await gatewayProxy.l1USDC() + const l2USDC = await gatewayProxy.l2USDC() + console.log(`owner ${owner}, gatewayProxy ${gatewayProxy.address}, counterpart ${counterpart}, router ${router}, messenger ${messenger}, l1USDC ${l1USDC}, l2USDC ${l2USDC}`) }) task("upgrade-l2-usdcgateway") @@ -389,48 +390,45 @@ task("upgrade-l2-usdcgateway") .addParam("router") .addParam("messenger") .setAction(async (taskArgs, hre) => { - // params check - if (!ethers.utils.isAddress(taskArgs.proxyadmin) || - !ethers.utils.isAddress(taskArgs.l2usdcgatewayproxy) || - !ethers.utils.isAddress(taskArgs.l1token) || - !ethers.utils.isAddress(taskArgs.l2token) || - !ethers.utils.isAddress(taskArgs.counterpart) || - !ethers.utils.isAddress(taskArgs.router) || - !ethers.utils.isAddress(taskArgs.messenger) - ) { - console.error(`address params check failed`) - return - } - // deploy gateway impl - const GatewayFactory = await hre.ethers.getContractFactory("L2USDCGateway") - const gateway = await GatewayFactory.deploy(taskArgs.l1token, taskArgs.l2token) - await gateway.deployed() - console.log(`gateway impl deployed at ${gateway.address}`) - - // upgrade proxy with initialize - const ProxyAdminFactory = await hre.ethers.getContractFactory("ProxyAdmin") - const proxyAdmin = await ProxyAdminFactory.attach(taskArgs.proxyadmin) - console.log(`proxy admin at ${proxyAdmin.address}`) - - let res = await proxyAdmin.upgradeAndCall( - taskArgs.l2usdcgatewayproxy, - gateway.address, - GatewayFactory.interface.encodeFunctionData("initialize", [ - taskArgs.counterpart, - taskArgs.router, - taskArgs.messenger - ] - ) - ) - let rec =await res.wait() - console.log(`upgrade gateway ${rec.status == 1}`) - - const gatewayProxy = GatewayFactory.attach(taskArgs.l2usdcgatewayproxy) - const counterpart = await gatewayProxy.counterpart() - const router = await gatewayProxy.router() - const l1USDC = await gatewayProxy.l1USDC() - const l2USDC = await gatewayProxy.l2USDC() - console.log(`gatewayProxy ${gatewayProxy.address}, counterpart ${counterpart}, router ${router}, l1USDC ${l1USDC}, l2USDC ${l2USDC}`) + // params check + if (!ethers.utils.isAddress(taskArgs.proxyadmin) || + !ethers.utils.isAddress(taskArgs.l2usdcgatewayproxy) || + !ethers.utils.isAddress(taskArgs.l1token) || + !ethers.utils.isAddress(taskArgs.l2token) || + !ethers.utils.isAddress(taskArgs.counterpart) || + !ethers.utils.isAddress(taskArgs.router) || + !ethers.utils.isAddress(taskArgs.messenger) + ) { + console.error(`address params check failed`) + return + } + // deploy gateway impl + const GatewayFactory = await hre.ethers.getContractFactory("L2USDCGateway") + const gateway = await GatewayFactory.deploy(taskArgs.l1token, taskArgs.l2token) + await gateway.deployed() + console.log(`gateway impl deployed at ${gateway.address}`) + + // upgrade proxy with initialize + const ProxyAdminFactory = await hre.ethers.getContractFactory("ProxyAdmin") + const proxyAdmin = await ProxyAdminFactory.attach(taskArgs.proxyadmin) + console.log(`proxy admin at ${proxyAdmin.address}`) + + let res = await proxyAdmin.upgrade( + taskArgs.l2usdcgatewayproxy, + gateway.address + ) + let rec = await res.wait() + console.log(`upgrade gateway ${rec.status == 1}`) + + const gatewayProxy = GatewayFactory.attach(taskArgs.l2usdcgatewayproxy) + res = await gatewayProxy.initialize(taskArgs.counterpart, taskArgs.router, taskArgs.messenger) + rec = await res.wait() + console.log(`init gateway ${rec.status == 1}`) + const counterpart = await gatewayProxy.counterpart() + const router = await gatewayProxy.router() + const l1USDC = await gatewayProxy.l1USDC() + const l2USDC = await gatewayProxy.l2USDC() + console.log(`gatewayProxy ${gatewayProxy.address}, counterpart ${counterpart}, router ${router}, l1USDC ${l1USDC}, l2USDC ${l2USDC}`) }) task("upgrade-l2-usdc-v2") @@ -454,7 +452,7 @@ task("upgrade-l2-usdc-v2") let res = await proxyAdmin.upgradeAndCall( taskArgs.l2usdcproxy, taskArgs.newimpl, - new ethers.utils.Interface(V2_1ABI).encodeFunctionData("initializeV2",[ + new ethers.utils.Interface(V2_1ABI).encodeFunctionData("initializeV2", [ "USD Coin" ]) ) @@ -491,7 +489,7 @@ task("upgrade-l2-usdc-v2-1") let rec = await res.wait() console.log(`upgrade usdc v2 ${rec.status == 1}`) - const l2usdc = new ethers.Contract(taskArgs.l2usdcproxy,new ethers.utils.Interface(V2_1ABI)) + const l2usdc = new ethers.Contract(taskArgs.l2usdcproxy, new ethers.utils.Interface(V2_1ABI)) res = await l2usdc.connect(deployer).initializeV2("USD Coin") rec = await res.wait() @@ -501,3 +499,115 @@ task("upgrade-l2-usdc-v2-1") rec = await res.wait() console.log(`l2 usdc initializeV2_1 ${rec.status == 1}`) }) + +task("deploy-l1-proxy") + .addParam("proxyadmin") + .addParam("empty") + .setAction(async (taskArgs, hre) => { + // params check + if (!ethers.utils.isAddress(taskArgs.proxyadmin) || + !ethers.utils.isAddress(taskArgs.empty) + ) { + console.error(`address params check failed`) + return + } + + const TransparentProxyFactory = await hre.ethers.getContractFactory("TransparentUpgradeableProxy") + const proxy = await TransparentProxyFactory.deploy( + taskArgs.empty, //logic + taskArgs.proxyadmin, //admin + "0x" + ) + await proxy.deployed() + console.log(`proxy deployed at ${proxy.address}`) + }) + + +task("deploy-l2-usdcgateway") + .addParam("proxyadmin") + .addParam("l1token") + .addParam("l2token") + .addParam("counterpart") + .addParam("router") + .addParam("messenger") + .setAction(async (taskArgs, hre) => { + // params check + if (!ethers.utils.isAddress(taskArgs.proxyadmin) || + !ethers.utils.isAddress(taskArgs.l1token) || + !ethers.utils.isAddress(taskArgs.l2token) || + !ethers.utils.isAddress(taskArgs.counterpart) || + !ethers.utils.isAddress(taskArgs.router) || + !ethers.utils.isAddress(taskArgs.messenger) + ) { + console.error(`address params check failed`) + return + } + // deploy gateway impl + const GatewayFactory = await hre.ethers.getContractFactory("L2USDCGateway") + const gateway = await GatewayFactory.deploy(taskArgs.l1token, taskArgs.l2token) + await gateway.deployed() + console.log(`gateway impl deployed at ${gateway.address}`) + + const TransparentProxyFactory = await hre.ethers.getContractFactory("TransparentUpgradeableProxy") + const proxy = await TransparentProxyFactory.deploy( + gateway.address, //logic + taskArgs.proxyadmin, //admin + GatewayFactory.interface.encodeFunctionData("initialize", [ + taskArgs.counterpart, + taskArgs.router, + taskArgs.messenger + ] + ) + ) + await proxy.deployed() + console.log(`gateway proxy deployed at ${proxy.address}`) + + const gatewayProxy = GatewayFactory.attach(proxy.address) + const owner = await gatewayProxy.owner() + const counterpart = await gatewayProxy.counterpart() + const router = await gatewayProxy.router() + const messenger = await gatewayProxy.messenger() + const l1USDC = await gatewayProxy.l1USDC() + const l2USDC = await gatewayProxy.l2USDC() + console.log(`owner ${owner}, gatewayProxy ${gatewayProxy.address}, counterpart ${counterpart}, router ${router}, messenger ${messenger}, l1USDC ${l1USDC}, l2USDC ${l2USDC}`) + }) + +task("deploy-l2-MigrationUSDC") + .addParam("proxyadmin") + .addParam("oldtoken") + .addParam("newtoken") + .addParam("recipient") + .setAction(async (taskArgs, hre) => { + // params check + if (!ethers.utils.isAddress(taskArgs.proxyadmin) || + !ethers.utils.isAddress(taskArgs.oldtoken) || + !ethers.utils.isAddress(taskArgs.recipient) || + !ethers.utils.isAddress(taskArgs.newtoken) + ) { + console.error(`address params check failed`) + return + } + // deploy gateway impl + const ContractFactory = await hre.ethers.getContractFactory("MigrationUSDC") + const contract = await ContractFactory.deploy(taskArgs.oldtoken, taskArgs.newtoken) + await contract.deployed() + console.log(`MigrationUSDC impl deployed at ${contract.address}`) + + const TransparentProxyFactory = await hre.ethers.getContractFactory("TransparentUpgradeableProxy") + const proxy = await TransparentProxyFactory.deploy( + contract.address, //logic + taskArgs.proxyadmin, //admin + ContractFactory.interface.encodeFunctionData("initialize", [ + taskArgs.recipient + ] + ) + ) + await proxy.deployed() + console.log(`MigrationUSDC proxy deployed at ${proxy.address}`) + + const migrationProxy = ContractFactory.attach(proxy.address) + const owner = await migrationProxy.owner() + const oldtoken = await migrationProxy.OLD_USDC() + const newtoken = await migrationProxy.NEW_USDC() + console.log(`owner ${owner}, oldtoken ${oldtoken}, newtoken ${newtoken}`) + }) \ No newline at end of file From 278ac64893896bede69a32d4f344daad8d40c7ef Mon Sep 17 00:00:00 2001 From: kukoo Date: Wed, 13 Nov 2024 14:43:18 +0800 Subject: [PATCH 07/33] Add usdc master minter flatten file (#637) --- .../libraries/usdc/MasterMinter.sol.flatten | 676 ++++++++++++++++++ 1 file changed, 676 insertions(+) create mode 100644 contracts/contracts/libraries/usdc/MasterMinter.sol.flatten diff --git a/contracts/contracts/libraries/usdc/MasterMinter.sol.flatten b/contracts/contracts/libraries/usdc/MasterMinter.sol.flatten new file mode 100644 index 000000000..94eb3dc20 --- /dev/null +++ b/contracts/contracts/libraries/usdc/MasterMinter.sol.flatten @@ -0,0 +1,676 @@ +// SPDX-License-Identifier: Apache-2.0 +pragma solidity <0.8.0 =0.6.12 >=0.6.0; + +// contracts/minting/MinterManagementInterface.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @dev A contract that implements the MinterManagementInterface has external + * functions for adding and removing minters and modifying their allowances. + * An example is the FiatTokenV1 contract. + */ +interface MinterManagementInterface { + function isMinter(address _account) external view returns (bool); + + function minterAllowance(address _minter) external view returns (uint256); + + function configureMinter(address _minter, uint256 _minterAllowedAmount) + external + returns (bool); + + function removeMinter(address _minter) external returns (bool); +} + +// contracts/v1/Ownable.sol +/** + + * + * Copyright (c) 2018 zOS Global Limited. + * Copyright (c) 2018-2020 CENTRE SECZ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +/** + * @notice The Ownable contract has an owner address, and provides basic + * authorization control functions + * @dev Forked from https://github.com/OpenZeppelin/openzeppelin-labs/blob/3887ab77b8adafba4a26ace002f3a684c1a3388b/upgradeability_ownership/contracts/ownership/Ownable.sol + * Modifications: + * 1. Consolidate OwnableStorage into this contract (7/13/18) + * 2. Reformat, conform to Solidity 0.6 syntax, and add error messages (5/13/20) + * 3. Make public functions external (5/27/20) + */ +contract Ownable { + // Owner of the contract + address private _owner; + + /** + * @dev Event to show ownership has been transferred + * @param previousOwner representing the address of the previous owner + * @param newOwner representing the address of the new owner + */ + event OwnershipTransferred(address previousOwner, address newOwner); + + /** + * @dev The constructor sets the original owner of the contract to the sender account. + */ + constructor() public { + setOwner(msg.sender); + } + + /** + * @dev Tells the address of the owner + * @return the address of the owner + */ + function owner() external view returns (address) { + return _owner; + } + + /** + * @dev Sets a new owner address + */ + function setOwner(address newOwner) internal { + _owner = newOwner; + } + + /** + * @dev Throws if called by any account other than the owner. + */ + modifier onlyOwner() { + require(msg.sender == _owner, "Ownable: caller is not the owner"); + _; + } + + /** + * @dev Allows the current owner to transfer control of the contract to a newOwner. + * @param newOwner The address to transfer ownership to. + */ + function transferOwnership(address newOwner) external onlyOwner { + require( + newOwner != address(0), + "Ownable: new owner is the zero address" + ); + emit OwnershipTransferred(_owner, newOwner); + setOwner(newOwner); + } +} + +// node_modules/@openzeppelin/contracts/math/SafeMath.sol + +/** + * @dev Wrappers over Solidity's arithmetic operations with added overflow + * checks. + * + * Arithmetic operations in Solidity wrap on overflow. This can easily result + * in bugs, because programmers usually assume that an overflow raises an + * error, which is the standard behavior in high level programming languages. + * `SafeMath` restores this intuition by reverting the transaction when an + * operation overflows. + * + * Using this library instead of the unchecked operations eliminates an entire + * class of bugs, so it's recommended to use it always. + */ +library SafeMath { + /** + * @dev Returns the addition of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { + uint256 c = a + b; + if (c < a) return (false, 0); + return (true, c); + } + + /** + * @dev Returns the substraction of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b > a) return (false, 0); + return (true, a - b); + } + + /** + * @dev Returns the multiplication of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { + // Gas optimization: this is cheaper than requiring 'a' not being zero, but the + // benefit is lost if 'b' is also tested. + // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 + if (a == 0) return (true, 0); + uint256 c = a * b; + if (c / a != b) return (false, 0); + return (true, c); + } + + /** + * @dev Returns the division of two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b == 0) return (false, 0); + return (true, a / b); + } + + /** + * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b == 0) return (false, 0); + return (true, a % b); + } + + /** + * @dev Returns the addition of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `+` operator. + * + * Requirements: + * + * - Addition cannot overflow. + */ + function add(uint256 a, uint256 b) internal pure returns (uint256) { + uint256 c = a + b; + require(c >= a, "SafeMath: addition overflow"); + return c; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting on + * overflow (when the result is negative). + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b) internal pure returns (uint256) { + require(b <= a, "SafeMath: subtraction overflow"); + return a - b; + } + + /** + * @dev Returns the multiplication of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `*` operator. + * + * Requirements: + * + * - Multiplication cannot overflow. + */ + function mul(uint256 a, uint256 b) internal pure returns (uint256) { + if (a == 0) return 0; + uint256 c = a * b; + require(c / a == b, "SafeMath: multiplication overflow"); + return c; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting on + * division by zero. The result is rounded towards zero. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b) internal pure returns (uint256) { + require(b > 0, "SafeMath: division by zero"); + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting when dividing by zero. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b) internal pure returns (uint256) { + require(b > 0, "SafeMath: modulo by zero"); + return a % b; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting with custom message on + * overflow (when the result is negative). + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {trySub}. + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b <= a, errorMessage); + return a - b; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting with custom message on + * division by zero. The result is rounded towards zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryDiv}. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b > 0, errorMessage); + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting with custom message when dividing by zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryMod}. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b > 0, errorMessage); + return a % b; + } +} + +// contracts/minting/Controller.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title Controller + * @notice Generic implementation of the owner-controller-worker model. + * One owner manages many controllers. Each controller manages one worker. + * Workers may be reused across different controllers. + */ +contract Controller is Ownable { + /** + * @dev A controller manages a single worker address. + * controllers[controller] = worker + */ + mapping(address => address) internal controllers; + + event ControllerConfigured( + address indexed _controller, + address indexed _worker + ); + event ControllerRemoved(address indexed _controller); + + /** + * @notice Ensures that caller is the controller of a non-zero worker + * address. + */ + modifier onlyController() { + require( + controllers[msg.sender] != address(0), + "The value of controllers[msg.sender] must be non-zero" + ); + _; + } + + /** + * @notice Gets the worker at address _controller. + */ + function getWorker(address _controller) external view returns (address) { + return controllers[_controller]; + } + + // onlyOwner functions + + /** + * @notice Configure a controller with the given worker. + * @param _controller The controller to be configured with a worker. + * @param _worker The worker to be set for the newly configured controller. + * _worker must not be a non-zero address. To disable a worker, + * use removeController instead. + */ + function configureController(address _controller, address _worker) + public + onlyOwner + { + require( + _controller != address(0), + "Controller must be a non-zero address" + ); + require(_worker != address(0), "Worker must be a non-zero address"); + controllers[_controller] = _worker; + emit ControllerConfigured(_controller, _worker); + } + + /** + * @notice disables a controller by setting its worker to address(0). + * @param _controller The controller to disable. + */ + function removeController(address _controller) public onlyOwner { + require( + _controller != address(0), + "Controller must be a non-zero address" + ); + require( + controllers[_controller] != address(0), + "Worker must be a non-zero address" + ); + controllers[_controller] = address(0); + emit ControllerRemoved(_controller); + } +} + +// contracts/minting/MintController.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// solhint-disable func-name-mixedcase + +/** + * @title MintController + * @dev The MintController contract manages minters for a contract that + * implements the MinterManagerInterface. It lets the owner designate certain + * addresses as controllers, and these controllers then manage the + * minters by adding and removing minters, as well as modifying their minting + * allowance. A controller may manage exactly one minter, but the same minter + * address may be managed by multiple controllers. + * MintController inherits from the Controller contract. It treats the + * Controller workers as minters. + */ +contract MintController is Controller { + using SafeMath for uint256; + + /** + * @dev MintController calls the minterManager to execute/record minter + * management tasks, as well as to query the status of a minter address. + */ + MinterManagementInterface internal minterManager; + + event MinterManagerSet( + address indexed _oldMinterManager, + address indexed _newMinterManager + ); + event MinterConfigured( + address indexed _msgSender, + address indexed _minter, + uint256 _allowance + ); + event MinterRemoved(address indexed _msgSender, address indexed _minter); + event MinterAllowanceIncremented( + address indexed _msgSender, + address indexed _minter, + uint256 _increment, + uint256 _newAllowance + ); + + event MinterAllowanceDecremented( + address indexed msgSender, + address indexed minter, + uint256 decrement, + uint256 newAllowance + ); + + /** + * @notice Initializes the minterManager. + * @param _minterManager The address of the minterManager contract. + */ + constructor(address _minterManager) public { + minterManager = MinterManagementInterface(_minterManager); + } + + /** + * @notice gets the minterManager + */ + function getMinterManager() + external + view + returns (MinterManagementInterface) + { + return minterManager; + } + + // onlyOwner functions + + /** + * @notice Sets the minterManager. + * @param _newMinterManager The address of the new minterManager contract. + */ + function setMinterManager(address _newMinterManager) public onlyOwner { + emit MinterManagerSet(address(minterManager), _newMinterManager); + minterManager = MinterManagementInterface(_newMinterManager); + } + + // onlyController functions + + /** + * @notice Removes the controller's own minter. + */ + function removeMinter() public onlyController returns (bool) { + address minter = controllers[msg.sender]; + emit MinterRemoved(msg.sender, minter); + return minterManager.removeMinter(minter); + } + + /** + * @notice Enables the minter and sets its allowance. + * @param _newAllowance New allowance to be set for minter. + */ + function configureMinter(uint256 _newAllowance) + public + onlyController + returns (bool) + { + address minter = controllers[msg.sender]; + emit MinterConfigured(msg.sender, minter, _newAllowance); + return internal_setMinterAllowance(minter, _newAllowance); + } + + /** + * @notice Increases the minter's allowance if and only if the minter is an + * active minter. + * @dev An minter is considered active if minterManager.isMinter(minter) + * returns true. + */ + function incrementMinterAllowance(uint256 _allowanceIncrement) + public + onlyController + returns (bool) + { + require( + _allowanceIncrement > 0, + "Allowance increment must be greater than 0" + ); + address minter = controllers[msg.sender]; + require( + minterManager.isMinter(minter), + "Can only increment allowance for minters in minterManager" + ); + + uint256 currentAllowance = minterManager.minterAllowance(minter); + uint256 newAllowance = currentAllowance.add(_allowanceIncrement); + + emit MinterAllowanceIncremented( + msg.sender, + minter, + _allowanceIncrement, + newAllowance + ); + + return internal_setMinterAllowance(minter, newAllowance); + } + + /** + * @notice decreases the minter allowance if and only if the minter is + * currently active. The controller can safely send a signed + * decrementMinterAllowance() transaction to a minter and not worry + * about it being used to undo a removeMinter() transaction. + */ + function decrementMinterAllowance(uint256 _allowanceDecrement) + public + onlyController + returns (bool) + { + require( + _allowanceDecrement > 0, + "Allowance decrement must be greater than 0" + ); + address minter = controllers[msg.sender]; + require( + minterManager.isMinter(minter), + "Can only decrement allowance for minters in minterManager" + ); + + uint256 currentAllowance = minterManager.minterAllowance(minter); + uint256 actualAllowanceDecrement = ( + currentAllowance > _allowanceDecrement + ? _allowanceDecrement + : currentAllowance + ); + uint256 newAllowance = currentAllowance.sub(actualAllowanceDecrement); + + emit MinterAllowanceDecremented( + msg.sender, + minter, + actualAllowanceDecrement, + newAllowance + ); + + return internal_setMinterAllowance(minter, newAllowance); + } + + // Internal functions + + /** + * @notice Uses the MinterManagementInterface to enable the minter and + * set its allowance. + * @param _minter Minter to set new allowance of. + * @param _newAllowance New allowance to be set for minter. + */ + function internal_setMinterAllowance(address _minter, uint256 _newAllowance) + internal + returns (bool) + { + return minterManager.configureMinter(_minter, _newAllowance); + } +} + +// contracts/minting/MasterMinter.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title MasterMinter + * @notice MasterMinter uses multiple controllers to manage minters for a + * contract that implements the MinterManagerInterface. + * @dev MasterMinter inherits all its functionality from MintController. + */ +contract MasterMinter is MintController { + constructor(address _minterManager) public MintController(_minterManager) {} +} From 9c95aeed83bd7e6804f5eaf1bdf226a41b4793e0 Mon Sep 17 00:00:00 2001 From: kukoo Date: Thu, 14 Nov 2024 02:19:36 +0800 Subject: [PATCH 08/33] Add usdc master minter flatten file (#639) --- .../libraries/usdc/MasterMinter.sol.flatten | 676 ++++++++++++++++++ 1 file changed, 676 insertions(+) create mode 100644 contracts/contracts/libraries/usdc/MasterMinter.sol.flatten diff --git a/contracts/contracts/libraries/usdc/MasterMinter.sol.flatten b/contracts/contracts/libraries/usdc/MasterMinter.sol.flatten new file mode 100644 index 000000000..94eb3dc20 --- /dev/null +++ b/contracts/contracts/libraries/usdc/MasterMinter.sol.flatten @@ -0,0 +1,676 @@ +// SPDX-License-Identifier: Apache-2.0 +pragma solidity <0.8.0 =0.6.12 >=0.6.0; + +// contracts/minting/MinterManagementInterface.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @dev A contract that implements the MinterManagementInterface has external + * functions for adding and removing minters and modifying their allowances. + * An example is the FiatTokenV1 contract. + */ +interface MinterManagementInterface { + function isMinter(address _account) external view returns (bool); + + function minterAllowance(address _minter) external view returns (uint256); + + function configureMinter(address _minter, uint256 _minterAllowedAmount) + external + returns (bool); + + function removeMinter(address _minter) external returns (bool); +} + +// contracts/v1/Ownable.sol +/** + + * + * Copyright (c) 2018 zOS Global Limited. + * Copyright (c) 2018-2020 CENTRE SECZ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +/** + * @notice The Ownable contract has an owner address, and provides basic + * authorization control functions + * @dev Forked from https://github.com/OpenZeppelin/openzeppelin-labs/blob/3887ab77b8adafba4a26ace002f3a684c1a3388b/upgradeability_ownership/contracts/ownership/Ownable.sol + * Modifications: + * 1. Consolidate OwnableStorage into this contract (7/13/18) + * 2. Reformat, conform to Solidity 0.6 syntax, and add error messages (5/13/20) + * 3. Make public functions external (5/27/20) + */ +contract Ownable { + // Owner of the contract + address private _owner; + + /** + * @dev Event to show ownership has been transferred + * @param previousOwner representing the address of the previous owner + * @param newOwner representing the address of the new owner + */ + event OwnershipTransferred(address previousOwner, address newOwner); + + /** + * @dev The constructor sets the original owner of the contract to the sender account. + */ + constructor() public { + setOwner(msg.sender); + } + + /** + * @dev Tells the address of the owner + * @return the address of the owner + */ + function owner() external view returns (address) { + return _owner; + } + + /** + * @dev Sets a new owner address + */ + function setOwner(address newOwner) internal { + _owner = newOwner; + } + + /** + * @dev Throws if called by any account other than the owner. + */ + modifier onlyOwner() { + require(msg.sender == _owner, "Ownable: caller is not the owner"); + _; + } + + /** + * @dev Allows the current owner to transfer control of the contract to a newOwner. + * @param newOwner The address to transfer ownership to. + */ + function transferOwnership(address newOwner) external onlyOwner { + require( + newOwner != address(0), + "Ownable: new owner is the zero address" + ); + emit OwnershipTransferred(_owner, newOwner); + setOwner(newOwner); + } +} + +// node_modules/@openzeppelin/contracts/math/SafeMath.sol + +/** + * @dev Wrappers over Solidity's arithmetic operations with added overflow + * checks. + * + * Arithmetic operations in Solidity wrap on overflow. This can easily result + * in bugs, because programmers usually assume that an overflow raises an + * error, which is the standard behavior in high level programming languages. + * `SafeMath` restores this intuition by reverting the transaction when an + * operation overflows. + * + * Using this library instead of the unchecked operations eliminates an entire + * class of bugs, so it's recommended to use it always. + */ +library SafeMath { + /** + * @dev Returns the addition of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { + uint256 c = a + b; + if (c < a) return (false, 0); + return (true, c); + } + + /** + * @dev Returns the substraction of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b > a) return (false, 0); + return (true, a - b); + } + + /** + * @dev Returns the multiplication of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { + // Gas optimization: this is cheaper than requiring 'a' not being zero, but the + // benefit is lost if 'b' is also tested. + // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 + if (a == 0) return (true, 0); + uint256 c = a * b; + if (c / a != b) return (false, 0); + return (true, c); + } + + /** + * @dev Returns the division of two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b == 0) return (false, 0); + return (true, a / b); + } + + /** + * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { + if (b == 0) return (false, 0); + return (true, a % b); + } + + /** + * @dev Returns the addition of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `+` operator. + * + * Requirements: + * + * - Addition cannot overflow. + */ + function add(uint256 a, uint256 b) internal pure returns (uint256) { + uint256 c = a + b; + require(c >= a, "SafeMath: addition overflow"); + return c; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting on + * overflow (when the result is negative). + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b) internal pure returns (uint256) { + require(b <= a, "SafeMath: subtraction overflow"); + return a - b; + } + + /** + * @dev Returns the multiplication of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `*` operator. + * + * Requirements: + * + * - Multiplication cannot overflow. + */ + function mul(uint256 a, uint256 b) internal pure returns (uint256) { + if (a == 0) return 0; + uint256 c = a * b; + require(c / a == b, "SafeMath: multiplication overflow"); + return c; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting on + * division by zero. The result is rounded towards zero. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b) internal pure returns (uint256) { + require(b > 0, "SafeMath: division by zero"); + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting when dividing by zero. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b) internal pure returns (uint256) { + require(b > 0, "SafeMath: modulo by zero"); + return a % b; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting with custom message on + * overflow (when the result is negative). + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {trySub}. + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b <= a, errorMessage); + return a - b; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting with custom message on + * division by zero. The result is rounded towards zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryDiv}. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b > 0, errorMessage); + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting with custom message when dividing by zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryMod}. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + require(b > 0, errorMessage); + return a % b; + } +} + +// contracts/minting/Controller.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title Controller + * @notice Generic implementation of the owner-controller-worker model. + * One owner manages many controllers. Each controller manages one worker. + * Workers may be reused across different controllers. + */ +contract Controller is Ownable { + /** + * @dev A controller manages a single worker address. + * controllers[controller] = worker + */ + mapping(address => address) internal controllers; + + event ControllerConfigured( + address indexed _controller, + address indexed _worker + ); + event ControllerRemoved(address indexed _controller); + + /** + * @notice Ensures that caller is the controller of a non-zero worker + * address. + */ + modifier onlyController() { + require( + controllers[msg.sender] != address(0), + "The value of controllers[msg.sender] must be non-zero" + ); + _; + } + + /** + * @notice Gets the worker at address _controller. + */ + function getWorker(address _controller) external view returns (address) { + return controllers[_controller]; + } + + // onlyOwner functions + + /** + * @notice Configure a controller with the given worker. + * @param _controller The controller to be configured with a worker. + * @param _worker The worker to be set for the newly configured controller. + * _worker must not be a non-zero address. To disable a worker, + * use removeController instead. + */ + function configureController(address _controller, address _worker) + public + onlyOwner + { + require( + _controller != address(0), + "Controller must be a non-zero address" + ); + require(_worker != address(0), "Worker must be a non-zero address"); + controllers[_controller] = _worker; + emit ControllerConfigured(_controller, _worker); + } + + /** + * @notice disables a controller by setting its worker to address(0). + * @param _controller The controller to disable. + */ + function removeController(address _controller) public onlyOwner { + require( + _controller != address(0), + "Controller must be a non-zero address" + ); + require( + controllers[_controller] != address(0), + "Worker must be a non-zero address" + ); + controllers[_controller] = address(0); + emit ControllerRemoved(_controller); + } +} + +// contracts/minting/MintController.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// solhint-disable func-name-mixedcase + +/** + * @title MintController + * @dev The MintController contract manages minters for a contract that + * implements the MinterManagerInterface. It lets the owner designate certain + * addresses as controllers, and these controllers then manage the + * minters by adding and removing minters, as well as modifying their minting + * allowance. A controller may manage exactly one minter, but the same minter + * address may be managed by multiple controllers. + * MintController inherits from the Controller contract. It treats the + * Controller workers as minters. + */ +contract MintController is Controller { + using SafeMath for uint256; + + /** + * @dev MintController calls the minterManager to execute/record minter + * management tasks, as well as to query the status of a minter address. + */ + MinterManagementInterface internal minterManager; + + event MinterManagerSet( + address indexed _oldMinterManager, + address indexed _newMinterManager + ); + event MinterConfigured( + address indexed _msgSender, + address indexed _minter, + uint256 _allowance + ); + event MinterRemoved(address indexed _msgSender, address indexed _minter); + event MinterAllowanceIncremented( + address indexed _msgSender, + address indexed _minter, + uint256 _increment, + uint256 _newAllowance + ); + + event MinterAllowanceDecremented( + address indexed msgSender, + address indexed minter, + uint256 decrement, + uint256 newAllowance + ); + + /** + * @notice Initializes the minterManager. + * @param _minterManager The address of the minterManager contract. + */ + constructor(address _minterManager) public { + minterManager = MinterManagementInterface(_minterManager); + } + + /** + * @notice gets the minterManager + */ + function getMinterManager() + external + view + returns (MinterManagementInterface) + { + return minterManager; + } + + // onlyOwner functions + + /** + * @notice Sets the minterManager. + * @param _newMinterManager The address of the new minterManager contract. + */ + function setMinterManager(address _newMinterManager) public onlyOwner { + emit MinterManagerSet(address(minterManager), _newMinterManager); + minterManager = MinterManagementInterface(_newMinterManager); + } + + // onlyController functions + + /** + * @notice Removes the controller's own minter. + */ + function removeMinter() public onlyController returns (bool) { + address minter = controllers[msg.sender]; + emit MinterRemoved(msg.sender, minter); + return minterManager.removeMinter(minter); + } + + /** + * @notice Enables the minter and sets its allowance. + * @param _newAllowance New allowance to be set for minter. + */ + function configureMinter(uint256 _newAllowance) + public + onlyController + returns (bool) + { + address minter = controllers[msg.sender]; + emit MinterConfigured(msg.sender, minter, _newAllowance); + return internal_setMinterAllowance(minter, _newAllowance); + } + + /** + * @notice Increases the minter's allowance if and only if the minter is an + * active minter. + * @dev An minter is considered active if minterManager.isMinter(minter) + * returns true. + */ + function incrementMinterAllowance(uint256 _allowanceIncrement) + public + onlyController + returns (bool) + { + require( + _allowanceIncrement > 0, + "Allowance increment must be greater than 0" + ); + address minter = controllers[msg.sender]; + require( + minterManager.isMinter(minter), + "Can only increment allowance for minters in minterManager" + ); + + uint256 currentAllowance = minterManager.minterAllowance(minter); + uint256 newAllowance = currentAllowance.add(_allowanceIncrement); + + emit MinterAllowanceIncremented( + msg.sender, + minter, + _allowanceIncrement, + newAllowance + ); + + return internal_setMinterAllowance(minter, newAllowance); + } + + /** + * @notice decreases the minter allowance if and only if the minter is + * currently active. The controller can safely send a signed + * decrementMinterAllowance() transaction to a minter and not worry + * about it being used to undo a removeMinter() transaction. + */ + function decrementMinterAllowance(uint256 _allowanceDecrement) + public + onlyController + returns (bool) + { + require( + _allowanceDecrement > 0, + "Allowance decrement must be greater than 0" + ); + address minter = controllers[msg.sender]; + require( + minterManager.isMinter(minter), + "Can only decrement allowance for minters in minterManager" + ); + + uint256 currentAllowance = minterManager.minterAllowance(minter); + uint256 actualAllowanceDecrement = ( + currentAllowance > _allowanceDecrement + ? _allowanceDecrement + : currentAllowance + ); + uint256 newAllowance = currentAllowance.sub(actualAllowanceDecrement); + + emit MinterAllowanceDecremented( + msg.sender, + minter, + actualAllowanceDecrement, + newAllowance + ); + + return internal_setMinterAllowance(minter, newAllowance); + } + + // Internal functions + + /** + * @notice Uses the MinterManagementInterface to enable the minter and + * set its allowance. + * @param _minter Minter to set new allowance of. + * @param _newAllowance New allowance to be set for minter. + */ + function internal_setMinterAllowance(address _minter, uint256 _newAllowance) + internal + returns (bool) + { + return minterManager.configureMinter(_minter, _newAllowance); + } +} + +// contracts/minting/MasterMinter.sol +/** + * Copyright 2023 Circle Internet Group, Inc. All rights reserved. + * + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @title MasterMinter + * @notice MasterMinter uses multiple controllers to manage minters for a + * contract that implements the MinterManagerInterface. + * @dev MasterMinter inherits all its functionality from MintController. + */ +contract MasterMinter is MintController { + constructor(address _minterManager) public MintController(_minterManager) {} +} From 375d1f0504c36719e6c52ca8b0215ad3b5dcb2aa Mon Sep 17 00:00:00 2001 From: kukoo Date: Wed, 20 Nov 2024 16:24:34 +0800 Subject: [PATCH 09/33] Add initialize2 for rollup to set state root (#641) Co-authored-by: Agnar Song --- contracts/contracts/l1/rollup/Rollup.sol | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/contracts/contracts/l1/rollup/Rollup.sol b/contracts/contracts/l1/rollup/Rollup.sol index cd1e8a9e9..ffc6db889 100644 --- a/contracts/contracts/l1/rollup/Rollup.sol +++ b/contracts/contracts/l1/rollup/Rollup.sol @@ -174,6 +174,15 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { emit UpdateProofRewardPercent(0, _proofRewardPercent); } + function initialize2(bytes32 _prevStateRoot) external reinitializer(2) { + require(_getInitializedVersion() == 2, "must have initialized!"); + require(_prevStateRoot != bytes32(0), "can not set state root with bytes32(0)!"); + + if (committedStateRoots[lastCommittedBatchIndex] == bytes32(0)) { + committedStateRoots[lastCommittedBatchIndex] = _prevStateRoot; + } + } + /************************ * Restricted Functions * ************************/ From 5d63835c30fd03f5d3e66eb0438c1f1620801796 Mon Sep 17 00:00:00 2001 From: songyaoshun Date: Wed, 20 Nov 2024 18:31:19 +0800 Subject: [PATCH 10/33] mainnet upgrade rollup (#644) Co-authored-by: Agnar Song Co-authored-by: kukoomomo --- contracts/hardhat.config.ts | 1 + contracts/tasks/mainnet_upgrade.ts | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 contracts/tasks/mainnet_upgrade.ts diff --git a/contracts/hardhat.config.ts b/contracts/hardhat.config.ts index 0255a5981..51e3875fa 100644 --- a/contracts/hardhat.config.ts +++ b/contracts/hardhat.config.ts @@ -17,6 +17,7 @@ import "./tasks/proxy_upgrade" import "./tasks/staking_upgrade" import "./tasks/verifier_upgrade" import "./tasks/token_deploy" +import "./tasks/mainnet_upgrade" import "./src/plugin" import * as process from "process"; diff --git a/contracts/tasks/mainnet_upgrade.ts b/contracts/tasks/mainnet_upgrade.ts new file mode 100644 index 000000000..bd5af77f1 --- /dev/null +++ b/contracts/tasks/mainnet_upgrade.ts @@ -0,0 +1,25 @@ +import "@nomiclabs/hardhat-web3"; +import "@nomiclabs/hardhat-ethers"; +import "@nomiclabs/hardhat-waffle"; + +import { task } from "hardhat/config"; +import { ContractFactoryName } from "../src/types"; + +task("rollup-upgrade-hc") + .addParam("l2cid") + .addParam("prevStateRoot") + .setAction(async (taskArgs, hre) => { + const chainId = taskArgs.l2cid + + const RollupFactoryName = ContractFactoryName.Rollup + + const RollupFactory = await hre.ethers.getContractFactory(RollupFactoryName) + const rollupNewImpl = await RollupFactory.deploy(chainId) + await rollupNewImpl.deployed() + let blockNumber = await hre.ethers.provider.getBlockNumber() + console.log(`Rollup new impl deploy at ${rollupNewImpl.address} and height ${blockNumber}`) + + console.log("initialize2 abi code: ", RollupFactory.interface.encodeFunctionData('initialize2', [ + taskArgs.prevStateRoot, + ])) + }) From 113c1d255706ebe2b3ffafe45d483e12145342a7 Mon Sep 17 00:00:00 2001 From: kukoomomo Date: Wed, 20 Nov 2024 18:39:31 +0800 Subject: [PATCH 11/33] update bindings --- bindings/bin/rollup_deployed.hex | 2 +- bindings/bindings/rollup.go | 25 +++++++++++++++++++++++-- bindings/bindings/rollup_more.go | 2 +- 3 files changed, 25 insertions(+), 4 deletions(-) diff --git a/bindings/bin/rollup_deployed.hex b/bindings/bin/rollup_deployed.hex index 24f594bc7..7eb89716c 100644 --- a/bindings/bin/rollup_deployed.hex +++ b/bindings/bin/rollup_deployed.hex @@ -1 +1 @@ -0x6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610987578063f2fde38b146109a6578063fb1e8b04146109c5575f80fd5b8063ddd8a3dc14610934578063de8b303514610953578063dff7827e14610972575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108ed578063d279c19114610902578063d63b354914610921575f80fd5b8063b3e0a5091461089c578063bedb86fb146108bb578063cd4edc69146108da575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610849578063b34844251461085e578063b35dac4e1461087d575f80fd5b8063a479265d146107ea578063a4f209b0146107ff578063abc8d68d1461081e575f80fd5b8063910129d41161016c578063910129d41461076c57806397fc007c1461079d578063a415d8dc146107bc575f80fd5b806388b1ea09146106865780638da5cb5b1461069f5780638f1d3776146106bc575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d14610634578063715018a614610653578063728cdbca14610667575f80fd5b80635ef7a94a1461055d5780635f77cf1d146105bd57806368589dfa14610609575f80fd5b80633e001b661161022c5780633e001b661461051257806357e0af6c146105275780635c975abb14610546575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a146104f3575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614046565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614078565b6109da565b005b348015610398575f80fd5b5061038b6103a73660046140d6565b610aac565b3480156103b7575f80fd5b506103346103c6366004614046565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd36600461411e565b610e05565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614046565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614046565b6112fa565b348015610471575f80fd5b5061035e610480366004614046565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614046565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104db906001600160a01b031681565b6040516001600160a01b039091168152602001610340565b3480156104fe575f80fd5b50609b546104db906001600160a01b031681565b34801561051d575f80fd5b5061035e60aa5481565b348015610532575f80fd5b5061038b610541366004614046565b611328565b348015610551575f80fd5b5060655460ff16610334565b348015610568575f80fd5b5061059d610577366004614046565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105c8575f80fd5b506105f07f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b348015610614575f80fd5b5061035e610623366004614046565b60ab6020525f908152604090205481565b34801561063f575f80fd5b5061038b61064e366004614078565b6113d3565b34801561065e575f80fd5b5061038b611490565b348015610672575f80fd5b5061038b61068136600461415d565b6114a3565b348015610691575f80fd5b5060a6546103349060ff1681565b3480156106aa575f80fd5b506033546001600160a01b03166104db565b3480156106c7575f80fd5b506107286106d6366004614046565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b348015610777575f80fd5b50610334610786366004614046565b5f90815260a4602052604090206003015460ff1690565b3480156107a8575f80fd5b5061038b6107b7366004614078565b6117e6565b3480156107c7575f80fd5b506103346107d6366004614078565b609f6020525f908152604090205460ff1681565b3480156107f5575f80fd5b5061035e60995481565b34801561080a575f80fd5b5061038b610819366004614046565b6118c9565b348015610829575f80fd5b5061035e610838366004614078565b60a56020525f908152604090205481565b348015610854575f80fd5b5061035e60a85481565b348015610869575f80fd5b5061038b6108783660046141b8565b611979565b348015610888575f80fd5b5061038b610897366004614078565b611bbe565b3480156108a7575f80fd5b5061038b6108b636600461411e565b611c17565b3480156108c6575f80fd5b5061038b6108d536600461422c565b611f19565b61038b6108e8366004614247565b612074565b3480156108f8575f80fd5b5061035e60985481565b34801561090d575f80fd5b5061038b61091c366004614078565b612640565b61038b61092f36600461427d565b6126ff565b34801561093f575f80fd5b506097546104db906001600160a01b031681565b34801561095e575f80fd5b5061033461096d366004614046565b613029565b34801561097d575f80fd5b5061035e609a5481565b348015610992575f80fd5b5061038b6109a1366004614046565b613073565b3480156109b1575f80fd5b5061038b6109c0366004614078565b613116565b3480156109d0575f80fd5b5061035e60a95481565b6109e26131a3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a4f5760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ab46131a3565b5f8111610b035760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a46565b5f80610b0f85856131fd565b915091505f610b22836001015160c01c90565b5f81815260a160205260409020549091508214610b815760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b5f60a181610b8f8785614317565b81526020019081526020015f205414610c0f5760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a46565b609d548111610c865760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b610c9160018261432a565b609e555b8315610dfd57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610cdd81613029565b15610d38575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d28908490614317565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610db5575060a85481145b15610dbf575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c95575b505050505050565b60a85415610e555760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b610e5d613218565b5f80610e6984846131fd565b915091505f610e7c836001015160c01c90565b5f81815260a160205260409020549091508214610edb5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b610ee4816112fa565b610f305760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b610f3981613029565b15610f865760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003015460ff1615610fe75760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a46565b5f81815260a260205260409020600101544210156110475760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a46565b605983015160a05f61105a60018561432a565b81526020019081526020015f2054146110b55760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f81815260a06020526040902054156111105760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a46565b80609d54600101146111645760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b609d819055600160a35f611179866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111c660f98401601185015160c01c600986015160c01c61326b565b60a25f6111d460018461432a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061120d908461432a565b81526020019081526020015f205f905560a45f60018361122d919061432a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d6112d6866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061132257505f82815260a1602052604090205415155b92915050565b6113306131a3565b5f8111801561134157506099548114155b61138d5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a46565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113db6131a3565b6001600160a01b0381165f908152609f602052604090205460ff166114425760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a46565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610aa1565b6114986131a3565b6114a15f613334565b565b5f54610100900460ff16158080156114c157505f54600160ff909116105b806114da5750303b1580156114da57505f5460ff166001145b61154c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a46565b5f805460ff19166001179055801561158a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806115a757506001600160a01b038516155b156115de576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166116345760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a46565b61163c61339d565b611644613421565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156117dd575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117ee6131a3565b6001600160a01b038116158015906118145750609c546001600160a01b03828116911614155b6118605760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a46565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6118d16131a3565b5f811180156118e1575060648111155b80156118ef575060a9548114155b61193b5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a46565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113c7565b60a854156119c95760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b6119d1613218565b5f806119dd86866131fd565b915091505f6119f0836001015160c01c90565b5f81815260a160205260409020549091508214611a4f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b611a5881613029565b611aa45760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611afd91614317565b11611b73575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b6e918391906134a5565b6117dd565b611b7e838686613601565b6117dd81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506137b4565b611bc66131a3565b60aa80545f909155611bd88282613880565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113c7565b611c1f6131a3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c965760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a46565b5f80611ca284846131fd565b915091505f611cb5836001015160c01c90565b90505f611cc3846079015190565b905080611d125760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a46565b600984015160c01c15611d675760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a46565b5f611d73856019015190565b03611dc05760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a46565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611dec856039015190565b14611e395760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a46565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611f216131a3565b801561204257611f2f61392b565b60a65460ff16156120015760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f83908490614317565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b61204a613985565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612024565b50565b335f908152609f602052604090205460ff166120d25760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a46565b60a854156121225760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b61212a613218565b60a65460ff161561217d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a46565b8167ffffffffffffffff16609d54106121d85760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a16020526040902054811461223f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b6122528267ffffffffffffffff166112fa565b61229e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156123195760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123a95760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a46565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241d919061433d565b34101561246c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516125be91815260200190565b60405180910390a35f609d5460016125d69190614317565b90505b609e54811161262e578267ffffffffffffffff16811461261c576099545f82815260a2602052604081206001018054909190612616908490614317565b90915550505b8061262681614354565b9150506125d9565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361269f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a46565b335f90815260a560205260408120556126b88282613880565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516126f391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561276b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061278f919061438b565b6127db5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a46565b60a8541561282b5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b612833613218565b61284060208301836143a6565b60ff16156128905760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a46565b5f61289e60408401846143c6565b915050806128ee5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a46565b608083013561293f5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a46565b60a08301356129905760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a46565b5f806129a76129a260208701876143c6565b6131fd565b915091505f6129ba836001015160c01c90565b90505f60a1816129cb846001614317565b81526020019081526020015f205414612a265760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a46565b609e548114612a775760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b5f81815260a160205260409020548214612ad35760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a46565b5f81815260ab6020526040902054608087013514612b335760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f612b42846011015160c01c90565b90505f8080612ba1612b5760408c018c6143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612b9c905060608f018f6143c6565b6139be565b948501949384019392509050612bba60608b018b6143c6565b905061010060ff85010460200214612c145760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b600194909401935f804915612c2a575f49612c4c565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612c5c60608d018d6143c6565b612c68915060f9614317565b90506040519850602081028901604052612c96898d5f016020810190612c8e91906143a6565b60ff16613b3f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612d0389612ce460208e018e6143c6565b604051612cf2929190614427565b604051809103902060b99190910152565b60d98901889052612d2089612d1b60608f018f6143c6565b613b46565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612d865760a7545f90815260a460205260409020600201546099544291612d7991614317565b612d83919061432a565b90505b60405180608001604052804281526020018260985442612da69190614317565b612db09190614317565b8152602001612e018f8060400190612dc891906143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613b5292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612e75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e99919061433d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612f0190612efb908f018f6143c6565b5f613ba9565b5f8e8060400190612f1291906143c6565b6040518663ffffffff1660e01b8152600401612f3295949392919061447d565b602060405180830381865afa158015612f4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f71919061438b565b612fe35760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906113225750505f90815260a46020526040902060030154610100900460ff161590565b61307b6131a3565b5f8111801561308c57506098548114155b6130d85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a46565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113c7565b61311e6131a3565b6001600160a01b03811661319a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a46565b61207181613334565b6033546001600160a01b031633146114a15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a46565b5f805f61320a8585613bfd565b812090969095509350505050565b60655460ff16156114a15760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a46565b805f0361327757505050565b8082035f805b83811015610dfd5761010081850381111561329757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561330a575f80fd5b505af115801561331c573d5f803e3d5ffd5b5050505061010084019350506101008101905061327d565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166134195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613cd4565b5f54610100900460ff1661349d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613d5c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613529573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061354d919061433d565b5f86815260a4602052604090206001015490915061356c908290614317565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906135ab908490614317565b90915550506040516135be9084906144f0565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061364e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a46565b5f61365d846001015160c01c90565b90505f61366b856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061369a876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861375c885160f81c90565b858888866040518663ffffffff1660e01b815260040161378095949392919061451c565b5f6040518083038186803b158015613796575f80fd5b505afa1580156137a8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906137d8908461454d565b6137e29190614564565b90506137ee818361432a565b60aa5f8282546137fe9190614317565b90915550506001600160a01b0384165f90815260a560205260408120805483929061382a908490614317565b909155505060405161383d9084906144f0565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613927575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146138cf576040519150601f19603f3d011682016040523d82523d5f602084013e6138d4565b606091505b50509050806139255760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a46565b505b5050565b613933613218565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586139683390565b6040516001600160a01b03909116815260200160405180910390a1565b61398d613de1565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613968565b60405185515f918291602089019190819084906139dc908590613e33565b90506002840193505f5b81811015613a6057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613a36603c8361454d565b613a409087614317565b90505f613a5182603a015160f01c90565b979097019650506001016139e6565b506020850282016040525b8015613b2b575f613a8085603a015160f01c90565b9050613a9083828d8d8d8d613ec8565b92505f613aa1866038015160f01c90565b905081811015613af35760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a46565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613a6b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613b6d828651613e33565b90505f5b613b7c60018361432a565b811015613b9257603c9390930192600101613b71565b505f613b9f845160c01c90565b9695505050505050565b60605f80808080613bbc888a018a614689565b9550955095509550955050818710613bda579450613bf69350505050565b838710613bee578295505050505050613bf6565b509293505050505b9392505050565b5f8160f9811015613c505760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a46565b6040519150808483378082016040525f613c6e836009015160c01c90565b905061010060ff82010460200260f9018214613ccc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b509250929050565b5f54610100900460ff16613d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6065805460ff19169055565b5f54610100900460ff16613dd85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a133613334565b60655460ff166114a15760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a46565b5f613e3f835160f01c90565b9050805f03613e7a576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e85603c8261454d565b613e90906002614317565b8214611322576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613ed7575085613b9f565b609b546001600160a01b03165f80805b89811015613fbd5760ff89169150600889901c811580613f05575082155b15613f14578060200288013593505b600184841c165f03613fac576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613f7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fa2919061433d565b8d52506020909b019a5b506001988901989788019701613ee7565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156140385760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a46565b509798975050505050505050565b5f60208284031215614056575f80fd5b5035919050565b80356001600160a01b0381168114614073575f80fd5b919050565b5f60208284031215614088575f80fd5b613bf68261405d565b5f8083601f8401126140a1575f80fd5b50813567ffffffffffffffff8111156140b8575f80fd5b6020830191508360208285010111156140cf575f80fd5b9250929050565b5f805f604084860312156140e8575f80fd5b833567ffffffffffffffff8111156140fe575f80fd5b61410a86828701614091565b909790965060209590950135949350505050565b5f806020838503121561412f575f80fd5b823567ffffffffffffffff811115614145575f80fd5b61415185828601614091565b90969095509350505050565b5f805f805f8060c08789031215614172575f80fd5b61417b8761405d565b95506141896020880161405d565b94506141976040880161405d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156141cb575f80fd5b843567ffffffffffffffff808211156141e2575f80fd5b6141ee88838901614091565b90965094506020870135915080821115614206575f80fd5b5061421387828801614091565b95989497509550505050565b8015158114612071575f80fd5b5f6020828403121561423c575f80fd5b8135613bf68161421f565b5f8060408385031215614258575f80fd5b823567ffffffffffffffff8116811461426f575f80fd5b946020939093013593505050565b5f806040838503121561428e575f80fd5b823567ffffffffffffffff808211156142a5575f80fd5b9084019060e082870312156142b8575f80fd5b909250602084013590808211156142cd575f80fd5b508301606081860312156142df575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611322576113226142ea565b81810381811115611322576113226142ea565b5f6020828403121561434d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614384576143846142ea565b5060010190565b5f6020828403121561439b575f80fd5b8151613bf68161421f565b5f602082840312156143b6575f80fd5b813560ff81168114613bf6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126143f9575f80fd5b83018035915067ffffffffffffffff821115614413575f80fd5b6020019150368190038213156140cf575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156144c75784516001600160a01b0316835293830193918301916001016144a2565b505087604086015284810360608601526144e2818789614436565b9a9950505050505050505050565b5f82515f5b8181101561450f57602081860181015185830152016144f5565b505f920191825250919050565b858152846020820152608060408201525f61453b608083018587614436565b90508260608301529695505050505050565b8082028115828204841417611322576113226142ea565b5f82614597577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145d8575f80fd5b8135602067ffffffffffffffff808311156145f5576145f561459c565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156146385761463861459c565b6040529384526020818701810194908101925087851115614657575f80fd5b6020870191505b8482101561467e5761466f8261405d565b8352918301919083019061465e565b979650505050505050565b5f805f805f8060c0878903121561469e575f80fd5b86359550602087013567ffffffffffffffff808211156146bc575f80fd5b6146c88a838b016145c9565b96506040890135955060608901359150808211156146e4575f80fd5b6146f08a838b016145c9565b94506080890135935060a089013591508082111561470c575f80fd5b5061471989828a016145c9565b915050929550929550929556fea164736f6c6343000818000a +0x608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610917578063d279c1911461092c578063d63b35491461094b575f80fd5b8063b3e0a509146108c6578063bedb86fb146108e5578063cd4edc6914610904575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610873578063b348442514610888578063b35dac4e146108a7575f80fd5b8063a479265d14610814578063a4f209b014610829578063abc8d68d14610848575f80fd5b8063910129d41161016c578063910129d41461079657806397fc007c146107c7578063a415d8dc146107e6575f80fd5b806388b1ea09146106b05780638da5cb5b146106c95780638f1d3776146106e6575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d1461065e578063715018a61461067d578063728cdbca14610691575f80fd5b80635f77cf1d146105c8578063612672901461061457806368589dfa14610633575f80fd5b806357e0af6c1161022c57806357e0af6c146105325780635c975abb146105515780635ef7a94a14610568575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614285565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b506103966103913660046142b7565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614315565b610ad6565b3480156103c2575f80fd5b5061033f6103d1366004614285565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b5061039661040836600461435d565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614285565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614285565b611324565b34801561047c575f80fd5b5061036961048b366004614285565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614285565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b34801561053d575f80fd5b5061039661054c366004614285565b611352565b34801561055c575f80fd5b5060655460ff1661033f565b348015610573575f80fd5b506105a8610582366004614285565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105d3575f80fd5b506105fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b34801561061f575f80fd5b5061039661062e366004614285565b6113fd565b34801561063e575f80fd5b5061036961064d366004614285565b60ab6020525f908152604090205481565b348015610669575f80fd5b506103966106783660046142b7565b611612565b348015610688575f80fd5b506103966116cf565b34801561069c575f80fd5b506103966106ab36600461439c565b6116e2565b3480156106bb575f80fd5b5060a65461033f9060ff1681565b3480156106d4575f80fd5b506033546001600160a01b03166104e6565b3480156106f1575f80fd5b50610752610700366004614285565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107a1575f80fd5b5061033f6107b0366004614285565b5f90815260a4602052604090206003015460ff1690565b3480156107d2575f80fd5b506103966107e13660046142b7565b611a25565b3480156107f1575f80fd5b5061033f6108003660046142b7565b609f6020525f908152604090205460ff1681565b34801561081f575f80fd5b5061036960995481565b348015610834575f80fd5b50610396610843366004614285565b611b08565b348015610853575f80fd5b506103696108623660046142b7565b60a56020525f908152604090205481565b34801561087e575f80fd5b5061036960a85481565b348015610893575f80fd5b506103966108a23660046143f7565b611bb8565b3480156108b2575f80fd5b506103966108c13660046142b7565b611dfd565b3480156108d1575f80fd5b506103966108e036600461435d565b611e56565b3480156108f0575f80fd5b506103966108ff36600461446b565b612158565b610396610912366004614486565b6122b3565b348015610922575f80fd5b5061036960985481565b348015610937575f80fd5b506103966109463660046142b7565b61287f565b6103966109593660046144bc565b61293e565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f610997366004614285565b613268565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb366004614285565b6132b2565b3480156109db575f80fd5b506103966109ea3660046142b7565b613355565b3480156109fa575f80fd5b5061036960a95481565b610a0c6133e2565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade6133e2565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b39858561343c565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb98785614556565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb600182614569565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d0781613268565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d52908490614556565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e87613457565b5f80610e93848461343c565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611324565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f6381613268565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f611084600185614569565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f060f98401601185015160c01c600986015160c01c6134aa565b60a25f6111fe600184614569565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906112379084614569565b81526020019081526020015f205f905560a45f6001836112579190614569565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611300866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134c57505f82815260a1602052604090205415155b92915050565b61135a6133e2565b5f8111801561136b57506099548114155b6113b75760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561141d57505f5460ff8083169116105b61148f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ca5f5460ff1690565b60ff1660021461151c5760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b8161158f5760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab60205260409020546115b857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020016113f1565b61161a6133e2565b6001600160a01b0381165f908152609f602052604090205460ff166116815760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b6116d76133e2565b6116e05f613573565b565b5f54610100900460ff161580801561170057505f54600160ff909116105b806117195750303b15801561171957505f5460ff166001145b61178b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff1916600117905580156117c9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806117e657506001600160a01b038516155b1561181d576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166118735760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b61187b6135dc565b611883613660565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611a1c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611a2d6133e2565b6001600160a01b03811615801590611a535750609c546001600160a01b03828116911614155b611a9f5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611b106133e2565b5f81118015611b20575060648111155b8015611b2e575060a9548114155b611b7a5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113f1565b60a85415611c085760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611c10613457565b5f80611c1c868661343c565b915091505f611c2f836001015160c01c90565b5f81815260a160205260409020549091508214611c8e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b611c9781613268565b611ce35760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611d3c91614556565b11611db2575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611dad918391906136e4565b611a1c565b611dbd838686613840565b611a1c81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506139f3565b611e056133e2565b60aa80545f909155611e178282613abf565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113f1565b611e5e6133e2565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611ed55760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f80611ee1848461343c565b915091505f611ef4836001015160c01c90565b90505f611f02846079015190565b905080611f515760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c15611fa65760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f611fb2856019015190565b03611fff5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c44401461202b856039015190565b146120785760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6121606133e2565b80156122815761216e613b6a565b60a65460ff16156122405760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a590925282208054919290916121c2908490614556565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612289613bc4565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612263565b50565b335f908152609f602052604090205460ff166123115760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a854156123615760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612369613457565b60a65460ff16156123bc5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d54106124175760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a16020526040902054811461247e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6124918267ffffffffffffffff16611324565b6124dd5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156125585760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a2602052604090206001015442106125e85760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612638573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061265c919061457c565b3410156126ab5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516127fd91815260200190565b60405180910390a35f609d5460016128159190614556565b90505b609e54811161286d578267ffffffffffffffff16811461285b576099545f82815260a2602052604081206001018054909190612855908490614556565b90915550505b8061286581614593565b915050612818565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036128de5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556128f78282613abf565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161293291815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156129aa573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ce91906145ca565b612a1a5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a85415612a6a5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612a72613457565b612a7f60208301836145e5565b60ff1615612acf5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f612add6040840184614605565b91505080612b2d5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b6080830135612b7e5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a0830135612bcf5760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f80612be6612be16020870187614605565b61343c565b915091505f612bf9836001015160c01c90565b90505f60a181612c0a846001614556565b81526020019081526020015f205414612c655760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e548114612cb65760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a160205260409020548214612d125760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab6020526040902054608087013514612d725760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f612d81846011015160c01c90565b90505f8080612de0612d9660408c018c614605565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612ddb905060608f018f614605565b613bfd565b948501949384019392509050612df960608b018b614605565b905061010060ff85010460200214612e535760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b600194909401935f804915612e69575f49612e8b565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612e9b60608d018d614605565b612ea7915060f9614556565b90506040519850602081028901604052612ed5898d5f016020810190612ecd91906145e5565b60ff16613d7e565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612f4289612f2360208e018e614605565b604051612f31929190614666565b604051809103902060b99190910152565b60d98901889052612f5f89612f5a60608f018f614605565b613d85565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612fc55760a7545f90815260a460205260409020600201546099544291612fb891614556565b612fc29190614569565b90505b60405180608001604052804281526020018260985442612fe59190614556565b612fef9190614556565b81526020016130408f80604001906130079190614605565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613d9192505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156130b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130d8919061457c565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c35906131409061313a908f018f614605565b5f613de8565b5f8e80604001906131519190614605565b6040518663ffffffff1660e01b81526004016131719594939291906146bc565b602060405180830381865afa15801561318c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131b091906145ca565b6132225760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134c5750505f90815260a46020526040902060030154610100900460ff161590565b6132ba6133e2565b5f811180156132cb57506098548114155b6133175760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113f1565b61335d6133e2565b6001600160a01b0381166133d95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b6122b081613573565b6033546001600160a01b031633146116e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134498585613e3c565b812090969095509350505050565b60655460ff16156116e05760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f036134b657505050565b8082035f805b83811015610e27576101008185038111156134d657508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b158015613549575f80fd5b505af115801561355b573d5f803e3d5ffd5b505050506101008401935050610100810190506134bc565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166136585760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f13565b5f54610100900460ff166136dc5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f9b565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613768573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061378c919061457c565b5f86815260a460205260409020600101549091506137ab908290614556565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906137ea908490614556565b90915550506040516137fd90849061472f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061388d5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f61389c846001015160c01c90565b90505f6138aa856039015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006138d9876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861399b885160f81c90565b858888866040518663ffffffff1660e01b81526004016139bf95949392919061475b565b5f6040518083038186803b1580156139d5575f80fd5b505afa1580156139e7573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613a17908461478c565b613a2191906147a3565b9050613a2d8183614569565b60aa5f828254613a3d9190614556565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613a69908490614556565b9091555050604051613a7c90849061472f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613b66575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613b0e576040519150601f19603f3d011682016040523d82523d5f602084013e613b13565b606091505b5050905080613b645760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613b72613457565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613ba73390565b6040516001600160a01b03909116815260200160405180910390a1565b613bcc614020565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613ba7565b60405185515f91829160208901919081908490613c1b908590614072565b90506002840193505f5b81811015613c9f57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613c75603c8361478c565b613c7f9087614556565b90505f613c9082603a015160f01c90565b97909701965050600101613c25565b506020850282016040525b8015613d6a575f613cbf85603a015160f01c90565b9050613ccf83828d8d8d8d614107565b92505f613ce0866038015160f01c90565b905081811015613d325760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613caa565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613dac828651614072565b90505f5b613dbb600183614569565b811015613dd157603c9390930192600101613db0565b505f613dde845160c01c90565b9695505050505050565b60605f80808080613dfb888a018a6148c8565b9550955095509550955050818710613e19579450613e359350505050565b838710613e2d578295505050505050613e35565b509293505050505b9392505050565b5f8160f9811015613e8f5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040525f613ead836009015160c01c90565b905061010060ff82010460200260f9018214613f0b5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b509250929050565b5f54610100900460ff16613f8f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140175760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e033613573565b60655460ff166116e05760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f61407e835160f01c90565b9050805f036140b9576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6140c4603c8261478c565b6140cf906002614556565b821461134c576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614116575085613dde565b609b546001600160a01b03165f80805b898110156141fc5760ff89169150600889901c811580614144575082155b15614153578060200288013593505b600184841c165f036141eb576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa1580156141bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906141e1919061457c565b8d52506020909b019a5b506001988901989788019701614126565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156142775760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a70565b509798975050505050505050565b5f60208284031215614295575f80fd5b5035919050565b80356001600160a01b03811681146142b2575f80fd5b919050565b5f602082840312156142c7575f80fd5b613e358261429c565b5f8083601f8401126142e0575f80fd5b50813567ffffffffffffffff8111156142f7575f80fd5b60208301915083602082850101111561430e575f80fd5b9250929050565b5f805f60408486031215614327575f80fd5b833567ffffffffffffffff81111561433d575f80fd5b614349868287016142d0565b909790965060209590950135949350505050565b5f806020838503121561436e575f80fd5b823567ffffffffffffffff811115614384575f80fd5b614390858286016142d0565b90969095509350505050565b5f805f805f8060c087890312156143b1575f80fd5b6143ba8761429c565b95506143c86020880161429c565b94506143d66040880161429c565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f806040858703121561440a575f80fd5b843567ffffffffffffffff80821115614421575f80fd5b61442d888389016142d0565b90965094506020870135915080821115614445575f80fd5b50614452878288016142d0565b95989497509550505050565b80151581146122b0575f80fd5b5f6020828403121561447b575f80fd5b8135613e358161445e565b5f8060408385031215614497575f80fd5b823567ffffffffffffffff811681146144ae575f80fd5b946020939093013593505050565b5f80604083850312156144cd575f80fd5b823567ffffffffffffffff808211156144e4575f80fd5b9084019060e082870312156144f7575f80fd5b9092506020840135908082111561450c575f80fd5b5083016060818603121561451e575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134c5761134c614529565b8181038181111561134c5761134c614529565b5f6020828403121561458c575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036145c3576145c3614529565b5060010190565b5f602082840312156145da575f80fd5b8151613e358161445e565b5f602082840312156145f5575f80fd5b813560ff81168114613e35575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614638575f80fd5b83018035915067ffffffffffffffff821115614652575f80fd5b60200191503681900382131561430e575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156147065784516001600160a01b0316835293830193918301916001016146e1565b50508760408601528481036060860152614721818789614675565b9a9950505050505050505050565b5f82515f5b8181101561474e5760208186018101518583015201614734565b505f920191825250919050565b858152846020820152608060408201525f61477a608083018587614675565b90508260608301529695505050505050565b808202811582820484141761134c5761134c614529565b5f826147d6577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614817575f80fd5b8135602067ffffffffffffffff80831115614834576148346147db565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614877576148776147db565b6040529384526020818701810194908101925087851115614896575f80fd5b6020870191505b848210156148bd576148ae8261429c565b8352918301919083019061489d565b979650505050505050565b5f805f805f8060c087890312156148dd575f80fd5b86359550602087013567ffffffffffffffff808211156148fb575f80fd5b6149078a838b01614808565b9650604089013595506060890135915080821115614923575f80fd5b61492f8a838b01614808565b94506080890135935060a089013591508082111561494b575f80fd5b5061495889828a01614808565b915050929550929550929556fea164736f6c6343000818000a diff --git a/bindings/bindings/rollup.go b/bindings/bindings/rollup.go index ac9b469dd..933d99ab7 100644 --- a/bindings/bindings/rollup.go +++ b/bindings/bindings/rollup.go @@ -49,8 +49,8 @@ type IRollupBatchSignatureInput struct { // RollupMetaData contains all meta data concerning the Rollup contract. var RollupMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", - Bin: "0x60a060405234801562000010575f80fd5b50604051620048913803806200489183398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516147336200015e5f395f81816105ce015261367001526147335ff3fe6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610987578063f2fde38b146109a6578063fb1e8b04146109c5575f80fd5b8063ddd8a3dc14610934578063de8b303514610953578063dff7827e14610972575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108ed578063d279c19114610902578063d63b354914610921575f80fd5b8063b3e0a5091461089c578063bedb86fb146108bb578063cd4edc69146108da575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610849578063b34844251461085e578063b35dac4e1461087d575f80fd5b8063a479265d146107ea578063a4f209b0146107ff578063abc8d68d1461081e575f80fd5b8063910129d41161016c578063910129d41461076c57806397fc007c1461079d578063a415d8dc146107bc575f80fd5b806388b1ea09146106865780638da5cb5b1461069f5780638f1d3776146106bc575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d14610634578063715018a614610653578063728cdbca14610667575f80fd5b80635ef7a94a1461055d5780635f77cf1d146105bd57806368589dfa14610609575f80fd5b80633e001b661161022c5780633e001b661461051257806357e0af6c146105275780635c975abb14610546575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a146104f3575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614046565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614078565b6109da565b005b348015610398575f80fd5b5061038b6103a73660046140d6565b610aac565b3480156103b7575f80fd5b506103346103c6366004614046565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd36600461411e565b610e05565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614046565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614046565b6112fa565b348015610471575f80fd5b5061035e610480366004614046565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614046565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104db906001600160a01b031681565b6040516001600160a01b039091168152602001610340565b3480156104fe575f80fd5b50609b546104db906001600160a01b031681565b34801561051d575f80fd5b5061035e60aa5481565b348015610532575f80fd5b5061038b610541366004614046565b611328565b348015610551575f80fd5b5060655460ff16610334565b348015610568575f80fd5b5061059d610577366004614046565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105c8575f80fd5b506105f07f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b348015610614575f80fd5b5061035e610623366004614046565b60ab6020525f908152604090205481565b34801561063f575f80fd5b5061038b61064e366004614078565b6113d3565b34801561065e575f80fd5b5061038b611490565b348015610672575f80fd5b5061038b61068136600461415d565b6114a3565b348015610691575f80fd5b5060a6546103349060ff1681565b3480156106aa575f80fd5b506033546001600160a01b03166104db565b3480156106c7575f80fd5b506107286106d6366004614046565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b348015610777575f80fd5b50610334610786366004614046565b5f90815260a4602052604090206003015460ff1690565b3480156107a8575f80fd5b5061038b6107b7366004614078565b6117e6565b3480156107c7575f80fd5b506103346107d6366004614078565b609f6020525f908152604090205460ff1681565b3480156107f5575f80fd5b5061035e60995481565b34801561080a575f80fd5b5061038b610819366004614046565b6118c9565b348015610829575f80fd5b5061035e610838366004614078565b60a56020525f908152604090205481565b348015610854575f80fd5b5061035e60a85481565b348015610869575f80fd5b5061038b6108783660046141b8565b611979565b348015610888575f80fd5b5061038b610897366004614078565b611bbe565b3480156108a7575f80fd5b5061038b6108b636600461411e565b611c17565b3480156108c6575f80fd5b5061038b6108d536600461422c565b611f19565b61038b6108e8366004614247565b612074565b3480156108f8575f80fd5b5061035e60985481565b34801561090d575f80fd5b5061038b61091c366004614078565b612640565b61038b61092f36600461427d565b6126ff565b34801561093f575f80fd5b506097546104db906001600160a01b031681565b34801561095e575f80fd5b5061033461096d366004614046565b613029565b34801561097d575f80fd5b5061035e609a5481565b348015610992575f80fd5b5061038b6109a1366004614046565b613073565b3480156109b1575f80fd5b5061038b6109c0366004614078565b613116565b3480156109d0575f80fd5b5061035e60a95481565b6109e26131a3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a4f5760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ab46131a3565b5f8111610b035760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a46565b5f80610b0f85856131fd565b915091505f610b22836001015160c01c90565b5f81815260a160205260409020549091508214610b815760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b5f60a181610b8f8785614317565b81526020019081526020015f205414610c0f5760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a46565b609d548111610c865760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b610c9160018261432a565b609e555b8315610dfd57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610cdd81613029565b15610d38575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d28908490614317565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610db5575060a85481145b15610dbf575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c95575b505050505050565b60a85415610e555760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b610e5d613218565b5f80610e6984846131fd565b915091505f610e7c836001015160c01c90565b5f81815260a160205260409020549091508214610edb5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b610ee4816112fa565b610f305760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b610f3981613029565b15610f865760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003015460ff1615610fe75760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a46565b5f81815260a260205260409020600101544210156110475760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a46565b605983015160a05f61105a60018561432a565b81526020019081526020015f2054146110b55760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f81815260a06020526040902054156111105760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a46565b80609d54600101146111645760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b609d819055600160a35f611179866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111c660f98401601185015160c01c600986015160c01c61326b565b60a25f6111d460018461432a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061120d908461432a565b81526020019081526020015f205f905560a45f60018361122d919061432a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d6112d6866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061132257505f82815260a1602052604090205415155b92915050565b6113306131a3565b5f8111801561134157506099548114155b61138d5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a46565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113db6131a3565b6001600160a01b0381165f908152609f602052604090205460ff166114425760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a46565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610aa1565b6114986131a3565b6114a15f613334565b565b5f54610100900460ff16158080156114c157505f54600160ff909116105b806114da5750303b1580156114da57505f5460ff166001145b61154c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a46565b5f805460ff19166001179055801561158a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806115a757506001600160a01b038516155b156115de576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166116345760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a46565b61163c61339d565b611644613421565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156117dd575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117ee6131a3565b6001600160a01b038116158015906118145750609c546001600160a01b03828116911614155b6118605760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a46565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6118d16131a3565b5f811180156118e1575060648111155b80156118ef575060a9548114155b61193b5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a46565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113c7565b60a854156119c95760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b6119d1613218565b5f806119dd86866131fd565b915091505f6119f0836001015160c01c90565b5f81815260a160205260409020549091508214611a4f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b611a5881613029565b611aa45760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611afd91614317565b11611b73575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b6e918391906134a5565b6117dd565b611b7e838686613601565b6117dd81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506137b4565b611bc66131a3565b60aa80545f909155611bd88282613880565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113c7565b611c1f6131a3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c965760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a46565b5f80611ca284846131fd565b915091505f611cb5836001015160c01c90565b90505f611cc3846079015190565b905080611d125760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a46565b600984015160c01c15611d675760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a46565b5f611d73856019015190565b03611dc05760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a46565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611dec856039015190565b14611e395760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a46565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611f216131a3565b801561204257611f2f61392b565b60a65460ff16156120015760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f83908490614317565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b61204a613985565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612024565b50565b335f908152609f602052604090205460ff166120d25760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a46565b60a854156121225760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b61212a613218565b60a65460ff161561217d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a46565b8167ffffffffffffffff16609d54106121d85760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a16020526040902054811461223f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b6122528267ffffffffffffffff166112fa565b61229e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156123195760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123a95760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a46565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241d919061433d565b34101561246c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516125be91815260200190565b60405180910390a35f609d5460016125d69190614317565b90505b609e54811161262e578267ffffffffffffffff16811461261c576099545f82815260a2602052604081206001018054909190612616908490614317565b90915550505b8061262681614354565b9150506125d9565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361269f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a46565b335f90815260a560205260408120556126b88282613880565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516126f391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561276b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061278f919061438b565b6127db5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a46565b60a8541561282b5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b612833613218565b61284060208301836143a6565b60ff16156128905760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a46565b5f61289e60408401846143c6565b915050806128ee5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a46565b608083013561293f5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a46565b60a08301356129905760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a46565b5f806129a76129a260208701876143c6565b6131fd565b915091505f6129ba836001015160c01c90565b90505f60a1816129cb846001614317565b81526020019081526020015f205414612a265760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a46565b609e548114612a775760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b5f81815260a160205260409020548214612ad35760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a46565b5f81815260ab6020526040902054608087013514612b335760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f612b42846011015160c01c90565b90505f8080612ba1612b5760408c018c6143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612b9c905060608f018f6143c6565b6139be565b948501949384019392509050612bba60608b018b6143c6565b905061010060ff85010460200214612c145760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b600194909401935f804915612c2a575f49612c4c565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612c5c60608d018d6143c6565b612c68915060f9614317565b90506040519850602081028901604052612c96898d5f016020810190612c8e91906143a6565b60ff16613b3f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612d0389612ce460208e018e6143c6565b604051612cf2929190614427565b604051809103902060b99190910152565b60d98901889052612d2089612d1b60608f018f6143c6565b613b46565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612d865760a7545f90815260a460205260409020600201546099544291612d7991614317565b612d83919061432a565b90505b60405180608001604052804281526020018260985442612da69190614317565b612db09190614317565b8152602001612e018f8060400190612dc891906143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613b5292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612e75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e99919061433d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612f0190612efb908f018f6143c6565b5f613ba9565b5f8e8060400190612f1291906143c6565b6040518663ffffffff1660e01b8152600401612f3295949392919061447d565b602060405180830381865afa158015612f4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f71919061438b565b612fe35760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906113225750505f90815260a46020526040902060030154610100900460ff161590565b61307b6131a3565b5f8111801561308c57506098548114155b6130d85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a46565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113c7565b61311e6131a3565b6001600160a01b03811661319a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a46565b61207181613334565b6033546001600160a01b031633146114a15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a46565b5f805f61320a8585613bfd565b812090969095509350505050565b60655460ff16156114a15760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a46565b805f0361327757505050565b8082035f805b83811015610dfd5761010081850381111561329757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561330a575f80fd5b505af115801561331c573d5f803e3d5ffd5b5050505061010084019350506101008101905061327d565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166134195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613cd4565b5f54610100900460ff1661349d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613d5c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613529573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061354d919061433d565b5f86815260a4602052604090206001015490915061356c908290614317565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906135ab908490614317565b90915550506040516135be9084906144f0565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061364e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a46565b5f61365d846001015160c01c90565b90505f61366b856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061369a876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861375c885160f81c90565b858888866040518663ffffffff1660e01b815260040161378095949392919061451c565b5f6040518083038186803b158015613796575f80fd5b505afa1580156137a8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906137d8908461454d565b6137e29190614564565b90506137ee818361432a565b60aa5f8282546137fe9190614317565b90915550506001600160a01b0384165f90815260a560205260408120805483929061382a908490614317565b909155505060405161383d9084906144f0565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613927575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146138cf576040519150601f19603f3d011682016040523d82523d5f602084013e6138d4565b606091505b50509050806139255760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a46565b505b5050565b613933613218565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586139683390565b6040516001600160a01b03909116815260200160405180910390a1565b61398d613de1565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613968565b60405185515f918291602089019190819084906139dc908590613e33565b90506002840193505f5b81811015613a6057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613a36603c8361454d565b613a409087614317565b90505f613a5182603a015160f01c90565b979097019650506001016139e6565b506020850282016040525b8015613b2b575f613a8085603a015160f01c90565b9050613a9083828d8d8d8d613ec8565b92505f613aa1866038015160f01c90565b905081811015613af35760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a46565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613a6b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613b6d828651613e33565b90505f5b613b7c60018361432a565b811015613b9257603c9390930192600101613b71565b505f613b9f845160c01c90565b9695505050505050565b60605f80808080613bbc888a018a614689565b9550955095509550955050818710613bda579450613bf69350505050565b838710613bee578295505050505050613bf6565b509293505050505b9392505050565b5f8160f9811015613c505760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a46565b6040519150808483378082016040525f613c6e836009015160c01c90565b905061010060ff82010460200260f9018214613ccc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b509250929050565b5f54610100900460ff16613d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6065805460ff19169055565b5f54610100900460ff16613dd85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a133613334565b60655460ff166114a15760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a46565b5f613e3f835160f01c90565b9050805f03613e7a576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e85603c8261454d565b613e90906002614317565b8214611322576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613ed7575085613b9f565b609b546001600160a01b03165f80805b89811015613fbd5760ff89169150600889901c811580613f05575082155b15613f14578060200288013593505b600184841c165f03613fac576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613f7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fa2919061433d565b8d52506020909b019a5b506001988901989788019701613ee7565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156140385760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a46565b509798975050505050505050565b5f60208284031215614056575f80fd5b5035919050565b80356001600160a01b0381168114614073575f80fd5b919050565b5f60208284031215614088575f80fd5b613bf68261405d565b5f8083601f8401126140a1575f80fd5b50813567ffffffffffffffff8111156140b8575f80fd5b6020830191508360208285010111156140cf575f80fd5b9250929050565b5f805f604084860312156140e8575f80fd5b833567ffffffffffffffff8111156140fe575f80fd5b61410a86828701614091565b909790965060209590950135949350505050565b5f806020838503121561412f575f80fd5b823567ffffffffffffffff811115614145575f80fd5b61415185828601614091565b90969095509350505050565b5f805f805f8060c08789031215614172575f80fd5b61417b8761405d565b95506141896020880161405d565b94506141976040880161405d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156141cb575f80fd5b843567ffffffffffffffff808211156141e2575f80fd5b6141ee88838901614091565b90965094506020870135915080821115614206575f80fd5b5061421387828801614091565b95989497509550505050565b8015158114612071575f80fd5b5f6020828403121561423c575f80fd5b8135613bf68161421f565b5f8060408385031215614258575f80fd5b823567ffffffffffffffff8116811461426f575f80fd5b946020939093013593505050565b5f806040838503121561428e575f80fd5b823567ffffffffffffffff808211156142a5575f80fd5b9084019060e082870312156142b8575f80fd5b909250602084013590808211156142cd575f80fd5b508301606081860312156142df575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611322576113226142ea565b81810381811115611322576113226142ea565b5f6020828403121561434d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614384576143846142ea565b5060010190565b5f6020828403121561439b575f80fd5b8151613bf68161421f565b5f602082840312156143b6575f80fd5b813560ff81168114613bf6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126143f9575f80fd5b83018035915067ffffffffffffffff821115614413575f80fd5b6020019150368190038213156140cf575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156144c75784516001600160a01b0316835293830193918301916001016144a2565b505087604086015284810360608601526144e2818789614436565b9a9950505050505050505050565b5f82515f5b8181101561450f57602081860181015185830152016144f5565b505f920191825250919050565b858152846020820152608060408201525f61453b608083018587614436565b90508260608301529695505050505050565b8082028115828204841417611322576113226142ea565b5f82614597577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145d8575f80fd5b8135602067ffffffffffffffff808311156145f5576145f561459c565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156146385761463861459c565b6040529384526020818701810194908101925087851115614657575f80fd5b6020870191505b8482101561467e5761466f8261405d565b8352918301919083019061465e565b979650505050505050565b5f805f805f8060c0878903121561469e575f80fd5b86359550602087013567ffffffffffffffff808211156146bc575f80fd5b6146c88a838b016145c9565b96506040890135955060608901359150808211156146e4575f80fd5b6146f08a838b016145c9565b94506080890135935060a089013591508082111561470c575f80fd5b5061471989828a016145c9565b915050929550929550929556fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_prevStateRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", + Bin: "0x60a060405234801562000010575f80fd5b5060405162004ad038038062004ad083398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516149726200015e5f395f81816105d901526138af01526149725ff3fe608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610917578063d279c1911461092c578063d63b35491461094b575f80fd5b8063b3e0a509146108c6578063bedb86fb146108e5578063cd4edc6914610904575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610873578063b348442514610888578063b35dac4e146108a7575f80fd5b8063a479265d14610814578063a4f209b014610829578063abc8d68d14610848575f80fd5b8063910129d41161016c578063910129d41461079657806397fc007c146107c7578063a415d8dc146107e6575f80fd5b806388b1ea09146106b05780638da5cb5b146106c95780638f1d3776146106e6575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d1461065e578063715018a61461067d578063728cdbca14610691575f80fd5b80635f77cf1d146105c8578063612672901461061457806368589dfa14610633575f80fd5b806357e0af6c1161022c57806357e0af6c146105325780635c975abb146105515780635ef7a94a14610568575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614285565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b506103966103913660046142b7565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614315565b610ad6565b3480156103c2575f80fd5b5061033f6103d1366004614285565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b5061039661040836600461435d565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614285565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614285565b611324565b34801561047c575f80fd5b5061036961048b366004614285565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614285565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b34801561053d575f80fd5b5061039661054c366004614285565b611352565b34801561055c575f80fd5b5060655460ff1661033f565b348015610573575f80fd5b506105a8610582366004614285565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105d3575f80fd5b506105fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b34801561061f575f80fd5b5061039661062e366004614285565b6113fd565b34801561063e575f80fd5b5061036961064d366004614285565b60ab6020525f908152604090205481565b348015610669575f80fd5b506103966106783660046142b7565b611612565b348015610688575f80fd5b506103966116cf565b34801561069c575f80fd5b506103966106ab36600461439c565b6116e2565b3480156106bb575f80fd5b5060a65461033f9060ff1681565b3480156106d4575f80fd5b506033546001600160a01b03166104e6565b3480156106f1575f80fd5b50610752610700366004614285565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107a1575f80fd5b5061033f6107b0366004614285565b5f90815260a4602052604090206003015460ff1690565b3480156107d2575f80fd5b506103966107e13660046142b7565b611a25565b3480156107f1575f80fd5b5061033f6108003660046142b7565b609f6020525f908152604090205460ff1681565b34801561081f575f80fd5b5061036960995481565b348015610834575f80fd5b50610396610843366004614285565b611b08565b348015610853575f80fd5b506103696108623660046142b7565b60a56020525f908152604090205481565b34801561087e575f80fd5b5061036960a85481565b348015610893575f80fd5b506103966108a23660046143f7565b611bb8565b3480156108b2575f80fd5b506103966108c13660046142b7565b611dfd565b3480156108d1575f80fd5b506103966108e036600461435d565b611e56565b3480156108f0575f80fd5b506103966108ff36600461446b565b612158565b610396610912366004614486565b6122b3565b348015610922575f80fd5b5061036960985481565b348015610937575f80fd5b506103966109463660046142b7565b61287f565b6103966109593660046144bc565b61293e565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f610997366004614285565b613268565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb366004614285565b6132b2565b3480156109db575f80fd5b506103966109ea3660046142b7565b613355565b3480156109fa575f80fd5b5061036960a95481565b610a0c6133e2565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade6133e2565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b39858561343c565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb98785614556565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb600182614569565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d0781613268565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d52908490614556565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e87613457565b5f80610e93848461343c565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611324565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f6381613268565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f611084600185614569565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f060f98401601185015160c01c600986015160c01c6134aa565b60a25f6111fe600184614569565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906112379084614569565b81526020019081526020015f205f905560a45f6001836112579190614569565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611300866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134c57505f82815260a1602052604090205415155b92915050565b61135a6133e2565b5f8111801561136b57506099548114155b6113b75760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561141d57505f5460ff8083169116105b61148f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ca5f5460ff1690565b60ff1660021461151c5760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b8161158f5760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab60205260409020546115b857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020016113f1565b61161a6133e2565b6001600160a01b0381165f908152609f602052604090205460ff166116815760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b6116d76133e2565b6116e05f613573565b565b5f54610100900460ff161580801561170057505f54600160ff909116105b806117195750303b15801561171957505f5460ff166001145b61178b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff1916600117905580156117c9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806117e657506001600160a01b038516155b1561181d576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166118735760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b61187b6135dc565b611883613660565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611a1c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611a2d6133e2565b6001600160a01b03811615801590611a535750609c546001600160a01b03828116911614155b611a9f5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611b106133e2565b5f81118015611b20575060648111155b8015611b2e575060a9548114155b611b7a5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113f1565b60a85415611c085760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611c10613457565b5f80611c1c868661343c565b915091505f611c2f836001015160c01c90565b5f81815260a160205260409020549091508214611c8e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b611c9781613268565b611ce35760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611d3c91614556565b11611db2575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611dad918391906136e4565b611a1c565b611dbd838686613840565b611a1c81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506139f3565b611e056133e2565b60aa80545f909155611e178282613abf565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113f1565b611e5e6133e2565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611ed55760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f80611ee1848461343c565b915091505f611ef4836001015160c01c90565b90505f611f02846079015190565b905080611f515760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c15611fa65760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f611fb2856019015190565b03611fff5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c44401461202b856039015190565b146120785760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6121606133e2565b80156122815761216e613b6a565b60a65460ff16156122405760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a590925282208054919290916121c2908490614556565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612289613bc4565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612263565b50565b335f908152609f602052604090205460ff166123115760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a854156123615760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612369613457565b60a65460ff16156123bc5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d54106124175760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a16020526040902054811461247e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6124918267ffffffffffffffff16611324565b6124dd5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156125585760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a2602052604090206001015442106125e85760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612638573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061265c919061457c565b3410156126ab5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516127fd91815260200190565b60405180910390a35f609d5460016128159190614556565b90505b609e54811161286d578267ffffffffffffffff16811461285b576099545f82815260a2602052604081206001018054909190612855908490614556565b90915550505b8061286581614593565b915050612818565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036128de5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556128f78282613abf565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161293291815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156129aa573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ce91906145ca565b612a1a5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a85415612a6a5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612a72613457565b612a7f60208301836145e5565b60ff1615612acf5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f612add6040840184614605565b91505080612b2d5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b6080830135612b7e5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a0830135612bcf5760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f80612be6612be16020870187614605565b61343c565b915091505f612bf9836001015160c01c90565b90505f60a181612c0a846001614556565b81526020019081526020015f205414612c655760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e548114612cb65760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a160205260409020548214612d125760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab6020526040902054608087013514612d725760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f612d81846011015160c01c90565b90505f8080612de0612d9660408c018c614605565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612ddb905060608f018f614605565b613bfd565b948501949384019392509050612df960608b018b614605565b905061010060ff85010460200214612e535760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b600194909401935f804915612e69575f49612e8b565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612e9b60608d018d614605565b612ea7915060f9614556565b90506040519850602081028901604052612ed5898d5f016020810190612ecd91906145e5565b60ff16613d7e565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612f4289612f2360208e018e614605565b604051612f31929190614666565b604051809103902060b99190910152565b60d98901889052612f5f89612f5a60608f018f614605565b613d85565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612fc55760a7545f90815260a460205260409020600201546099544291612fb891614556565b612fc29190614569565b90505b60405180608001604052804281526020018260985442612fe59190614556565b612fef9190614556565b81526020016130408f80604001906130079190614605565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613d9192505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156130b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130d8919061457c565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c35906131409061313a908f018f614605565b5f613de8565b5f8e80604001906131519190614605565b6040518663ffffffff1660e01b81526004016131719594939291906146bc565b602060405180830381865afa15801561318c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131b091906145ca565b6132225760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134c5750505f90815260a46020526040902060030154610100900460ff161590565b6132ba6133e2565b5f811180156132cb57506098548114155b6133175760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113f1565b61335d6133e2565b6001600160a01b0381166133d95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b6122b081613573565b6033546001600160a01b031633146116e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134498585613e3c565b812090969095509350505050565b60655460ff16156116e05760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f036134b657505050565b8082035f805b83811015610e27576101008185038111156134d657508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b158015613549575f80fd5b505af115801561355b573d5f803e3d5ffd5b505050506101008401935050610100810190506134bc565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166136585760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f13565b5f54610100900460ff166136dc5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f9b565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613768573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061378c919061457c565b5f86815260a460205260409020600101549091506137ab908290614556565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906137ea908490614556565b90915550506040516137fd90849061472f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061388d5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f61389c846001015160c01c90565b90505f6138aa856039015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006138d9876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861399b885160f81c90565b858888866040518663ffffffff1660e01b81526004016139bf95949392919061475b565b5f6040518083038186803b1580156139d5575f80fd5b505afa1580156139e7573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613a17908461478c565b613a2191906147a3565b9050613a2d8183614569565b60aa5f828254613a3d9190614556565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613a69908490614556565b9091555050604051613a7c90849061472f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613b66575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613b0e576040519150601f19603f3d011682016040523d82523d5f602084013e613b13565b606091505b5050905080613b645760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613b72613457565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613ba73390565b6040516001600160a01b03909116815260200160405180910390a1565b613bcc614020565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613ba7565b60405185515f91829160208901919081908490613c1b908590614072565b90506002840193505f5b81811015613c9f57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613c75603c8361478c565b613c7f9087614556565b90505f613c9082603a015160f01c90565b97909701965050600101613c25565b506020850282016040525b8015613d6a575f613cbf85603a015160f01c90565b9050613ccf83828d8d8d8d614107565b92505f613ce0866038015160f01c90565b905081811015613d325760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613caa565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613dac828651614072565b90505f5b613dbb600183614569565b811015613dd157603c9390930192600101613db0565b505f613dde845160c01c90565b9695505050505050565b60605f80808080613dfb888a018a6148c8565b9550955095509550955050818710613e19579450613e359350505050565b838710613e2d578295505050505050613e35565b509293505050505b9392505050565b5f8160f9811015613e8f5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040525f613ead836009015160c01c90565b905061010060ff82010460200260f9018214613f0b5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b509250929050565b5f54610100900460ff16613f8f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140175760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e033613573565b60655460ff166116e05760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f61407e835160f01c90565b9050805f036140b9576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6140c4603c8261478c565b6140cf906002614556565b821461134c576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614116575085613dde565b609b546001600160a01b03165f80805b898110156141fc5760ff89169150600889901c811580614144575082155b15614153578060200288013593505b600184841c165f036141eb576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa1580156141bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906141e1919061457c565b8d52506020909b019a5b506001988901989788019701614126565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156142775760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a70565b509798975050505050505050565b5f60208284031215614295575f80fd5b5035919050565b80356001600160a01b03811681146142b2575f80fd5b919050565b5f602082840312156142c7575f80fd5b613e358261429c565b5f8083601f8401126142e0575f80fd5b50813567ffffffffffffffff8111156142f7575f80fd5b60208301915083602082850101111561430e575f80fd5b9250929050565b5f805f60408486031215614327575f80fd5b833567ffffffffffffffff81111561433d575f80fd5b614349868287016142d0565b909790965060209590950135949350505050565b5f806020838503121561436e575f80fd5b823567ffffffffffffffff811115614384575f80fd5b614390858286016142d0565b90969095509350505050565b5f805f805f8060c087890312156143b1575f80fd5b6143ba8761429c565b95506143c86020880161429c565b94506143d66040880161429c565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f806040858703121561440a575f80fd5b843567ffffffffffffffff80821115614421575f80fd5b61442d888389016142d0565b90965094506020870135915080821115614445575f80fd5b50614452878288016142d0565b95989497509550505050565b80151581146122b0575f80fd5b5f6020828403121561447b575f80fd5b8135613e358161445e565b5f8060408385031215614497575f80fd5b823567ffffffffffffffff811681146144ae575f80fd5b946020939093013593505050565b5f80604083850312156144cd575f80fd5b823567ffffffffffffffff808211156144e4575f80fd5b9084019060e082870312156144f7575f80fd5b9092506020840135908082111561450c575f80fd5b5083016060818603121561451e575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134c5761134c614529565b8181038181111561134c5761134c614529565b5f6020828403121561458c575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036145c3576145c3614529565b5060010190565b5f602082840312156145da575f80fd5b8151613e358161445e565b5f602082840312156145f5575f80fd5b813560ff81168114613e35575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614638575f80fd5b83018035915067ffffffffffffffff821115614652575f80fd5b60200191503681900382131561430e575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156147065784516001600160a01b0316835293830193918301916001016146e1565b50508760408601528481036060860152614721818789614675565b9a9950505050505050505050565b5f82515f5b8181101561474e5760208186018101518583015201614734565b505f920191825250919050565b858152846020820152608060408201525f61477a608083018587614675565b90508260608301529695505050505050565b808202811582820484141761134c5761134c614529565b5f826147d6577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614817575f80fd5b8135602067ffffffffffffffff80831115614834576148346147db565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614877576148776147db565b6040529384526020818701810194908101925087851115614896575f80fd5b6020870191505b848210156148bd576148ae8261429c565b8352918301919083019061489d565b979650505050505050565b5f805f805f8060c087890312156148dd575f80fd5b86359550602087013567ffffffffffffffff808211156148fb575f80fd5b6149078a838b01614808565b9650604089013595506060890135915080821115614923575f80fd5b61492f8a838b01614808565b94506080890135935060a089013591508082111561494b575f80fd5b5061495889828a01614808565b915050929550929550929556fea164736f6c6343000818000a", } // RollupABI is the input ABI used to generate the binding from. @@ -1345,6 +1345,27 @@ func (_Rollup *RollupTransactorSession) Initialize(_l1StakingContract common.Add return _Rollup.Contract.Initialize(&_Rollup.TransactOpts, _l1StakingContract, _messageQueue, _verifier, _finalizationPeriodSeconds, _proofWindow, _proofRewardPercent) } +// Initialize2 is a paid mutator transaction binding the contract method 0x61267290. +// +// Solidity: function initialize2(bytes32 _prevStateRoot) returns() +func (_Rollup *RollupTransactor) Initialize2(opts *bind.TransactOpts, _prevStateRoot [32]byte) (*types.Transaction, error) { + return _Rollup.contract.Transact(opts, "initialize2", _prevStateRoot) +} + +// Initialize2 is a paid mutator transaction binding the contract method 0x61267290. +// +// Solidity: function initialize2(bytes32 _prevStateRoot) returns() +func (_Rollup *RollupSession) Initialize2(_prevStateRoot [32]byte) (*types.Transaction, error) { + return _Rollup.Contract.Initialize2(&_Rollup.TransactOpts, _prevStateRoot) +} + +// Initialize2 is a paid mutator transaction binding the contract method 0x61267290. +// +// Solidity: function initialize2(bytes32 _prevStateRoot) returns() +func (_Rollup *RollupTransactorSession) Initialize2(_prevStateRoot [32]byte) (*types.Transaction, error) { + return _Rollup.Contract.Initialize2(&_Rollup.TransactOpts, _prevStateRoot) +} + // ProveState is a paid mutator transaction binding the contract method 0xb3484425. // // Solidity: function proveState(bytes _batchHeader, bytes _batchProof) returns() diff --git a/bindings/bindings/rollup_more.go b/bindings/bindings/rollup_more.go index 96e82c601..fdaf9947c 100644 --- a/bindings/bindings/rollup_more.go +++ b/bindings/bindings/rollup_more.go @@ -13,7 +13,7 @@ const RollupStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"co var RollupStorageLayout = new(solc.StorageLayout) -var RollupDeployedBin = "0x6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109e2578063f2fde38b14610a01578063fb1e8b0414610a20575f80fd5b8063ddd8a3dc14610982578063de8b3035146109ae578063dff7827e146109cd575f80fd5b8063ce5db8d6116100b7578063ce5db8d61461093b578063d279c19114610950578063d63b35491461096f575f80fd5b8063b3e0a509146108ea578063bedb86fb14610909578063cd4edc6914610928575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610897578063b3484425146108ac578063b35dac4e146108cb575f80fd5b8063a479265d14610838578063a4f209b01461084d578063abc8d68d1461086c575f80fd5b8063910129d41161016c578063910129d4146107ba57806397fc007c146107eb578063a415d8dc1461080a575f80fd5b806388b1ea09146106ad5780638da5cb5b146106c65780638f1d3776146106f0575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d1461065b578063715018a61461067a578063728cdbca1461068e575f80fd5b80635ef7a94a146105845780635f77cf1d146105e457806368589dfa14610630575f80fd5b80633e001b661161022c5780633e001b661461053957806357e0af6c1461054e5780635c975abb1461056d575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a1461050d575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614ab8565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614af7565b610a35565b005b348015610398575f80fd5b5061038b6103a7366004614b55565b610b59565b3480156103b7575f80fd5b506103346103c6366004614ab8565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd366004614b9d565b610f45565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614ab8565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614ab8565b611542565b348015610471575f80fd5b5061035e610480366004614ab8565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614ab8565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610340565b348015610518575f80fd5b50609b546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b348015610544575f80fd5b5061035e60aa5481565b348015610559575f80fd5b5061038b610568366004614ab8565b611570565b348015610578575f80fd5b5060655460ff16610334565b34801561058f575f80fd5b506105c461059e366004614ab8565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105ef575f80fd5b506106177f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b34801561063b575f80fd5b5061035e61064a366004614ab8565b60ab6020525f908152604090205481565b348015610666575f80fd5b5061038b610675366004614af7565b611635565b348015610685575f80fd5b5061038b611744565b348015610699575f80fd5b5061038b6106a8366004614bdc565b611757565b3480156106b8575f80fd5b5060a6546103349060ff1681565b3480156106d1575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104e8565b3480156106fb575f80fd5b5061076961070a366004614ab8565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b3480156107c5575f80fd5b506103346107d4366004614ab8565b5f90815260a4602052604090206003015460ff1690565b3480156107f6575f80fd5b5061038b610805366004614af7565b611b20565b348015610815575f80fd5b50610334610824366004614af7565b609f6020525f908152604090205460ff1681565b348015610843575f80fd5b5061035e60995481565b348015610858575f80fd5b5061038b610867366004614ab8565b611c44565b348015610877575f80fd5b5061035e610886366004614af7565b60a56020525f908152604090205481565b3480156108a2575f80fd5b5061035e60a85481565b3480156108b7575f80fd5b5061038b6108c6366004614c37565b611d0e565b3480156108d6575f80fd5b5061038b6108e5366004614af7565b611fdd565b3480156108f5575f80fd5b5061038b610904366004614b9d565b612043565b348015610914575f80fd5b5061038b610923366004614cab565b6123c7565b61038b610936366004614cc6565b61255a565b348015610946575f80fd5b5061035e60985481565b34801561095b575f80fd5b5061038b61096a366004614af7565b612c6f565b61038b61097d366004614cfc565b612d55565b34801561098d575f80fd5b506097546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109b9575f80fd5b506103346109c8366004614ab8565b6137f8565b3480156109d8575f80fd5b5061035e609a5481565b3480156109ed575f80fd5b5061038b6109fc366004614ab8565b61384f565b348015610a0c575f80fd5b5061038b610a1b366004614af7565b61390c565b348015610a2b575f80fd5b5061035e60a95481565b610a3d6139c0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b616139c0565b5f8111610bca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610ac8565b5f80610bd68585613a41565b915091505f610be9836001015160c01c90565b5f81815260a160205260409020549091508214610c62576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b5f60a181610c708785614d96565b81526020019081526020015f205414610d0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b609d548111610d9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b610da6600182614da9565b609e555b8315610f3d57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610df2816137f8565b15610e78575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e4a908490614d96565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ef5575060a85481145b15610eff575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610daa575b505050505050565b60a85415610faf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b610fb7613a5c565b5f80610fc38484613a41565b915091505f610fd6836001015160c01c90565b5f81815260a16020526040902054909150821461104f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b61105881611542565b6110be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610ac8565b6110c7816137f8565b1561112e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610ac8565b5f81815260a4602052604090206003015460ff16156111a9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610ac8565b5f81815260a26020526040902060010154421015611223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610ac8565b605983015160a05f611236600185614da9565b81526020019081526020015f2054146112ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610ac8565b5f81815260a0602052604090205415611320576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610ac8565b80609d546001011461138e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610ac8565b609d819055600160a35f6113a3866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561140e60f98401601185015160c01c600986015160c01c613ac9565b60a25f61141c600184614da9565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906114559084614da9565b81526020019081526020015f205f905560a45f6001836114759190614da9565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d61151e866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061156a57505f82815260a1602052604090205415155b92915050565b6115786139c0565b5f8111801561158957506099548114155b6115ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610ac8565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b61163d6139c0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff166116cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610ac8565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b4e565b61174c6139c0565b6117555f613b9f565b565b5f54610100900460ff161580801561177557505f54600160ff909116105b8061178e5750303b15801561178e57505f5460ff166001145b61181a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610ac8565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611876575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff861615806118ad575073ffffffffffffffffffffffffffffffffffffffff8516155b156118e4576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8716611961576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610ac8565b611969613c15565b611971613cb3565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611b17575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611b286139c0565b73ffffffffffffffffffffffffffffffffffffffff811615801590611b685750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b611bce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610ac8565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611c4c6139c0565b5f81118015611c5c575060648111155b8015611c6a575060a9548114155b611cd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610ac8565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611629565b60a85415611d78576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b611d80613a5c565b5f80611d8c8686613a41565b915091505f611d9f836001015160c01c90565b5f81815260a160205260409020549091508214611e18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b611e21816137f8565b611e87576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610ac8565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556099546002909101544291611efe91614d96565b11611f92575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611f8d91839190613d51565b611b17565b611f9d838686613ed4565b611b1781336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506140ae565b611fe56139c0565b60aa80545f909155611ff78282614194565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611629565b61204b6139c0565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea54156120dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610ac8565b5f806120e88484613a41565b915091505f6120fb836001015160c01c90565b90505f612109846079015190565b905080612172576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610ac8565b600984015160c01c156121e1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610ac8565b5f6121ed856019015190565b03612254576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610ac8565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612280856039015190565b146122e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610ac8565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6123cf6139c0565b8015612528576123dd614266565b60a65460ff16156124da5760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a5909252822080549192909161243e908490614d96565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6125306142eb565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336124fd565b50565b335f908152609f602052604090205460ff166125d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610ac8565b60a8541561263c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b612644613a5c565b60a65460ff16156126b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610ac8565b8167ffffffffffffffff16609d5410612726576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a1602052604090205481146127a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b6127ba8267ffffffffffffffff16611542565b612820576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16156128c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a26020526040902060010154421061296c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610ac8565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129fa9190614dbc565b341015612a63576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610ac8565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b997634604051612bcf91815260200190565b60405180910390a35f609d546001612be79190614d96565b90505b609e548111612c3f578267ffffffffffffffff168114612c2d576099545f82815260a2602052604081206001018054909190612c27908490614d96565b90915550505b80612c3781614dd3565b915050612bea565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003612ce8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610ac8565b335f90815260a56020526040812055612d018282614194565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051612d4991815260200190565b60405180910390a25050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015612ddb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612dff9190614e0a565b612e65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610ac8565b60a85415612ecf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b612ed7613a5c565b612ee46020830183614e25565b60ff1615612f4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610ac8565b5f612f5c6040840184614e45565b91505080612fc6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610ac8565b6080830135613031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610ac8565b60a083013561309c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610ac8565b5f806130b36130ae6020870187614e45565b613a41565b915091505f6130c6836001015160c01c90565b90505f60a1816130d7846001614d96565b81526020019081526020015f20541461314c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610ac8565b609e5481146131b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610ac8565b5f81815260a16020526040902054821461322d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610ac8565b5f81815260ab60205260409020546080870135146132a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610ac8565b5f6132b6846011015160c01c90565b90505f80806133156132cb60408c018c614e45565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613310905060608f018f614e45565b614342565b94850194938401939250905061332e60608b018b614e45565b905061010060ff850104602002146133a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610ac8565b600194909401935f8049156133b8575f496133da565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f6133ea60608d018d614e45565b6133f6915060f9614d96565b90506040519850602081028901604052613424898d5f01602081019061341c9190614e25565b60ff166144dd565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a01526134918961347260208e018e614e45565b604051613480929190614ea6565b604051809103902060b99190910152565b60d989018890526134ae896134a960608f018f614e45565b6144e4565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156135145760a7545f90815260a46020526040902060020154609954429161350791614d96565b6135119190614da9565b90505b604051806080016040528042815260200182609854426135349190614d96565b61353e9190614d96565b815260200161358f8f80604001906135569190614e45565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506144f092505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa15801561361d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136419190614dbc565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c35906136b6906136b0908f018f614e45565b5f614547565b5f8e80604001906136c79190614e45565b6040518663ffffffff1660e01b81526004016136e7959493929190614efc565b602060405180830381865afa158015613702573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137269190614e0a565b6137b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff161580159061156a5750505f90815260a46020526040902060030154610100900460ff161590565b6138576139c0565b5f8111801561386857506098548114155b6138ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610ac8565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611629565b6139146139c0565b73ffffffffffffffffffffffffffffffffffffffff81166139b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610ac8565b61255781613b9f565b60335473ffffffffffffffffffffffffffffffffffffffff163314611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ac8565b5f805f613a4e858561459b565b812090969095509350505050565b60655460ff1615611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610ac8565b805f03613ad557505050565b8082035f805b83811015610f3d57610100818503811115613af557508084035b8651609b546040517f55f613ce00000000000000000000000000000000000000000000000000000000815260048101879052602481018490526044810183905260209099019891945073ffffffffffffffffffffffffffffffffffffffff16906355f613ce906064015f604051808303815f87803b158015613b75575f80fd5b505af1158015613b87573d5f803e3d5ffd5b50505050610100840193505061010081019050613adb565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613cab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b6117556146a6565b5f54610100900460ff16613d49576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b611755614766565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af1158015613de2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e069190614dbc565b5f86815260a46020526040902060010154909150613e25908290614d96565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a590915281208054909190613e71908490614d96565b9091555050604051613e84908490614f7c565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613f3b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610ac8565b5f613f4a846001015160c01c90565b90505f613f58856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613f87876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a848614056885160f81c90565b858888866040518663ffffffff1660e01b815260040161407a959493929190614fa8565b5f6040518083038186803b158015614090575f80fd5b505afa1580156140a2573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906140d29084614fd9565b6140dc9190614ff0565b90506140e88183614da9565b60aa5f8282546140f89190614d96565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a5602052604081208054839290614131908490614d96565b9091555050604051614144908490614f7c565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015614262575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f81146141f0576040519150601f19603f3d011682016040523d82523d5f602084013e6141f5565b606091505b5050905080614260576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610ac8565b505b5050565b61426e613a5c565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586142c13390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6142f3614805565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336142c1565b60405185515f91829160208901919081908490614360908590614871565b90506002840193505f5b818110156143e457603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f6143ba603c83614fd9565b6143c49087614d96565b90505f6143d582603a015160f01c90565b9790970196505060010161436a565b506020850282016040525b80156144c9575f61440485603a015160f01c90565b905061441483828d8d8d8d614906565b92505f614425866038015160f01c90565b905081811015614491576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610ac8565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016143ef565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f61450b828651614871565b90505f5b61451a600183614da9565b81101561453057603c939093019260010161450f565b505f61453d845160c01c90565b9695505050505050565b60605f8080808061455a888a018a615115565b95509550955095509550508187106145785794506145949350505050565b83871061458c578295505050505050614594565b509293505050505b9392505050565b5f8160f9811015614608576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610ac8565b6040519150808483378082016040525f614626836009015160c01c90565b905061010060ff82010460200260f901821461469e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610ac8565b509250929050565b5f54610100900460ff1661473c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff166147fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b61175533613b9f565b60655460ff16611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610ac8565b5f61487d835160f01c90565b9050805f036148b8576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6148c3603c82614fd9565b6148ce906002614d96565b821461156a576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f0361491557508561453d565b609b5473ffffffffffffffffffffffffffffffffffffffff165f80805b89811015614a155760ff89169150600889901c811580614950575082155b1561495f578060200288013593505b600184841c165f03614a04576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f9073ffffffffffffffffffffffffffffffffffffffff87169063ae453cd590602401602060405180830381865afa1580156149d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149fa9190614dbc565b8d52506020909b019a5b506001988901989788019701614932565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615614aaa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610ac8565b509798975050505050505050565b5f60208284031215614ac8575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614af2575f80fd5b919050565b5f60208284031215614b07575f80fd5b61459482614acf565b5f8083601f840112614b20575f80fd5b50813567ffffffffffffffff811115614b37575f80fd5b602083019150836020828501011115614b4e575f80fd5b9250929050565b5f805f60408486031215614b67575f80fd5b833567ffffffffffffffff811115614b7d575f80fd5b614b8986828701614b10565b909790965060209590950135949350505050565b5f8060208385031215614bae575f80fd5b823567ffffffffffffffff811115614bc4575f80fd5b614bd085828601614b10565b90969095509350505050565b5f805f805f8060c08789031215614bf1575f80fd5b614bfa87614acf565b9550614c0860208801614acf565b9450614c1660408801614acf565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614c4a575f80fd5b843567ffffffffffffffff80821115614c61575f80fd5b614c6d88838901614b10565b90965094506020870135915080821115614c85575f80fd5b50614c9287828801614b10565b95989497509550505050565b8015158114612557575f80fd5b5f60208284031215614cbb575f80fd5b813561459481614c9e565b5f8060408385031215614cd7575f80fd5b823567ffffffffffffffff81168114614cee575f80fd5b946020939093013593505050565b5f8060408385031215614d0d575f80fd5b823567ffffffffffffffff80821115614d24575f80fd5b9084019060e08287031215614d37575f80fd5b90925060208401359080821115614d4c575f80fd5b50830160608186031215614d5e575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561156a5761156a614d69565b8181038181111561156a5761156a614d69565b5f60208284031215614dcc575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614e0357614e03614d69565b5060010190565b5f60208284031215614e1a575f80fd5b815161459481614c9e565b5f60208284031215614e35575f80fd5b813560ff81168114614594575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614e78575f80fd5b83018035915067ffffffffffffffff821115614e92575f80fd5b602001915036819003821315614b4e575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b81811015614f5357845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101614f21565b50508760408601528481036060860152614f6e818789614eb5565b9a9950505050505050505050565b5f82515f5b81811015614f9b5760208186018101518583015201614f81565b505f920191825250919050565b858152846020820152608060408201525f614fc7608083018587614eb5565b90508260608301529695505050505050565b808202811582820484141761156a5761156a614d69565b5f82615023577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112615064575f80fd5b8135602067ffffffffffffffff8083111561508157615081615028565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156150c4576150c4615028565b60405293845260208187018101949081019250878511156150e3575f80fd5b6020870191505b8482101561510a576150fb82614acf565b835291830191908301906150ea565b979650505050505050565b5f805f805f8060c0878903121561512a575f80fd5b86359550602087013567ffffffffffffffff80821115615148575f80fd5b6151548a838b01615055565b9650604089013595506060890135915080821115615170575f80fd5b61517c8a838b01615055565b94506080890135935060a0890135915080821115615198575f80fd5b506151a589828a01615055565b915050929550929550929556fea164736f6c6343000818000a" +var RollupDeployedBin = "0x608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610a0c578063f2fde38b14610a2b578063fb1e8b0414610a4a575f80fd5b8063ddd8a3dc146109ac578063de8b3035146109d8578063dff7827e146109f7575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610965578063d279c1911461097a578063d63b354914610999575f80fd5b8063b3e0a50914610914578063bedb86fb14610933578063cd4edc6914610952575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d3146108c1578063b3484425146108d6578063b35dac4e146108f5575f80fd5b8063a479265d14610862578063a4f209b014610877578063abc8d68d14610896575f80fd5b8063910129d41161016c578063910129d4146107e457806397fc007c14610815578063a415d8dc14610834575f80fd5b806388b1ea09146106d75780638da5cb5b146106f05780638f1d37761461071a575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d14610685578063715018a6146106a4578063728cdbca146106b8575f80fd5b80635f77cf1d146105ef578063612672901461063b57806368589dfa1461065a575f80fd5b806357e0af6c1161022c57806357e0af6c146105595780635c975abb146105785780635ef7a94a1461058f575f80fd5b80632b7ac3f3146104c75780633b70c18a146105185780633e001b6614610544575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614d45565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614d84565b610a5f565b005b3480156103a3575f80fd5b506103966103b2366004614de2565b610b83565b3480156103c2575f80fd5b5061033f6103d1366004614d45565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b50610396610408366004614e2a565b610f6f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614d45565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614d45565b61156c565b34801561047c575f80fd5b5061036961048b366004614d45565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614d45565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161034b565b348015610523575f80fd5b50609b546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b34801561054f575f80fd5b5061036960aa5481565b348015610564575f80fd5b50610396610573366004614d45565b61159a565b348015610583575f80fd5b5060655460ff1661033f565b34801561059a575f80fd5b506105cf6105a9366004614d45565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105fa575f80fd5b506106227f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610646575f80fd5b50610396610655366004614d45565b61165f565b348015610665575f80fd5b50610369610674366004614d45565b60ab6020525f908152604090205481565b348015610690575f80fd5b5061039661069f366004614d84565b6118c2565b3480156106af575f80fd5b506103966119d1565b3480156106c3575f80fd5b506103966106d2366004614e69565b6119e4565b3480156106e2575f80fd5b5060a65461033f9060ff1681565b3480156106fb575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104f3565b348015610725575f80fd5b50610793610734366004614d45565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107ef575f80fd5b5061033f6107fe366004614d45565b5f90815260a4602052604090206003015460ff1690565b348015610820575f80fd5b5061039661082f366004614d84565b611dad565b34801561083f575f80fd5b5061033f61084e366004614d84565b609f6020525f908152604090205460ff1681565b34801561086d575f80fd5b5061036960995481565b348015610882575f80fd5b50610396610891366004614d45565b611ed1565b3480156108a1575f80fd5b506103696108b0366004614d84565b60a56020525f908152604090205481565b3480156108cc575f80fd5b5061036960a85481565b3480156108e1575f80fd5b506103966108f0366004614ec4565b611f9b565b348015610900575f80fd5b5061039661090f366004614d84565b61226a565b34801561091f575f80fd5b5061039661092e366004614e2a565b6122d0565b34801561093e575f80fd5b5061039661094d366004614f38565b612654565b610396610960366004614f53565b6127e7565b348015610970575f80fd5b5061036960985481565b348015610985575f80fd5b50610396610994366004614d84565b612efc565b6103966109a7366004614f89565b612fe2565b3480156109b7575f80fd5b506097546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109e3575f80fd5b5061033f6109f2366004614d45565b613a85565b348015610a02575f80fd5b50610369609a5481565b348015610a17575f80fd5b50610396610a26366004614d45565b613adc565b348015610a36575f80fd5b50610396610a45366004614d84565b613b99565b348015610a55575f80fd5b5061036960a95481565b610a67613c4d565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610afb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b8b613c4d565b5f8111610bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610af2565b5f80610c008585613cce565b915091505f610c13836001015160c01c90565b5f81815260a160205260409020549091508214610c8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b5f60a181610c9a8785615023565b81526020019081526020015f205414610d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610af2565b609d548111610dc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b610dd0600182615036565b609e555b8315610f6757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610e1c81613a85565b15610ea2575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e74908490615023565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610f1f575060a85481145b15610f29575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610dd4575b505050505050565b60a85415610fd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b610fe1613ce9565b5f80610fed8484613cce565b915091505f611000836001015160c01c90565b5f81815260a160205260409020549091508214611079576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6110828161156c565b6110e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b6110f181613a85565b15611158576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003015460ff16156111d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610af2565b5f81815260a2602052604090206001015442101561124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610af2565b605983015160a05f611260600185615036565b81526020019081526020015f2054146112d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f81815260a060205260409020541561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610af2565b80609d54600101146113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b609d819055600160a35f6113cd866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561143860f98401601185015160c01c600986015160c01c613d56565b60a25f611446600184615036565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061147f9084615036565b81526020019081526020015f205f905560a45f60018361149f9190615036565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611548866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061159457505f82815260a1602052604090205415155b92915050565b6115a2613c4d565b5f811180156115b357506099548114155b611619576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610af2565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561167f57505f5460ff8083169116105b61170b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556117465f5460ff1690565b60ff166002146117b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610af2565b8161183f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610af2565b609e545f90815260ab602052604090205461186857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611653565b6118ca613c4d565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff16611958576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610af2565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b78565b6119d9613c4d565b6119e25f613e2c565b565b5f54610100900460ff1615808015611a0257505f54600160ff909116105b80611a1b5750303b158015611a1b57505f5460ff166001145b611aa7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611b03575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff86161580611b3a575073ffffffffffffffffffffffffffffffffffffffff8516155b15611b71576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8716611bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610af2565b611bf6613ea2565b611bfe613f40565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611da4575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611db5613c4d565b73ffffffffffffffffffffffffffffffffffffffff811615801590611df55750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b611e5b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610af2565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611ed9613c4d565b5f81118015611ee9575060648111155b8015611ef7575060a9548114155b611f5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610af2565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611653565b60a85415612005576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61200d613ce9565b5f806120198686613cce565b915091505f61202c836001015160c01c90565b5f81815260a1602052604090205490915082146120a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6120ae81613a85565b612114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055609954600290910154429161218b91615023565b1161221f575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f7574000000000000000000000000000000000000000000000000009183019190915261221a91839190613fde565b611da4565b61222a838686614161565b611da481336040518060400160405280600d81526020017f50726f6f6620737563636573730000000000000000000000000000000000000081525061433b565b612272613c4d565b60aa80545f9091556122848282614421565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611653565b6122d8613c4d565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415612369576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610af2565b5f806123758484613cce565b915091505f612388836001015160c01c90565b90505f612396846079015190565b9050806123ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610af2565b600984015160c01c1561246e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610af2565b5f61247a856019015190565b036124e1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610af2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c44401461250d856039015190565b14612574576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610af2565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b61265c613c4d565b80156127b55761266a6144f3565b60a65460ff16156127675760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a590925282208054919290916126cb908490615023565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6127bd614578565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa3361278a565b50565b335f908152609f602052604090205460ff1661285f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610af2565b60a854156128c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b6128d1613ce9565b60a65460ff161561293e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610af2565b8167ffffffffffffffff16609d54106129b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a160205260409020548114612a34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b612a478267ffffffffffffffff1661156c565b612aad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1615612b4f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a260205260409020600101544210612bf9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610af2565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c63573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c879190615049565b341015612cf0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b997634604051612e5c91815260200190565b60405180910390a35f609d546001612e749190615023565b90505b609e548111612ecc578267ffffffffffffffff168114612eba576099545f82815260a2602052604081206001018054909190612eb4908490615023565b90915550505b80612ec481615060565b915050612e77565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003612f75576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610af2565b335f90815260a56020526040812055612f8e8282614421565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051612fd691815260200190565b60405180910390a25050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015613068573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061308c9190615097565b6130f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610af2565b60a8541561315c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b613164613ce9565b61317160208301836150b2565b60ff16156131db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610af2565b5f6131e960408401846150d2565b91505080613253576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610af2565b60808301356132be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610af2565b60a0830135613329576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610af2565b5f8061334061333b60208701876150d2565b613cce565b915091505f613353836001015160c01c90565b90505f60a181613364846001615023565b81526020019081526020015f2054146133d9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610af2565b609e548114613444576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b5f81815260a1602052604090205482146134ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610af2565b5f81815260ab6020526040902054608087013514613534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f613543846011015160c01c90565b90505f80806135a261355860408c018c6150d2565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925088915061359d905060608f018f6150d2565b6145cf565b9485019493840193925090506135bb60608b018b6150d2565b905061010060ff8501046020021461362f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610af2565b600194909401935f804915613645575f49613667565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f61367760608d018d6150d2565b613683915060f9615023565b905060405198506020810289016040526136b1898d5f0160208101906136a991906150b2565b60ff1661476a565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a015261371e896136ff60208e018e6150d2565b60405161370d929190615133565b604051809103902060b99190910152565b60d9890188905261373b8961373660608f018f6150d2565b614771565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156137a15760a7545f90815260a46020526040902060020154609954429161379491615023565b61379e9190615036565b90505b604051806080016040528042815260200182609854426137c19190615023565b6137cb9190615023565b815260200161381c8f80604001906137e391906150d2565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061477d92505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa1580156138aa573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138ce9190615049565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c35906139439061393d908f018f6150d2565b5f6147d4565b5f8e806040019061395491906150d2565b6040518663ffffffff1660e01b8152600401613974959493929190615189565b602060405180830381865afa15801561398f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139b39190615097565b613a3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16158015906115945750505f90815260a46020526040902060030154610100900460ff161590565b613ae4613c4d565b5f81118015613af557506098548114155b613b5b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610af2565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611653565b613ba1613c4d565b73ffffffffffffffffffffffffffffffffffffffff8116613c44576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610af2565b6127e481613e2c565b60335473ffffffffffffffffffffffffffffffffffffffff1633146119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610af2565b5f805f613cdb8585614828565b812090969095509350505050565b60655460ff16156119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610af2565b805f03613d6257505050565b8082035f805b83811015610f6757610100818503811115613d8257508084035b8651609b546040517f55f613ce00000000000000000000000000000000000000000000000000000000815260048101879052602481018490526044810183905260209099019891945073ffffffffffffffffffffffffffffffffffffffff16906355f613ce906064015f604051808303815f87803b158015613e02575f80fd5b505af1158015613e14573d5f803e3d5ffd5b50505050610100840193505061010081019050613d68565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613f38576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e2614933565b5f54610100900460ff16613fd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e26149f3565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af115801561406f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906140939190615049565b5f86815260a460205260409020600101549091506140b2908290615023565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a5909152812080549091906140fe908490615023565b9091555050604051614111908490615209565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b806141c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610af2565b5f6141d7846001015160c01c90565b90505f6141e5856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000614214876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a8486142e3885160f81c90565b858888866040518663ffffffff1660e01b8152600401614307959493929190615235565b5f6040518083038186803b15801561431d575f80fd5b505afa15801561432f573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a95490919060649061435f9084615266565b614369919061527d565b90506143758183615036565b60aa5f8282546143859190615023565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a56020526040812080548392906143be908490615023565b90915550506040516143d1908490615209565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80156144ef575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f811461447d576040519150601f19603f3d011682016040523d82523d5f602084013e614482565b606091505b50509050806144ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610af2565b505b5050565b6144fb613ce9565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861454e3390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b614580614a92565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa3361454e565b60405185515f918291602089019190819084906145ed908590614afe565b90506002840193505f5b8181101561467157603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f614647603c83615266565b6146519087615023565b90505f61466282603a015160f01c90565b979097019650506001016145f7565b506020850282016040525b8015614756575f61469185603a015160f01c90565b90506146a183828d8d8d8d614b93565b92505f6146b2866038015160f01c90565b90508181101561471e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610af2565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0161467c565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f614798828651614afe565b90505f5b6147a7600183615036565b8110156147bd57603c939093019260010161479c565b505f6147ca845160c01c90565b9695505050505050565b60605f808080806147e7888a018a6153a2565b95509550955095509550508187106148055794506148219350505050565b838710614819578295505050505050614821565b509293505050505b9392505050565b5f8160f9811015614895576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610af2565b6040519150808483378082016040525f6148b3836009015160c01c90565b905061010060ff82010460200260f901821461492b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610af2565b509250929050565b5f54610100900460ff166149c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff16614a89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e233613e2c565b60655460ff166119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610af2565b5f614b0a835160f01c90565b9050805f03614b45576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614b50603c82615266565b614b5b906002615023565b8214611594576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614ba25750856147ca565b609b5473ffffffffffffffffffffffffffffffffffffffff165f80805b89811015614ca25760ff89169150600889901c811580614bdd575082155b15614bec578060200288013593505b600184841c165f03614c91576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f9073ffffffffffffffffffffffffffffffffffffffff87169063ae453cd590602401602060405180830381865afa158015614c63573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614c879190615049565b8d52506020909b019a5b506001988901989788019701614bbf565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615614d37576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610af2565b509798975050505050505050565b5f60208284031215614d55575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614d7f575f80fd5b919050565b5f60208284031215614d94575f80fd5b61482182614d5c565b5f8083601f840112614dad575f80fd5b50813567ffffffffffffffff811115614dc4575f80fd5b602083019150836020828501011115614ddb575f80fd5b9250929050565b5f805f60408486031215614df4575f80fd5b833567ffffffffffffffff811115614e0a575f80fd5b614e1686828701614d9d565b909790965060209590950135949350505050565b5f8060208385031215614e3b575f80fd5b823567ffffffffffffffff811115614e51575f80fd5b614e5d85828601614d9d565b90969095509350505050565b5f805f805f8060c08789031215614e7e575f80fd5b614e8787614d5c565b9550614e9560208801614d5c565b9450614ea360408801614d5c565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614ed7575f80fd5b843567ffffffffffffffff80821115614eee575f80fd5b614efa88838901614d9d565b90965094506020870135915080821115614f12575f80fd5b50614f1f87828801614d9d565b95989497509550505050565b80151581146127e4575f80fd5b5f60208284031215614f48575f80fd5b813561482181614f2b565b5f8060408385031215614f64575f80fd5b823567ffffffffffffffff81168114614f7b575f80fd5b946020939093013593505050565b5f8060408385031215614f9a575f80fd5b823567ffffffffffffffff80821115614fb1575f80fd5b9084019060e08287031215614fc4575f80fd5b90925060208401359080821115614fd9575f80fd5b50830160608186031215614feb575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561159457611594614ff6565b8181038181111561159457611594614ff6565b5f60208284031215615059575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361509057615090614ff6565b5060010190565b5f602082840312156150a7575f80fd5b815161482181614f2b565b5f602082840312156150c2575f80fd5b813560ff81168114614821575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112615105575f80fd5b83018035915067ffffffffffffffff82111561511f575f80fd5b602001915036819003821315614ddb575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156151e057845173ffffffffffffffffffffffffffffffffffffffff16835293830193918301916001016151ae565b505087604086015284810360608601526151fb818789615142565b9a9950505050505050505050565b5f82515f5b81811015615228576020818601810151858301520161520e565b505f920191825250919050565b858152846020820152608060408201525f615254608083018587615142565b90508260608301529695505050505050565b808202811582820484141761159457611594614ff6565b5f826152b0577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126152f1575f80fd5b8135602067ffffffffffffffff8083111561530e5761530e6152b5565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715615351576153516152b5565b6040529384526020818701810194908101925087851115615370575f80fd5b6020870191505b848210156153975761538882614d5c565b83529183019190830190615377565b979650505050505050565b5f805f805f8060c087890312156153b7575f80fd5b86359550602087013567ffffffffffffffff808211156153d5575f80fd5b6153e18a838b016152e2565b96506040890135955060608901359150808211156153fd575f80fd5b6154098a838b016152e2565b94506080890135935060a0890135915080821115615425575f80fd5b5061543289828a016152e2565b915050929550929550929556fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(RollupStorageLayoutJSON), RollupStorageLayout); err != nil { From e608d89e45b8ea31d98eaa4c5425d75c42874d2f Mon Sep 17 00:00:00 2001 From: kukoo Date: Tue, 26 Nov 2024 22:56:01 +0800 Subject: [PATCH 12/33] Rollup upgrade (#645) Co-authored-by: Agnar Song Co-authored-by: songyaoshun Co-authored-by: vincent Co-authored-by: chengwenxi <22697326+chengwenxi@users.noreply.github.com> Co-authored-by: WorldDogs <33647825+WorldDogs@users.noreply.github.com> --- bindings/bin/rollup_deployed.hex | 2 +- bindings/bindings/rollup.go | 25 +++++++- bindings/bindings/rollup_more.go | 2 +- contracts/contracts/l1/rollup/Rollup.sol | 11 ++++ contracts/contracts/test/Rollup.t.sol | 9 +++ contracts/hardhat.config.ts | 1 + contracts/tasks/mainnet_upgrade.ts | 25 ++++++++ tx-submitter/entry.go | 5 ++ tx-submitter/flags/flags.go | 9 +++ tx-submitter/l1checker/blockmonitor.go | 67 +++++++++++++++++++++ tx-submitter/l1checker/blockmonitor_test.go | 23 +++++++ tx-submitter/services/rollup.go | 12 ++++ tx-submitter/utils/config.go | 5 +- 13 files changed, 191 insertions(+), 5 deletions(-) create mode 100644 contracts/tasks/mainnet_upgrade.ts create mode 100644 tx-submitter/l1checker/blockmonitor.go create mode 100644 tx-submitter/l1checker/blockmonitor_test.go diff --git a/bindings/bin/rollup_deployed.hex b/bindings/bin/rollup_deployed.hex index 24f594bc7..a123792e3 100644 --- a/bindings/bin/rollup_deployed.hex +++ b/bindings/bin/rollup_deployed.hex @@ -1 +1 @@ -0x6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610987578063f2fde38b146109a6578063fb1e8b04146109c5575f80fd5b8063ddd8a3dc14610934578063de8b303514610953578063dff7827e14610972575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108ed578063d279c19114610902578063d63b354914610921575f80fd5b8063b3e0a5091461089c578063bedb86fb146108bb578063cd4edc69146108da575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610849578063b34844251461085e578063b35dac4e1461087d575f80fd5b8063a479265d146107ea578063a4f209b0146107ff578063abc8d68d1461081e575f80fd5b8063910129d41161016c578063910129d41461076c57806397fc007c1461079d578063a415d8dc146107bc575f80fd5b806388b1ea09146106865780638da5cb5b1461069f5780638f1d3776146106bc575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d14610634578063715018a614610653578063728cdbca14610667575f80fd5b80635ef7a94a1461055d5780635f77cf1d146105bd57806368589dfa14610609575f80fd5b80633e001b661161022c5780633e001b661461051257806357e0af6c146105275780635c975abb14610546575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a146104f3575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614046565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614078565b6109da565b005b348015610398575f80fd5b5061038b6103a73660046140d6565b610aac565b3480156103b7575f80fd5b506103346103c6366004614046565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd36600461411e565b610e05565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614046565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614046565b6112fa565b348015610471575f80fd5b5061035e610480366004614046565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614046565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104db906001600160a01b031681565b6040516001600160a01b039091168152602001610340565b3480156104fe575f80fd5b50609b546104db906001600160a01b031681565b34801561051d575f80fd5b5061035e60aa5481565b348015610532575f80fd5b5061038b610541366004614046565b611328565b348015610551575f80fd5b5060655460ff16610334565b348015610568575f80fd5b5061059d610577366004614046565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105c8575f80fd5b506105f07f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b348015610614575f80fd5b5061035e610623366004614046565b60ab6020525f908152604090205481565b34801561063f575f80fd5b5061038b61064e366004614078565b6113d3565b34801561065e575f80fd5b5061038b611490565b348015610672575f80fd5b5061038b61068136600461415d565b6114a3565b348015610691575f80fd5b5060a6546103349060ff1681565b3480156106aa575f80fd5b506033546001600160a01b03166104db565b3480156106c7575f80fd5b506107286106d6366004614046565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b348015610777575f80fd5b50610334610786366004614046565b5f90815260a4602052604090206003015460ff1690565b3480156107a8575f80fd5b5061038b6107b7366004614078565b6117e6565b3480156107c7575f80fd5b506103346107d6366004614078565b609f6020525f908152604090205460ff1681565b3480156107f5575f80fd5b5061035e60995481565b34801561080a575f80fd5b5061038b610819366004614046565b6118c9565b348015610829575f80fd5b5061035e610838366004614078565b60a56020525f908152604090205481565b348015610854575f80fd5b5061035e60a85481565b348015610869575f80fd5b5061038b6108783660046141b8565b611979565b348015610888575f80fd5b5061038b610897366004614078565b611bbe565b3480156108a7575f80fd5b5061038b6108b636600461411e565b611c17565b3480156108c6575f80fd5b5061038b6108d536600461422c565b611f19565b61038b6108e8366004614247565b612074565b3480156108f8575f80fd5b5061035e60985481565b34801561090d575f80fd5b5061038b61091c366004614078565b612640565b61038b61092f36600461427d565b6126ff565b34801561093f575f80fd5b506097546104db906001600160a01b031681565b34801561095e575f80fd5b5061033461096d366004614046565b613029565b34801561097d575f80fd5b5061035e609a5481565b348015610992575f80fd5b5061038b6109a1366004614046565b613073565b3480156109b1575f80fd5b5061038b6109c0366004614078565b613116565b3480156109d0575f80fd5b5061035e60a95481565b6109e26131a3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a4f5760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ab46131a3565b5f8111610b035760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a46565b5f80610b0f85856131fd565b915091505f610b22836001015160c01c90565b5f81815260a160205260409020549091508214610b815760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b5f60a181610b8f8785614317565b81526020019081526020015f205414610c0f5760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a46565b609d548111610c865760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b610c9160018261432a565b609e555b8315610dfd57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610cdd81613029565b15610d38575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d28908490614317565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610db5575060a85481145b15610dbf575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c95575b505050505050565b60a85415610e555760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b610e5d613218565b5f80610e6984846131fd565b915091505f610e7c836001015160c01c90565b5f81815260a160205260409020549091508214610edb5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b610ee4816112fa565b610f305760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b610f3981613029565b15610f865760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003015460ff1615610fe75760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a46565b5f81815260a260205260409020600101544210156110475760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a46565b605983015160a05f61105a60018561432a565b81526020019081526020015f2054146110b55760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f81815260a06020526040902054156111105760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a46565b80609d54600101146111645760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b609d819055600160a35f611179866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111c660f98401601185015160c01c600986015160c01c61326b565b60a25f6111d460018461432a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061120d908461432a565b81526020019081526020015f205f905560a45f60018361122d919061432a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d6112d6866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061132257505f82815260a1602052604090205415155b92915050565b6113306131a3565b5f8111801561134157506099548114155b61138d5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a46565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113db6131a3565b6001600160a01b0381165f908152609f602052604090205460ff166114425760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a46565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610aa1565b6114986131a3565b6114a15f613334565b565b5f54610100900460ff16158080156114c157505f54600160ff909116105b806114da5750303b1580156114da57505f5460ff166001145b61154c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a46565b5f805460ff19166001179055801561158a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806115a757506001600160a01b038516155b156115de576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166116345760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a46565b61163c61339d565b611644613421565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156117dd575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117ee6131a3565b6001600160a01b038116158015906118145750609c546001600160a01b03828116911614155b6118605760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a46565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6118d16131a3565b5f811180156118e1575060648111155b80156118ef575060a9548114155b61193b5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a46565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113c7565b60a854156119c95760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b6119d1613218565b5f806119dd86866131fd565b915091505f6119f0836001015160c01c90565b5f81815260a160205260409020549091508214611a4f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b611a5881613029565b611aa45760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611afd91614317565b11611b73575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b6e918391906134a5565b6117dd565b611b7e838686613601565b6117dd81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506137b4565b611bc66131a3565b60aa80545f909155611bd88282613880565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113c7565b611c1f6131a3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c965760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a46565b5f80611ca284846131fd565b915091505f611cb5836001015160c01c90565b90505f611cc3846079015190565b905080611d125760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a46565b600984015160c01c15611d675760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a46565b5f611d73856019015190565b03611dc05760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a46565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611dec856039015190565b14611e395760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a46565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611f216131a3565b801561204257611f2f61392b565b60a65460ff16156120015760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f83908490614317565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b61204a613985565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612024565b50565b335f908152609f602052604090205460ff166120d25760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a46565b60a854156121225760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b61212a613218565b60a65460ff161561217d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a46565b8167ffffffffffffffff16609d54106121d85760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a16020526040902054811461223f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b6122528267ffffffffffffffff166112fa565b61229e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156123195760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123a95760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a46565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241d919061433d565b34101561246c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516125be91815260200190565b60405180910390a35f609d5460016125d69190614317565b90505b609e54811161262e578267ffffffffffffffff16811461261c576099545f82815260a2602052604081206001018054909190612616908490614317565b90915550505b8061262681614354565b9150506125d9565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361269f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a46565b335f90815260a560205260408120556126b88282613880565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516126f391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561276b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061278f919061438b565b6127db5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a46565b60a8541561282b5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b612833613218565b61284060208301836143a6565b60ff16156128905760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a46565b5f61289e60408401846143c6565b915050806128ee5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a46565b608083013561293f5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a46565b60a08301356129905760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a46565b5f806129a76129a260208701876143c6565b6131fd565b915091505f6129ba836001015160c01c90565b90505f60a1816129cb846001614317565b81526020019081526020015f205414612a265760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a46565b609e548114612a775760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b5f81815260a160205260409020548214612ad35760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a46565b5f81815260ab6020526040902054608087013514612b335760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f612b42846011015160c01c90565b90505f8080612ba1612b5760408c018c6143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612b9c905060608f018f6143c6565b6139be565b948501949384019392509050612bba60608b018b6143c6565b905061010060ff85010460200214612c145760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b600194909401935f804915612c2a575f49612c4c565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612c5c60608d018d6143c6565b612c68915060f9614317565b90506040519850602081028901604052612c96898d5f016020810190612c8e91906143a6565b60ff16613b3f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612d0389612ce460208e018e6143c6565b604051612cf2929190614427565b604051809103902060b99190910152565b60d98901889052612d2089612d1b60608f018f6143c6565b613b46565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612d865760a7545f90815260a460205260409020600201546099544291612d7991614317565b612d83919061432a565b90505b60405180608001604052804281526020018260985442612da69190614317565b612db09190614317565b8152602001612e018f8060400190612dc891906143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613b5292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612e75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e99919061433d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612f0190612efb908f018f6143c6565b5f613ba9565b5f8e8060400190612f1291906143c6565b6040518663ffffffff1660e01b8152600401612f3295949392919061447d565b602060405180830381865afa158015612f4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f71919061438b565b612fe35760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906113225750505f90815260a46020526040902060030154610100900460ff161590565b61307b6131a3565b5f8111801561308c57506098548114155b6130d85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a46565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113c7565b61311e6131a3565b6001600160a01b03811661319a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a46565b61207181613334565b6033546001600160a01b031633146114a15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a46565b5f805f61320a8585613bfd565b812090969095509350505050565b60655460ff16156114a15760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a46565b805f0361327757505050565b8082035f805b83811015610dfd5761010081850381111561329757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561330a575f80fd5b505af115801561331c573d5f803e3d5ffd5b5050505061010084019350506101008101905061327d565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166134195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613cd4565b5f54610100900460ff1661349d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613d5c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613529573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061354d919061433d565b5f86815260a4602052604090206001015490915061356c908290614317565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906135ab908490614317565b90915550506040516135be9084906144f0565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061364e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a46565b5f61365d846001015160c01c90565b90505f61366b856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061369a876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861375c885160f81c90565b858888866040518663ffffffff1660e01b815260040161378095949392919061451c565b5f6040518083038186803b158015613796575f80fd5b505afa1580156137a8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906137d8908461454d565b6137e29190614564565b90506137ee818361432a565b60aa5f8282546137fe9190614317565b90915550506001600160a01b0384165f90815260a560205260408120805483929061382a908490614317565b909155505060405161383d9084906144f0565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613927575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146138cf576040519150601f19603f3d011682016040523d82523d5f602084013e6138d4565b606091505b50509050806139255760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a46565b505b5050565b613933613218565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586139683390565b6040516001600160a01b03909116815260200160405180910390a1565b61398d613de1565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613968565b60405185515f918291602089019190819084906139dc908590613e33565b90506002840193505f5b81811015613a6057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613a36603c8361454d565b613a409087614317565b90505f613a5182603a015160f01c90565b979097019650506001016139e6565b506020850282016040525b8015613b2b575f613a8085603a015160f01c90565b9050613a9083828d8d8d8d613ec8565b92505f613aa1866038015160f01c90565b905081811015613af35760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a46565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613a6b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613b6d828651613e33565b90505f5b613b7c60018361432a565b811015613b9257603c9390930192600101613b71565b505f613b9f845160c01c90565b9695505050505050565b60605f80808080613bbc888a018a614689565b9550955095509550955050818710613bda579450613bf69350505050565b838710613bee578295505050505050613bf6565b509293505050505b9392505050565b5f8160f9811015613c505760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a46565b6040519150808483378082016040525f613c6e836009015160c01c90565b905061010060ff82010460200260f9018214613ccc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b509250929050565b5f54610100900460ff16613d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6065805460ff19169055565b5f54610100900460ff16613dd85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a133613334565b60655460ff166114a15760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a46565b5f613e3f835160f01c90565b9050805f03613e7a576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e85603c8261454d565b613e90906002614317565b8214611322576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613ed7575085613b9f565b609b546001600160a01b03165f80805b89811015613fbd5760ff89169150600889901c811580613f05575082155b15613f14578060200288013593505b600184841c165f03613fac576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613f7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fa2919061433d565b8d52506020909b019a5b506001988901989788019701613ee7565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156140385760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a46565b509798975050505050505050565b5f60208284031215614056575f80fd5b5035919050565b80356001600160a01b0381168114614073575f80fd5b919050565b5f60208284031215614088575f80fd5b613bf68261405d565b5f8083601f8401126140a1575f80fd5b50813567ffffffffffffffff8111156140b8575f80fd5b6020830191508360208285010111156140cf575f80fd5b9250929050565b5f805f604084860312156140e8575f80fd5b833567ffffffffffffffff8111156140fe575f80fd5b61410a86828701614091565b909790965060209590950135949350505050565b5f806020838503121561412f575f80fd5b823567ffffffffffffffff811115614145575f80fd5b61415185828601614091565b90969095509350505050565b5f805f805f8060c08789031215614172575f80fd5b61417b8761405d565b95506141896020880161405d565b94506141976040880161405d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156141cb575f80fd5b843567ffffffffffffffff808211156141e2575f80fd5b6141ee88838901614091565b90965094506020870135915080821115614206575f80fd5b5061421387828801614091565b95989497509550505050565b8015158114612071575f80fd5b5f6020828403121561423c575f80fd5b8135613bf68161421f565b5f8060408385031215614258575f80fd5b823567ffffffffffffffff8116811461426f575f80fd5b946020939093013593505050565b5f806040838503121561428e575f80fd5b823567ffffffffffffffff808211156142a5575f80fd5b9084019060e082870312156142b8575f80fd5b909250602084013590808211156142cd575f80fd5b508301606081860312156142df575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611322576113226142ea565b81810381811115611322576113226142ea565b5f6020828403121561434d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614384576143846142ea565b5060010190565b5f6020828403121561439b575f80fd5b8151613bf68161421f565b5f602082840312156143b6575f80fd5b813560ff81168114613bf6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126143f9575f80fd5b83018035915067ffffffffffffffff821115614413575f80fd5b6020019150368190038213156140cf575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156144c75784516001600160a01b0316835293830193918301916001016144a2565b505087604086015284810360608601526144e2818789614436565b9a9950505050505050505050565b5f82515f5b8181101561450f57602081860181015185830152016144f5565b505f920191825250919050565b858152846020820152608060408201525f61453b608083018587614436565b90508260608301529695505050505050565b8082028115828204841417611322576113226142ea565b5f82614597577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145d8575f80fd5b8135602067ffffffffffffffff808311156145f5576145f561459c565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156146385761463861459c565b6040529384526020818701810194908101925087851115614657575f80fd5b6020870191505b8482101561467e5761466f8261405d565b8352918301919083019061465e565b979650505050505050565b5f805f805f8060c0878903121561469e575f80fd5b86359550602087013567ffffffffffffffff808211156146bc575f80fd5b6146c88a838b016145c9565b96506040890135955060608901359150808211156146e4575f80fd5b6146f08a838b016145c9565b94506080890135935060a089013591508082111561470c575f80fd5b5061471989828a016145c9565b915050929550929550929556fea164736f6c6343000818000a +0x608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610917578063d279c1911461092c578063d63b35491461094b575f80fd5b8063b3e0a509146108c6578063bedb86fb146108e5578063cd4edc6914610904575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610873578063b348442514610888578063b35dac4e146108a7575f80fd5b8063a479265d14610814578063a4f209b014610829578063abc8d68d14610848575f80fd5b8063910129d41161016c578063910129d41461079657806397fc007c146107c7578063a415d8dc146107e6575f80fd5b806388b1ea09146106b05780638da5cb5b146106c95780638f1d3776146106e6575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d1461065e578063715018a61461067d578063728cdbca14610691575f80fd5b80635f77cf1d146105c8578063612672901461061457806368589dfa14610633575f80fd5b806357e0af6c1161022c57806357e0af6c146105325780635c975abb146105515780635ef7a94a14610568575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046142d3565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614305565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614363565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046142d3565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046143ab565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046142d3565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046142d3565b611324565b34801561047c575f80fd5b5061036961048b3660046142d3565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046142d3565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b34801561053d575f80fd5b5061039661054c3660046142d3565b611352565b34801561055c575f80fd5b5060655460ff1661033f565b348015610573575f80fd5b506105a86105823660046142d3565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105d3575f80fd5b506105fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b34801561061f575f80fd5b5061039661062e3660046142d3565b6113fd565b34801561063e575f80fd5b5061036961064d3660046142d3565b60ab6020525f908152604090205481565b348015610669575f80fd5b50610396610678366004614305565b611612565b348015610688575f80fd5b506103966116cf565b34801561069c575f80fd5b506103966106ab3660046143ea565b6116e2565b3480156106bb575f80fd5b5060a65461033f9060ff1681565b3480156106d4575f80fd5b506033546001600160a01b03166104e6565b3480156106f1575f80fd5b506107526107003660046142d3565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107a1575f80fd5b5061033f6107b03660046142d3565b5f90815260a4602052604090206003015460ff1690565b3480156107d2575f80fd5b506103966107e1366004614305565b611a25565b3480156107f1575f80fd5b5061033f610800366004614305565b609f6020525f908152604090205460ff1681565b34801561081f575f80fd5b5061036960995481565b348015610834575f80fd5b506103966108433660046142d3565b611b08565b348015610853575f80fd5b50610369610862366004614305565b60a56020525f908152604090205481565b34801561087e575f80fd5b5061036960a85481565b348015610893575f80fd5b506103966108a2366004614445565b611bb8565b3480156108b2575f80fd5b506103966108c1366004614305565b611dfd565b3480156108d1575f80fd5b506103966108e03660046143ab565b611e56565b3480156108f0575f80fd5b506103966108ff3660046144b9565b6121a6565b6103966109123660046144d4565b612301565b348015610922575f80fd5b5061036960985481565b348015610937575f80fd5b50610396610946366004614305565b6128cd565b61039661095936600461450a565b61298c565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046142d3565b6132b6565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046142d3565b613300565b3480156109db575f80fd5b506103966109ea366004614305565b6133a3565b3480156109fa575f80fd5b5061036960a95481565b610a0c613430565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade613430565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b39858561348a565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856145a4565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826145b7565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d07816132b6565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906145a4565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e876134a5565b5f80610e93848461348a565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611324565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f63816132b6565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856145b7565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f060f98401601185015160c01c600986015160c01c6134f8565b60a25f6111fe6001846145b7565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123790846145b7565b81526020019081526020015f205f905560a45f60018361125791906145b7565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611300866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134c57505f82815260a1602052604090205415155b92915050565b61135a613430565b5f8111801561136b57506099548114155b6113b75760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561141d57505f5460ff8083169116105b61148f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ca5f5460ff1690565b60ff1660021461151c5760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b8161158f5760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab60205260409020546115b857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020016113f1565b61161a613430565b6001600160a01b0381165f908152609f602052604090205460ff166116815760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b6116d7613430565b6116e05f6135c1565b565b5f54610100900460ff161580801561170057505f54600160ff909116105b806117195750303b15801561171957505f5460ff166001145b61178b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff1916600117905580156117c9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806117e657506001600160a01b038516155b1561181d576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166118735760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b61187b61362a565b6118836136ae565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611a1c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611a2d613430565b6001600160a01b03811615801590611a535750609c546001600160a01b03828116911614155b611a9f5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611b10613430565b5f81118015611b20575060648111155b8015611b2e575060a9548114155b611b7a5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113f1565b60a85415611c085760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611c106134a5565b5f80611c1c868661348a565b915091505f611c2f836001015160c01c90565b5f81815260a160205260409020549091508214611c8e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b611c97816132b6565b611ce35760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611d3c916145a4565b11611db2575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611dad91839190613732565b611a1c565b611dbd83868661388e565b611a1c81336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613a41565b611e05613430565b60aa80545f909155611e178282613b0d565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113f1565b611e5e613430565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611ed55760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f80611ee1848461348a565b915091505f611ef4836001015160c01c90565b90508015611f445760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f611f50846079015190565b905080611f9f5760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c15611ff45760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612000856019015190565b0361204d5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612079856039015190565b146120c65760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6121ae613430565b80156122cf576121bc613bb8565b60a65460ff161561228e5760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a590925282208054919290916122109084906145a4565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b6122d7613c12565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336122b1565b50565b335f908152609f602052604090205460ff1661235f5760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a854156123af5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b6123b76134a5565b60a65460ff161561240a5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d54106124655760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a1602052604090205481146124cc5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6124df8267ffffffffffffffff16611324565b61252b5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156125a65760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a2602052604090206001015442106126365760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612686573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126aa91906145ca565b3410156126f95760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161284b91815260200190565b60405180910390a35f609d54600161286391906145a4565b90505b609e5481116128bb578267ffffffffffffffff1681146128a9576099545f82815260a26020526040812060010180549091906128a39084906145a4565b90915550505b806128b3816145e1565b915050612866565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361292c5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556129458282613b0d565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161298091815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156129f8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a1c9190614618565b612a685760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a85415612ab85760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612ac06134a5565b612acd6020830183614633565b60ff1615612b1d5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f612b2b6040840184614653565b91505080612b7b5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b6080830135612bcc5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a0830135612c1d5760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f80612c34612c2f6020870187614653565b61348a565b915091505f612c47836001015160c01c90565b90505f60a181612c588460016145a4565b81526020019081526020015f205414612cb35760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e548114612d045760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a160205260409020548214612d605760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab6020526040902054608087013514612dc05760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f612dcf846011015160c01c90565b90505f8080612e2e612de460408c018c614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612e29905060608f018f614653565b613c4b565b948501949384019392509050612e4760608b018b614653565b905061010060ff85010460200214612ea15760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b600194909401935f804915612eb7575f49612ed9565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612ee960608d018d614653565b612ef5915060f96145a4565b90506040519850602081028901604052612f23898d5f016020810190612f1b9190614633565b60ff16613dcc565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612f9089612f7160208e018e614653565b604051612f7f9291906146b4565b604051809103902060b99190910152565b60d98901889052612fad89612fa860608f018f614653565b613dd3565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156130135760a7545f90815260a460205260409020600201546099544291613006916145a4565b61301091906145b7565b90505b6040518060800160405280428152602001826098544261303391906145a4565b61303d91906145a4565b815260200161308e8f80604001906130559190614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613ddf92505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015613102573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061312691906145ca565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c359061318e90613188908f018f614653565b5f613e36565b5f8e806040019061319f9190614653565b6040518663ffffffff1660e01b81526004016131bf95949392919061470a565b602060405180830381865afa1580156131da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131fe9190614618565b6132705760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134c5750505f90815260a46020526040902060030154610100900460ff161590565b613308613430565b5f8111801561331957506098548114155b6133655760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113f1565b6133ab613430565b6001600160a01b0381166134275760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b6122fe816135c1565b6033546001600160a01b031633146116e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134978585613e8a565b812090969095509350505050565b60655460ff16156116e05760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361350457505050565b8082035f805b83811015610e275761010081850381111561352457508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b158015613597575f80fd5b505af11580156135a9573d5f803e3d5ffd5b5050505061010084019350506101008101905061350a565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166136a65760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f61565b5f54610100900460ff1661372a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613fe9565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af11580156137b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137da91906145ca565b5f86815260a460205260409020600101549091506137f99082906145a4565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906138389084906145a4565b909155505060405161384b90849061477d565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b806138db5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f6138ea846001015160c01c90565b90505f6138f8856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613927876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a8486139e9885160f81c90565b858888866040518663ffffffff1660e01b8152600401613a0d9594939291906147a9565b5f6040518083038186803b158015613a23575f80fd5b505afa158015613a35573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613a6590846147da565b613a6f91906147f1565b9050613a7b81836145b7565b60aa5f828254613a8b91906145a4565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613ab79084906145a4565b9091555050604051613aca90849061477d565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613bb4575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613b5c576040519150601f19603f3d011682016040523d82523d5f602084013e613b61565b606091505b5050905080613bb25760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613bc06134a5565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613bf53390565b6040516001600160a01b03909116815260200160405180910390a1565b613c1a61406e565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613bf5565b60405185515f91829160208901919081908490613c699085906140c0565b90506002840193505f5b81811015613ced57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613cc3603c836147da565b613ccd90876145a4565b90505f613cde82603a015160f01c90565b97909701965050600101613c73565b506020850282016040525b8015613db8575f613d0d85603a015160f01c90565b9050613d1d83828d8d8d8d614155565b92505f613d2e866038015160f01c90565b905081811015613d805760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613cf8565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613dfa8286516140c0565b90505f5b613e096001836145b7565b811015613e1f57603c9390930192600101613dfe565b505f613e2c845160c01c90565b9695505050505050565b60605f80808080613e49888a018a614916565b9550955095509550955050818710613e67579450613e839350505050565b838710613e7b578295505050505050613e83565b509293505050505b9392505050565b5f8160f9811015613edd5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040525f613efb836009015160c01c90565b905061010060ff82010460200260f9018214613f595760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b509250929050565b5f54610100900460ff16613fdd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140655760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0336135c1565b60655460ff166116e05760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f6140cc835160f01c90565b9050805f03614107576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614112603c826147da565b61411d9060026145a4565b821461134c576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614164575085613e2c565b609b546001600160a01b03165f80805b8981101561424a5760ff89169150600889901c811580614192575082155b156141a1578060200288013593505b600184841c165f03614239576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa15801561420b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061422f91906145ca565b8d52506020909b019a5b506001988901989788019701614174565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156142c55760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a70565b509798975050505050505050565b5f602082840312156142e3575f80fd5b5035919050565b80356001600160a01b0381168114614300575f80fd5b919050565b5f60208284031215614315575f80fd5b613e83826142ea565b5f8083601f84011261432e575f80fd5b50813567ffffffffffffffff811115614345575f80fd5b60208301915083602082850101111561435c575f80fd5b9250929050565b5f805f60408486031215614375575f80fd5b833567ffffffffffffffff81111561438b575f80fd5b6143978682870161431e565b909790965060209590950135949350505050565b5f80602083850312156143bc575f80fd5b823567ffffffffffffffff8111156143d2575f80fd5b6143de8582860161431e565b90969095509350505050565b5f805f805f8060c087890312156143ff575f80fd5b614408876142ea565b9550614416602088016142ea565b9450614424604088016142ea565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614458575f80fd5b843567ffffffffffffffff8082111561446f575f80fd5b61447b8883890161431e565b90965094506020870135915080821115614493575f80fd5b506144a08782880161431e565b95989497509550505050565b80151581146122fe575f80fd5b5f602082840312156144c9575f80fd5b8135613e83816144ac565b5f80604083850312156144e5575f80fd5b823567ffffffffffffffff811681146144fc575f80fd5b946020939093013593505050565b5f806040838503121561451b575f80fd5b823567ffffffffffffffff80821115614532575f80fd5b9084019060e08287031215614545575f80fd5b9092506020840135908082111561455a575f80fd5b5083016060818603121561456c575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134c5761134c614577565b8181038181111561134c5761134c614577565b5f602082840312156145da575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361461157614611614577565b5060010190565b5f60208284031215614628575f80fd5b8151613e83816144ac565b5f60208284031215614643575f80fd5b813560ff81168114613e83575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614686575f80fd5b83018035915067ffffffffffffffff8211156146a0575f80fd5b60200191503681900382131561435c575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156147545784516001600160a01b03168352938301939183019160010161472f565b5050876040860152848103606086015261476f8187896146c3565b9a9950505050505050505050565b5f82515f5b8181101561479c5760208186018101518583015201614782565b505f920191825250919050565b858152846020820152608060408201525f6147c86080830185876146c3565b90508260608301529695505050505050565b808202811582820484141761134c5761134c614577565b5f82614824577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614865575f80fd5b8135602067ffffffffffffffff8083111561488257614882614829565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156148c5576148c5614829565b60405293845260208187018101949081019250878511156148e4575f80fd5b6020870191505b8482101561490b576148fc826142ea565b835291830191908301906148eb565b979650505050505050565b5f805f805f8060c0878903121561492b575f80fd5b86359550602087013567ffffffffffffffff80821115614949575f80fd5b6149558a838b01614856565b9650604089013595506060890135915080821115614971575f80fd5b61497d8a838b01614856565b94506080890135935060a0890135915080821115614999575f80fd5b506149a689828a01614856565b915050929550929550929556fea164736f6c6343000818000a diff --git a/bindings/bindings/rollup.go b/bindings/bindings/rollup.go index ac9b469dd..1f5814d07 100644 --- a/bindings/bindings/rollup.go +++ b/bindings/bindings/rollup.go @@ -49,8 +49,8 @@ type IRollupBatchSignatureInput struct { // RollupMetaData contains all meta data concerning the Rollup contract. var RollupMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", - Bin: "0x60a060405234801562000010575f80fd5b50604051620048913803806200489183398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516147336200015e5f395f81816105ce015261367001526147335ff3fe6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610987578063f2fde38b146109a6578063fb1e8b04146109c5575f80fd5b8063ddd8a3dc14610934578063de8b303514610953578063dff7827e14610972575f80fd5b8063ce5db8d6116100b7578063ce5db8d6146108ed578063d279c19114610902578063d63b354914610921575f80fd5b8063b3e0a5091461089c578063bedb86fb146108bb578063cd4edc69146108da575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610849578063b34844251461085e578063b35dac4e1461087d575f80fd5b8063a479265d146107ea578063a4f209b0146107ff578063abc8d68d1461081e575f80fd5b8063910129d41161016c578063910129d41461076c57806397fc007c1461079d578063a415d8dc146107bc575f80fd5b806388b1ea09146106865780638da5cb5b1461069f5780638f1d3776146106bc575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d14610634578063715018a614610653578063728cdbca14610667575f80fd5b80635ef7a94a1461055d5780635f77cf1d146105bd57806368589dfa14610609575f80fd5b80633e001b661161022c5780633e001b661461051257806357e0af6c146105275780635c975abb14610546575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a146104f3575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614046565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614078565b6109da565b005b348015610398575f80fd5b5061038b6103a73660046140d6565b610aac565b3480156103b7575f80fd5b506103346103c6366004614046565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd36600461411e565b610e05565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614046565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614046565b6112fa565b348015610471575f80fd5b5061035e610480366004614046565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614046565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104db906001600160a01b031681565b6040516001600160a01b039091168152602001610340565b3480156104fe575f80fd5b50609b546104db906001600160a01b031681565b34801561051d575f80fd5b5061035e60aa5481565b348015610532575f80fd5b5061038b610541366004614046565b611328565b348015610551575f80fd5b5060655460ff16610334565b348015610568575f80fd5b5061059d610577366004614046565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105c8575f80fd5b506105f07f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b348015610614575f80fd5b5061035e610623366004614046565b60ab6020525f908152604090205481565b34801561063f575f80fd5b5061038b61064e366004614078565b6113d3565b34801561065e575f80fd5b5061038b611490565b348015610672575f80fd5b5061038b61068136600461415d565b6114a3565b348015610691575f80fd5b5060a6546103349060ff1681565b3480156106aa575f80fd5b506033546001600160a01b03166104db565b3480156106c7575f80fd5b506107286106d6366004614046565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b348015610777575f80fd5b50610334610786366004614046565b5f90815260a4602052604090206003015460ff1690565b3480156107a8575f80fd5b5061038b6107b7366004614078565b6117e6565b3480156107c7575f80fd5b506103346107d6366004614078565b609f6020525f908152604090205460ff1681565b3480156107f5575f80fd5b5061035e60995481565b34801561080a575f80fd5b5061038b610819366004614046565b6118c9565b348015610829575f80fd5b5061035e610838366004614078565b60a56020525f908152604090205481565b348015610854575f80fd5b5061035e60a85481565b348015610869575f80fd5b5061038b6108783660046141b8565b611979565b348015610888575f80fd5b5061038b610897366004614078565b611bbe565b3480156108a7575f80fd5b5061038b6108b636600461411e565b611c17565b3480156108c6575f80fd5b5061038b6108d536600461422c565b611f19565b61038b6108e8366004614247565b612074565b3480156108f8575f80fd5b5061035e60985481565b34801561090d575f80fd5b5061038b61091c366004614078565b612640565b61038b61092f36600461427d565b6126ff565b34801561093f575f80fd5b506097546104db906001600160a01b031681565b34801561095e575f80fd5b5061033461096d366004614046565b613029565b34801561097d575f80fd5b5061035e609a5481565b348015610992575f80fd5b5061038b6109a1366004614046565b613073565b3480156109b1575f80fd5b5061038b6109c0366004614078565b613116565b3480156109d0575f80fd5b5061035e60a95481565b6109e26131a3565b6001600160a01b0381165f908152609f602052604090205460ff1615610a4f5760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ab46131a3565b5f8111610b035760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a46565b5f80610b0f85856131fd565b915091505f610b22836001015160c01c90565b5f81815260a160205260409020549091508214610b815760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b5f60a181610b8f8785614317565b81526020019081526020015f205414610c0f5760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a46565b609d548111610c865760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b610c9160018261432a565b609e555b8315610dfd57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610cdd81613029565b15610d38575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d28908490614317565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610db5575060a85481145b15610dbf575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610c95575b505050505050565b60a85415610e555760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b610e5d613218565b5f80610e6984846131fd565b915091505f610e7c836001015160c01c90565b5f81815260a160205260409020549091508214610edb5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b610ee4816112fa565b610f305760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b610f3981613029565b15610f865760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003015460ff1615610fe75760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a46565b5f81815260a260205260409020600101544210156110475760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a46565b605983015160a05f61105a60018561432a565b81526020019081526020015f2054146110b55760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f81815260a06020526040902054156111105760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a46565b80609d54600101146111645760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b609d819055600160a35f611179866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111c660f98401601185015160c01c600986015160c01c61326b565b60a25f6111d460018461432a565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061120d908461432a565b81526020019081526020015f205f905560a45f60018361122d919061432a565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d6112d6866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061132257505f82815260a1602052604090205415155b92915050565b6113306131a3565b5f8111801561134157506099548114155b61138d5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a46565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b6113db6131a3565b6001600160a01b0381165f908152609f602052604090205460ff166114425760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a46565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610aa1565b6114986131a3565b6114a15f613334565b565b5f54610100900460ff16158080156114c157505f54600160ff909116105b806114da5750303b1580156114da57505f5460ff166001145b61154c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a46565b5f805460ff19166001179055801561158a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806115a757506001600160a01b038516155b156115de576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166116345760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a46565b61163c61339d565b611644613421565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156117dd575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6117ee6131a3565b6001600160a01b038116158015906118145750609c546001600160a01b03828116911614155b6118605760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a46565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6118d16131a3565b5f811180156118e1575060648111155b80156118ef575060a9548114155b61193b5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a46565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113c7565b60a854156119c95760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b6119d1613218565b5f806119dd86866131fd565b915091505f6119f0836001015160c01c90565b5f81815260a160205260409020549091508214611a4f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b611a5881613029565b611aa45760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a46565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611afd91614317565b11611b73575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611b6e918391906134a5565b6117dd565b611b7e838686613601565b6117dd81336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506137b4565b611bc66131a3565b60aa80545f909155611bd88282613880565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113c7565b611c1f6131a3565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611c965760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a46565b5f80611ca284846131fd565b915091505f611cb5836001015160c01c90565b90505f611cc3846079015190565b905080611d125760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a46565b600984015160c01c15611d675760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a46565b5f611d73856019015190565b03611dc05760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a46565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014611dec856039015190565b14611e395760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a46565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b611f216131a3565b801561204257611f2f61392b565b60a65460ff16156120015760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091611f83908490614317565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b61204a613985565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612024565b50565b335f908152609f602052604090205460ff166120d25760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a46565b60a854156121225760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b61212a613218565b60a65460ff161561217d5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a46565b8167ffffffffffffffff16609d54106121d85760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a16020526040902054811461223f5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a46565b6122528267ffffffffffffffff166112fa565b61229e5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156123195760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a46565b67ffffffffffffffff82165f90815260a2602052604090206001015442106123a95760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a46565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241d919061433d565b34101561246c5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a46565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516125be91815260200190565b60405180910390a35f609d5460016125d69190614317565b90505b609e54811161262e578267ffffffffffffffff16811461261c576099545f82815260a2602052604081206001018054909190612616908490614317565b90915550505b8061262681614354565b9150506125d9565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361269f5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a46565b335f90815260a560205260408120556126b88282613880565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516126f391815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561276b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061278f919061438b565b6127db5760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a46565b60a8541561282b5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a46565b612833613218565b61284060208301836143a6565b60ff16156128905760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a46565b5f61289e60408401846143c6565b915050806128ee5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a46565b608083013561293f5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a46565b60a08301356129905760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a46565b5f806129a76129a260208701876143c6565b6131fd565b915091505f6129ba836001015160c01c90565b90505f60a1816129cb846001614317565b81526020019081526020015f205414612a265760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a46565b609e548114612a775760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a46565b5f81815260a160205260409020548214612ad35760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a46565b5f81815260ab6020526040902054608087013514612b335760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a46565b5f612b42846011015160c01c90565b90505f8080612ba1612b5760408c018c6143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612b9c905060608f018f6143c6565b6139be565b948501949384019392509050612bba60608b018b6143c6565b905061010060ff85010460200214612c145760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b600194909401935f804915612c2a575f49612c4c565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612c5c60608d018d6143c6565b612c68915060f9614317565b90506040519850602081028901604052612c96898d5f016020810190612c8e91906143a6565b60ff16613b3f565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612d0389612ce460208e018e6143c6565b604051612cf2929190614427565b604051809103902060b99190910152565b60d98901889052612d2089612d1b60608f018f6143c6565b613b46565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff1615612d865760a7545f90815260a460205260409020600201546099544291612d7991614317565b612d83919061432a565b90505b60405180608001604052804281526020018260985442612da69190614317565b612db09190614317565b8152602001612e018f8060400190612dc891906143c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613b5292505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015612e75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e99919061433d565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590612f0190612efb908f018f6143c6565b5f613ba9565b5f8e8060400190612f1291906143c6565b6040518663ffffffff1660e01b8152600401612f3295949392919061447d565b602060405180830381865afa158015612f4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f71919061438b565b612fe35760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a46565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b0316158015906113225750505f90815260a46020526040902060030154610100900460ff161590565b61307b6131a3565b5f8111801561308c57506098548114155b6130d85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a46565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113c7565b61311e6131a3565b6001600160a01b03811661319a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a46565b61207181613334565b6033546001600160a01b031633146114a15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a46565b5f805f61320a8585613bfd565b812090969095509350505050565b60655460ff16156114a15760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a46565b805f0361327757505050565b8082035f805b83811015610dfd5761010081850381111561329757508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b15801561330a575f80fd5b505af115801561331c573d5f803e3d5ffd5b5050505061010084019350506101008101905061327d565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166134195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613cd4565b5f54610100900460ff1661349d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a1613d5c565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613529573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061354d919061433d565b5f86815260a4602052604090206001015490915061356c908290614317565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906135ab908490614317565b90915550506040516135be9084906144f0565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8061364e5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a46565b5f61365d846001015160c01c90565b90505f61366b856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061369a876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a84861375c885160f81c90565b858888866040518663ffffffff1660e01b815260040161378095949392919061451c565b5f6040518083038186803b158015613796575f80fd5b505afa1580156137a8573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906137d8908461454d565b6137e29190614564565b90506137ee818361432a565b60aa5f8282546137fe9190614317565b90915550506001600160a01b0384165f90815260a560205260408120805483929061382a908490614317565b909155505060405161383d9084906144f0565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613927575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146138cf576040519150601f19603f3d011682016040523d82523d5f602084013e6138d4565b606091505b50509050806139255760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a46565b505b5050565b613933613218565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586139683390565b6040516001600160a01b03909116815260200160405180910390a1565b61398d613de1565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613968565b60405185515f918291602089019190819084906139dc908590613e33565b90506002840193505f5b81811015613a6057603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613a36603c8361454d565b613a409087614317565b90505f613a5182603a015160f01c90565b979097019650506001016139e6565b506020850282016040525b8015613b2b575f613a8085603a015160f01c90565b9050613a9083828d8d8d8d613ec8565b92505f613aa1866038015160f01c90565b905081811015613af35760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a46565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613a6b565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613b6d828651613e33565b90505f5b613b7c60018361432a565b811015613b9257603c9390930192600101613b71565b505f613b9f845160c01c90565b9695505050505050565b60605f80808080613bbc888a018a614689565b9550955095509550955050818710613bda579450613bf69350505050565b838710613bee578295505050505050613bf6565b509293505050505b9392505050565b5f8160f9811015613c505760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a46565b6040519150808483378082016040525f613c6e836009015160c01c90565b905061010060ff82010460200260f9018214613ccc5760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a46565b509250929050565b5f54610100900460ff16613d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6065805460ff19169055565b5f54610100900460ff16613dd85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a46565b6114a133613334565b60655460ff166114a15760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a46565b5f613e3f835160f01c90565b9050805f03613e7a576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e85603c8261454d565b613e90906002614317565b8214611322576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03613ed7575085613b9f565b609b546001600160a01b03165f80805b89811015613fbd5760ff89169150600889901c811580613f05575082155b15613f14578060200288013593505b600184841c165f03613fac576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa158015613f7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fa2919061433d565b8d52506020909b019a5b506001988901989788019701613ee7565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156140385760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a46565b509798975050505050505050565b5f60208284031215614056575f80fd5b5035919050565b80356001600160a01b0381168114614073575f80fd5b919050565b5f60208284031215614088575f80fd5b613bf68261405d565b5f8083601f8401126140a1575f80fd5b50813567ffffffffffffffff8111156140b8575f80fd5b6020830191508360208285010111156140cf575f80fd5b9250929050565b5f805f604084860312156140e8575f80fd5b833567ffffffffffffffff8111156140fe575f80fd5b61410a86828701614091565b909790965060209590950135949350505050565b5f806020838503121561412f575f80fd5b823567ffffffffffffffff811115614145575f80fd5b61415185828601614091565b90969095509350505050565b5f805f805f8060c08789031215614172575f80fd5b61417b8761405d565b95506141896020880161405d565b94506141976040880161405d565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156141cb575f80fd5b843567ffffffffffffffff808211156141e2575f80fd5b6141ee88838901614091565b90965094506020870135915080821115614206575f80fd5b5061421387828801614091565b95989497509550505050565b8015158114612071575f80fd5b5f6020828403121561423c575f80fd5b8135613bf68161421f565b5f8060408385031215614258575f80fd5b823567ffffffffffffffff8116811461426f575f80fd5b946020939093013593505050565b5f806040838503121561428e575f80fd5b823567ffffffffffffffff808211156142a5575f80fd5b9084019060e082870312156142b8575f80fd5b909250602084013590808211156142cd575f80fd5b508301606081860312156142df575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115611322576113226142ea565b81810381811115611322576113226142ea565b5f6020828403121561434d575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614384576143846142ea565b5060010190565b5f6020828403121561439b575f80fd5b8151613bf68161421f565b5f602082840312156143b6575f80fd5b813560ff81168114613bf6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126143f9575f80fd5b83018035915067ffffffffffffffff821115614413575f80fd5b6020019150368190038213156140cf575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156144c75784516001600160a01b0316835293830193918301916001016144a2565b505087604086015284810360608601526144e2818789614436565b9a9950505050505050505050565b5f82515f5b8181101561450f57602081860181015185830152016144f5565b505f920191825250919050565b858152846020820152608060408201525f61453b608083018587614436565b90508260608301529695505050505050565b8082028115828204841417611322576113226142ea565b5f82614597577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145d8575f80fd5b8135602067ffffffffffffffff808311156145f5576145f561459c565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156146385761463861459c565b6040529384526020818701810194908101925087851115614657575f80fd5b6020870191505b8482101561467e5761466f8261405d565b8352918301919083019061465e565b979650505050505050565b5f805f805f8060c0878903121561469e575f80fd5b86359550602087013567ffffffffffffffff808211156146bc575f80fd5b6146c88a838b016145c9565b96506040890135955060608901359150808211156146e4575f80fd5b6146f08a838b016145c9565b94506080890135935060a089013591508082111561470c575f80fd5b5061471989828a016145c9565b915050929550929550929556fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_prevStateRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", + Bin: "0x60a060405234801562000010575f80fd5b5060405162004b1e38038062004b1e83398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516149c06200015e5f395f81816105d901526138fd01526149c05ff3fe608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610917578063d279c1911461092c578063d63b35491461094b575f80fd5b8063b3e0a509146108c6578063bedb86fb146108e5578063cd4edc6914610904575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610873578063b348442514610888578063b35dac4e146108a7575f80fd5b8063a479265d14610814578063a4f209b014610829578063abc8d68d14610848575f80fd5b8063910129d41161016c578063910129d41461079657806397fc007c146107c7578063a415d8dc146107e6575f80fd5b806388b1ea09146106b05780638da5cb5b146106c95780638f1d3776146106e6575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d1461065e578063715018a61461067d578063728cdbca14610691575f80fd5b80635f77cf1d146105c8578063612672901461061457806368589dfa14610633575f80fd5b806357e0af6c1161022c57806357e0af6c146105325780635c975abb146105515780635ef7a94a14610568575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046142d3565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614305565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614363565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046142d3565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046143ab565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046142d3565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046142d3565b611324565b34801561047c575f80fd5b5061036961048b3660046142d3565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046142d3565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b34801561053d575f80fd5b5061039661054c3660046142d3565b611352565b34801561055c575f80fd5b5060655460ff1661033f565b348015610573575f80fd5b506105a86105823660046142d3565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105d3575f80fd5b506105fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b34801561061f575f80fd5b5061039661062e3660046142d3565b6113fd565b34801561063e575f80fd5b5061036961064d3660046142d3565b60ab6020525f908152604090205481565b348015610669575f80fd5b50610396610678366004614305565b611612565b348015610688575f80fd5b506103966116cf565b34801561069c575f80fd5b506103966106ab3660046143ea565b6116e2565b3480156106bb575f80fd5b5060a65461033f9060ff1681565b3480156106d4575f80fd5b506033546001600160a01b03166104e6565b3480156106f1575f80fd5b506107526107003660046142d3565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107a1575f80fd5b5061033f6107b03660046142d3565b5f90815260a4602052604090206003015460ff1690565b3480156107d2575f80fd5b506103966107e1366004614305565b611a25565b3480156107f1575f80fd5b5061033f610800366004614305565b609f6020525f908152604090205460ff1681565b34801561081f575f80fd5b5061036960995481565b348015610834575f80fd5b506103966108433660046142d3565b611b08565b348015610853575f80fd5b50610369610862366004614305565b60a56020525f908152604090205481565b34801561087e575f80fd5b5061036960a85481565b348015610893575f80fd5b506103966108a2366004614445565b611bb8565b3480156108b2575f80fd5b506103966108c1366004614305565b611dfd565b3480156108d1575f80fd5b506103966108e03660046143ab565b611e56565b3480156108f0575f80fd5b506103966108ff3660046144b9565b6121a6565b6103966109123660046144d4565b612301565b348015610922575f80fd5b5061036960985481565b348015610937575f80fd5b50610396610946366004614305565b6128cd565b61039661095936600461450a565b61298c565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046142d3565b6132b6565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046142d3565b613300565b3480156109db575f80fd5b506103966109ea366004614305565b6133a3565b3480156109fa575f80fd5b5061036960a95481565b610a0c613430565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade613430565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b39858561348a565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856145a4565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826145b7565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d07816132b6565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906145a4565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e876134a5565b5f80610e93848461348a565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611324565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f63816132b6565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856145b7565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f060f98401601185015160c01c600986015160c01c6134f8565b60a25f6111fe6001846145b7565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123790846145b7565b81526020019081526020015f205f905560a45f60018361125791906145b7565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611300866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134c57505f82815260a1602052604090205415155b92915050565b61135a613430565b5f8111801561136b57506099548114155b6113b75760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561141d57505f5460ff8083169116105b61148f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ca5f5460ff1690565b60ff1660021461151c5760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b8161158f5760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab60205260409020546115b857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020016113f1565b61161a613430565b6001600160a01b0381165f908152609f602052604090205460ff166116815760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b6116d7613430565b6116e05f6135c1565b565b5f54610100900460ff161580801561170057505f54600160ff909116105b806117195750303b15801561171957505f5460ff166001145b61178b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff1916600117905580156117c9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806117e657506001600160a01b038516155b1561181d576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166118735760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b61187b61362a565b6118836136ae565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611a1c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611a2d613430565b6001600160a01b03811615801590611a535750609c546001600160a01b03828116911614155b611a9f5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611b10613430565b5f81118015611b20575060648111155b8015611b2e575060a9548114155b611b7a5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113f1565b60a85415611c085760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611c106134a5565b5f80611c1c868661348a565b915091505f611c2f836001015160c01c90565b5f81815260a160205260409020549091508214611c8e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b611c97816132b6565b611ce35760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611d3c916145a4565b11611db2575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611dad91839190613732565b611a1c565b611dbd83868661388e565b611a1c81336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613a41565b611e05613430565b60aa80545f909155611e178282613b0d565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113f1565b611e5e613430565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611ed55760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f80611ee1848461348a565b915091505f611ef4836001015160c01c90565b90508015611f445760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f611f50846079015190565b905080611f9f5760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c15611ff45760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612000856019015190565b0361204d5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612079856039015190565b146120c65760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6121ae613430565b80156122cf576121bc613bb8565b60a65460ff161561228e5760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a590925282208054919290916122109084906145a4565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b6122d7613c12565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336122b1565b50565b335f908152609f602052604090205460ff1661235f5760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a854156123af5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b6123b76134a5565b60a65460ff161561240a5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d54106124655760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a1602052604090205481146124cc5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6124df8267ffffffffffffffff16611324565b61252b5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156125a65760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a2602052604090206001015442106126365760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612686573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126aa91906145ca565b3410156126f95760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161284b91815260200190565b60405180910390a35f609d54600161286391906145a4565b90505b609e5481116128bb578267ffffffffffffffff1681146128a9576099545f82815260a26020526040812060010180549091906128a39084906145a4565b90915550505b806128b3816145e1565b915050612866565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361292c5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556129458282613b0d565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161298091815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156129f8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a1c9190614618565b612a685760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a85415612ab85760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612ac06134a5565b612acd6020830183614633565b60ff1615612b1d5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f612b2b6040840184614653565b91505080612b7b5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b6080830135612bcc5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a0830135612c1d5760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f80612c34612c2f6020870187614653565b61348a565b915091505f612c47836001015160c01c90565b90505f60a181612c588460016145a4565b81526020019081526020015f205414612cb35760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e548114612d045760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a160205260409020548214612d605760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab6020526040902054608087013514612dc05760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f612dcf846011015160c01c90565b90505f8080612e2e612de460408c018c614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612e29905060608f018f614653565b613c4b565b948501949384019392509050612e4760608b018b614653565b905061010060ff85010460200214612ea15760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b600194909401935f804915612eb7575f49612ed9565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612ee960608d018d614653565b612ef5915060f96145a4565b90506040519850602081028901604052612f23898d5f016020810190612f1b9190614633565b60ff16613dcc565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612f9089612f7160208e018e614653565b604051612f7f9291906146b4565b604051809103902060b99190910152565b60d98901889052612fad89612fa860608f018f614653565b613dd3565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156130135760a7545f90815260a460205260409020600201546099544291613006916145a4565b61301091906145b7565b90505b6040518060800160405280428152602001826098544261303391906145a4565b61303d91906145a4565b815260200161308e8f80604001906130559190614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613ddf92505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015613102573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061312691906145ca565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c359061318e90613188908f018f614653565b5f613e36565b5f8e806040019061319f9190614653565b6040518663ffffffff1660e01b81526004016131bf95949392919061470a565b602060405180830381865afa1580156131da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131fe9190614618565b6132705760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134c5750505f90815260a46020526040902060030154610100900460ff161590565b613308613430565b5f8111801561331957506098548114155b6133655760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113f1565b6133ab613430565b6001600160a01b0381166134275760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b6122fe816135c1565b6033546001600160a01b031633146116e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134978585613e8a565b812090969095509350505050565b60655460ff16156116e05760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361350457505050565b8082035f805b83811015610e275761010081850381111561352457508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b158015613597575f80fd5b505af11580156135a9573d5f803e3d5ffd5b5050505061010084019350506101008101905061350a565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166136a65760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f61565b5f54610100900460ff1661372a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613fe9565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af11580156137b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137da91906145ca565b5f86815260a460205260409020600101549091506137f99082906145a4565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906138389084906145a4565b909155505060405161384b90849061477d565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b806138db5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f6138ea846001015160c01c90565b90505f6138f8856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613927876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a8486139e9885160f81c90565b858888866040518663ffffffff1660e01b8152600401613a0d9594939291906147a9565b5f6040518083038186803b158015613a23575f80fd5b505afa158015613a35573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613a6590846147da565b613a6f91906147f1565b9050613a7b81836145b7565b60aa5f828254613a8b91906145a4565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613ab79084906145a4565b9091555050604051613aca90849061477d565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613bb4575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613b5c576040519150601f19603f3d011682016040523d82523d5f602084013e613b61565b606091505b5050905080613bb25760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613bc06134a5565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613bf53390565b6040516001600160a01b03909116815260200160405180910390a1565b613c1a61406e565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613bf5565b60405185515f91829160208901919081908490613c699085906140c0565b90506002840193505f5b81811015613ced57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613cc3603c836147da565b613ccd90876145a4565b90505f613cde82603a015160f01c90565b97909701965050600101613c73565b506020850282016040525b8015613db8575f613d0d85603a015160f01c90565b9050613d1d83828d8d8d8d614155565b92505f613d2e866038015160f01c90565b905081811015613d805760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613cf8565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613dfa8286516140c0565b90505f5b613e096001836145b7565b811015613e1f57603c9390930192600101613dfe565b505f613e2c845160c01c90565b9695505050505050565b60605f80808080613e49888a018a614916565b9550955095509550955050818710613e67579450613e839350505050565b838710613e7b578295505050505050613e83565b509293505050505b9392505050565b5f8160f9811015613edd5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040525f613efb836009015160c01c90565b905061010060ff82010460200260f9018214613f595760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b509250929050565b5f54610100900460ff16613fdd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140655760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0336135c1565b60655460ff166116e05760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f6140cc835160f01c90565b9050805f03614107576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614112603c826147da565b61411d9060026145a4565b821461134c576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614164575085613e2c565b609b546001600160a01b03165f80805b8981101561424a5760ff89169150600889901c811580614192575082155b156141a1578060200288013593505b600184841c165f03614239576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa15801561420b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061422f91906145ca565b8d52506020909b019a5b506001988901989788019701614174565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156142c55760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a70565b509798975050505050505050565b5f602082840312156142e3575f80fd5b5035919050565b80356001600160a01b0381168114614300575f80fd5b919050565b5f60208284031215614315575f80fd5b613e83826142ea565b5f8083601f84011261432e575f80fd5b50813567ffffffffffffffff811115614345575f80fd5b60208301915083602082850101111561435c575f80fd5b9250929050565b5f805f60408486031215614375575f80fd5b833567ffffffffffffffff81111561438b575f80fd5b6143978682870161431e565b909790965060209590950135949350505050565b5f80602083850312156143bc575f80fd5b823567ffffffffffffffff8111156143d2575f80fd5b6143de8582860161431e565b90969095509350505050565b5f805f805f8060c087890312156143ff575f80fd5b614408876142ea565b9550614416602088016142ea565b9450614424604088016142ea565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614458575f80fd5b843567ffffffffffffffff8082111561446f575f80fd5b61447b8883890161431e565b90965094506020870135915080821115614493575f80fd5b506144a08782880161431e565b95989497509550505050565b80151581146122fe575f80fd5b5f602082840312156144c9575f80fd5b8135613e83816144ac565b5f80604083850312156144e5575f80fd5b823567ffffffffffffffff811681146144fc575f80fd5b946020939093013593505050565b5f806040838503121561451b575f80fd5b823567ffffffffffffffff80821115614532575f80fd5b9084019060e08287031215614545575f80fd5b9092506020840135908082111561455a575f80fd5b5083016060818603121561456c575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134c5761134c614577565b8181038181111561134c5761134c614577565b5f602082840312156145da575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361461157614611614577565b5060010190565b5f60208284031215614628575f80fd5b8151613e83816144ac565b5f60208284031215614643575f80fd5b813560ff81168114613e83575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614686575f80fd5b83018035915067ffffffffffffffff8211156146a0575f80fd5b60200191503681900382131561435c575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156147545784516001600160a01b03168352938301939183019160010161472f565b5050876040860152848103606086015261476f8187896146c3565b9a9950505050505050505050565b5f82515f5b8181101561479c5760208186018101518583015201614782565b505f920191825250919050565b858152846020820152608060408201525f6147c86080830185876146c3565b90508260608301529695505050505050565b808202811582820484141761134c5761134c614577565b5f82614824577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614865575f80fd5b8135602067ffffffffffffffff8083111561488257614882614829565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156148c5576148c5614829565b60405293845260208187018101949081019250878511156148e4575f80fd5b6020870191505b8482101561490b576148fc826142ea565b835291830191908301906148eb565b979650505050505050565b5f805f805f8060c0878903121561492b575f80fd5b86359550602087013567ffffffffffffffff80821115614949575f80fd5b6149558a838b01614856565b9650604089013595506060890135915080821115614971575f80fd5b61497d8a838b01614856565b94506080890135935060a0890135915080821115614999575f80fd5b506149a689828a01614856565b915050929550929550929556fea164736f6c6343000818000a", } // RollupABI is the input ABI used to generate the binding from. @@ -1345,6 +1345,27 @@ func (_Rollup *RollupTransactorSession) Initialize(_l1StakingContract common.Add return _Rollup.Contract.Initialize(&_Rollup.TransactOpts, _l1StakingContract, _messageQueue, _verifier, _finalizationPeriodSeconds, _proofWindow, _proofRewardPercent) } +// Initialize2 is a paid mutator transaction binding the contract method 0x61267290. +// +// Solidity: function initialize2(bytes32 _prevStateRoot) returns() +func (_Rollup *RollupTransactor) Initialize2(opts *bind.TransactOpts, _prevStateRoot [32]byte) (*types.Transaction, error) { + return _Rollup.contract.Transact(opts, "initialize2", _prevStateRoot) +} + +// Initialize2 is a paid mutator transaction binding the contract method 0x61267290. +// +// Solidity: function initialize2(bytes32 _prevStateRoot) returns() +func (_Rollup *RollupSession) Initialize2(_prevStateRoot [32]byte) (*types.Transaction, error) { + return _Rollup.Contract.Initialize2(&_Rollup.TransactOpts, _prevStateRoot) +} + +// Initialize2 is a paid mutator transaction binding the contract method 0x61267290. +// +// Solidity: function initialize2(bytes32 _prevStateRoot) returns() +func (_Rollup *RollupTransactorSession) Initialize2(_prevStateRoot [32]byte) (*types.Transaction, error) { + return _Rollup.Contract.Initialize2(&_Rollup.TransactOpts, _prevStateRoot) +} + // ProveState is a paid mutator transaction binding the contract method 0xb3484425. // // Solidity: function proveState(bytes _batchHeader, bytes _batchProof) returns() diff --git a/bindings/bindings/rollup_more.go b/bindings/bindings/rollup_more.go index 96e82c601..1003e5872 100644 --- a/bindings/bindings/rollup_more.go +++ b/bindings/bindings/rollup_more.go @@ -13,7 +13,7 @@ const RollupStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"co var RollupStorageLayout = new(solc.StorageLayout) -var RollupDeployedBin = "0x6080604052600436106102fb575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109e2578063f2fde38b14610a01578063fb1e8b0414610a20575f80fd5b8063ddd8a3dc14610982578063de8b3035146109ae578063dff7827e146109cd575f80fd5b8063ce5db8d6116100b7578063ce5db8d61461093b578063d279c19114610950578063d63b35491461096f575f80fd5b8063b3e0a509146108ea578063bedb86fb14610909578063cd4edc6914610928575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610897578063b3484425146108ac578063b35dac4e146108cb575f80fd5b8063a479265d14610838578063a4f209b01461084d578063abc8d68d1461086c575f80fd5b8063910129d41161016c578063910129d4146107ba57806397fc007c146107eb578063a415d8dc1461080a575f80fd5b806388b1ea09146106ad5780638da5cb5b146106c65780638f1d3776146106f0575f80fd5b80632571098d116102515780635ef7a94a116101fc5780636c578c1d116101d75780636c578c1d1461065b578063715018a61461067a578063728cdbca1461068e575f80fd5b80635ef7a94a146105845780635f77cf1d146105e457806368589dfa14610630575f80fd5b80633e001b661161022c5780633e001b661461053957806357e0af6c1461054e5780635c975abb1461056d575f80fd5b80632571098d146104915780632b7ac3f3146104bc5780633b70c18a1461050d575f80fd5b8063121dcd50116102b157806318af3b2b1161028c57806318af3b2b1461041757806321e2f9e0146104475780632362f03e14610466575f80fd5b8063121dcd50146103ce57806313361101146103e357806318463fb014610402575f80fd5b80630ceb6780116102e15780630ceb67801461036c57806310d445831461038d578063116a1f42146103ac575f80fd5b806304d7721514610306578063059def6114610349575f80fd5b3661030257005b5f80fd5b348015610311575f80fd5b50610334610320366004614ab8565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610354575f80fd5b5061035e609d5481565b604051908152602001610340565b348015610377575f80fd5b5061038b610386366004614af7565b610a35565b005b348015610398575f80fd5b5061038b6103a7366004614b55565b610b59565b3480156103b7575f80fd5b506103346103c6366004614ab8565b609d54101590565b3480156103d9575f80fd5b5061035e609e5481565b3480156103ee575f80fd5b5061038b6103fd366004614b9d565b610f45565b34801561040d575f80fd5b5061035e60a75481565b348015610422575f80fd5b50610334610431366004614ab8565b5f90815260a26020526040902060010154421090565b348015610452575f80fd5b50610334610461366004614ab8565b611542565b348015610471575f80fd5b5061035e610480366004614ab8565b60a16020525f908152604090205481565b34801561049c575f80fd5b5061035e6104ab366004614ab8565b60a06020525f908152604090205481565b3480156104c7575f80fd5b50609c546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610340565b348015610518575f80fd5b50609b546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b348015610544575f80fd5b5061035e60aa5481565b348015610559575f80fd5b5061038b610568366004614ab8565b611570565b348015610578575f80fd5b5060655460ff16610334565b34801561058f575f80fd5b506105c461059e366004614ab8565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610340565b3480156105ef575f80fd5b506106177f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff9091168152602001610340565b34801561063b575f80fd5b5061035e61064a366004614ab8565b60ab6020525f908152604090205481565b348015610666575f80fd5b5061038b610675366004614af7565b611635565b348015610685575f80fd5b5061038b611744565b348015610699575f80fd5b5061038b6106a8366004614bdc565b611757565b3480156106b8575f80fd5b5060a6546103349060ff1681565b3480156106d1575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104e8565b3480156106fb575f80fd5b5061076961070a366004614ab8565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c001610340565b3480156107c5575f80fd5b506103346107d4366004614ab8565b5f90815260a4602052604090206003015460ff1690565b3480156107f6575f80fd5b5061038b610805366004614af7565b611b20565b348015610815575f80fd5b50610334610824366004614af7565b609f6020525f908152604090205460ff1681565b348015610843575f80fd5b5061035e60995481565b348015610858575f80fd5b5061038b610867366004614ab8565b611c44565b348015610877575f80fd5b5061035e610886366004614af7565b60a56020525f908152604090205481565b3480156108a2575f80fd5b5061035e60a85481565b3480156108b7575f80fd5b5061038b6108c6366004614c37565b611d0e565b3480156108d6575f80fd5b5061038b6108e5366004614af7565b611fdd565b3480156108f5575f80fd5b5061038b610904366004614b9d565b612043565b348015610914575f80fd5b5061038b610923366004614cab565b6123c7565b61038b610936366004614cc6565b61255a565b348015610946575f80fd5b5061035e60985481565b34801561095b575f80fd5b5061038b61096a366004614af7565b612c6f565b61038b61097d366004614cfc565b612d55565b34801561098d575f80fd5b506097546104e89073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109b9575f80fd5b506103346109c8366004614ab8565b6137f8565b3480156109d8575f80fd5b5061035e609a5481565b3480156109ed575f80fd5b5061038b6109fc366004614ab8565b61384f565b348015610a0c575f80fd5b5061038b610a1b366004614af7565b61390c565b348015610a2b575f80fd5b5061035e60a95481565b610a3d6139c0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b616139c0565b5f8111610bca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610ac8565b5f80610bd68585613a41565b915091505f610be9836001015160c01c90565b5f81815260a160205260409020549091508214610c62576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b5f60a181610c708785614d96565b81526020019081526020015f205414610d0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b609d548111610d9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b610da6600182614da9565b609e555b8315610f3d57604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610df2816137f8565b15610e78575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e4a908490614d96565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ef5575060a85481145b15610eff575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610daa575b505050505050565b60a85415610faf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b610fb7613a5c565b5f80610fc38484613a41565b915091505f610fd6836001015160c01c90565b5f81815260a16020526040902054909150821461104f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b61105881611542565b6110be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610ac8565b6110c7816137f8565b1561112e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610ac8565b5f81815260a4602052604090206003015460ff16156111a9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610ac8565b5f81815260a26020526040902060010154421015611223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610ac8565b605983015160a05f611236600185614da9565b81526020019081526020015f2054146112ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610ac8565b5f81815260a0602052604090205415611320576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610ac8565b80609d546001011461138e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610ac8565b609d819055600160a35f6113a3866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561140e60f98401601185015160c01c600986015160c01c613ac9565b60a25f61141c600184614da9565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906114559084614da9565b81526020019081526020015f205f905560a45f6001836114759190614da9565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d61151e866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061156a57505f82815260a1602052604090205415155b92915050565b6115786139c0565b5f8111801561158957506099548114155b6115ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610ac8565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b61163d6139c0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff166116cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610ac8565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b4e565b61174c6139c0565b6117555f613b9f565b565b5f54610100900460ff161580801561177557505f54600160ff909116105b8061178e5750303b15801561178e57505f5460ff166001145b61181a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610ac8565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611876575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff861615806118ad575073ffffffffffffffffffffffffffffffffffffffff8516155b156118e4576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8716611961576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610ac8565b611969613c15565b611971613cb3565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611b17575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611b286139c0565b73ffffffffffffffffffffffffffffffffffffffff811615801590611b685750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b611bce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610ac8565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611c4c6139c0565b5f81118015611c5c575060648111155b8015611c6a575060a9548114155b611cd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610ac8565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611629565b60a85415611d78576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b611d80613a5c565b5f80611d8c8686613a41565b915091505f611d9f836001015160c01c90565b5f81815260a160205260409020549091508214611e18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b611e21816137f8565b611e87576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610ac8565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556099546002909101544291611efe91614d96565b11611f92575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611f8d91839190613d51565b611b17565b611f9d838686613ed4565b611b1781336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506140ae565b611fe56139c0565b60aa80545f909155611ff78282614194565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611629565b61204b6139c0565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea54156120dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610ac8565b5f806120e88484613a41565b915091505f6120fb836001015160c01c90565b90505f612109846079015190565b905080612172576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610ac8565b600984015160c01c156121e1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610ac8565b5f6121ed856019015190565b03612254576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610ac8565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612280856039015190565b146122e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610ac8565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6123cf6139c0565b8015612528576123dd614266565b60a65460ff16156124da5760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a5909252822080549192909161243e908490614d96565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6125306142eb565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336124fd565b50565b335f908152609f602052604090205460ff166125d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610ac8565b60a8541561263c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b612644613a5c565b60a65460ff16156126b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610ac8565b8167ffffffffffffffff16609d5410612726576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a1602052604090205481146127a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610ac8565b6127ba8267ffffffffffffffff16611542565b612820576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16156128c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610ac8565b67ffffffffffffffff82165f90815260a26020526040902060010154421061296c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610ac8565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129fa9190614dbc565b341015612a63576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610ac8565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b997634604051612bcf91815260200190565b60405180910390a35f609d546001612be79190614d96565b90505b609e548111612c3f578267ffffffffffffffff168114612c2d576099545f82815260a2602052604081206001018054909190612c27908490614d96565b90915550505b80612c3781614dd3565b915050612bea565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003612ce8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610ac8565b335f90815260a56020526040812055612d018282614194565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051612d4991815260200190565b60405180910390a25050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015612ddb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612dff9190614e0a565b612e65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610ac8565b60a85415612ecf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610ac8565b612ed7613a5c565b612ee46020830183614e25565b60ff1615612f4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610ac8565b5f612f5c6040840184614e45565b91505080612fc6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610ac8565b6080830135613031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610ac8565b60a083013561309c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610ac8565b5f806130b36130ae6020870187614e45565b613a41565b915091505f6130c6836001015160c01c90565b90505f60a1816130d7846001614d96565b81526020019081526020015f20541461314c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610ac8565b609e5481146131b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610ac8565b5f81815260a16020526040902054821461322d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610ac8565b5f81815260ab60205260409020546080870135146132a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610ac8565b5f6132b6846011015160c01c90565b90505f80806133156132cb60408c018c614e45565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613310905060608f018f614e45565b614342565b94850194938401939250905061332e60608b018b614e45565b905061010060ff850104602002146133a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610ac8565b600194909401935f8049156133b8575f496133da565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f6133ea60608d018d614e45565b6133f6915060f9614d96565b90506040519850602081028901604052613424898d5f01602081019061341c9190614e25565b60ff166144dd565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a01526134918961347260208e018e614e45565b604051613480929190614ea6565b604051809103902060b99190910152565b60d989018890526134ae896134a960608f018f614e45565b6144e4565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156135145760a7545f90815260a46020526040902060020154609954429161350791614d96565b6135119190614da9565b90505b604051806080016040528042815260200182609854426135349190614d96565b61353e9190614d96565b815260200161358f8f80604001906135569190614e45565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506144f092505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa15801561361d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136419190614dbc565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c35906136b6906136b0908f018f614e45565b5f614547565b5f8e80604001906136c79190614e45565b6040518663ffffffff1660e01b81526004016136e7959493929190614efc565b602060405180830381865afa158015613702573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137269190614e0a565b6137b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610ac8565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff161580159061156a5750505f90815260a46020526040902060030154610100900460ff161590565b6138576139c0565b5f8111801561386857506098548114155b6138ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610ac8565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611629565b6139146139c0565b73ffffffffffffffffffffffffffffffffffffffff81166139b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610ac8565b61255781613b9f565b60335473ffffffffffffffffffffffffffffffffffffffff163314611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ac8565b5f805f613a4e858561459b565b812090969095509350505050565b60655460ff1615611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610ac8565b805f03613ad557505050565b8082035f805b83811015610f3d57610100818503811115613af557508084035b8651609b546040517f55f613ce00000000000000000000000000000000000000000000000000000000815260048101879052602481018490526044810183905260209099019891945073ffffffffffffffffffffffffffffffffffffffff16906355f613ce906064015f604051808303815f87803b158015613b75575f80fd5b505af1158015613b87573d5f803e3d5ffd5b50505050610100840193505061010081019050613adb565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613cab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b6117556146a6565b5f54610100900460ff16613d49576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b611755614766565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af1158015613de2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e069190614dbc565b5f86815260a46020526040902060010154909150613e25908290614d96565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a590915281208054909190613e71908490614d96565b9091555050604051613e84908490614f7c565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613f3b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610ac8565b5f613f4a846001015160c01c90565b90505f613f58856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613f87876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a848614056885160f81c90565b858888866040518663ffffffff1660e01b815260040161407a959493929190614fa8565b5f6040518083038186803b158015614090575f80fd5b505afa1580156140a2573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906140d29084614fd9565b6140dc9190614ff0565b90506140e88183614da9565b60aa5f8282546140f89190614d96565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a5602052604081208054839290614131908490614d96565b9091555050604051614144908490614f7c565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015614262575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f81146141f0576040519150601f19603f3d011682016040523d82523d5f602084013e6141f5565b606091505b5050905080614260576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610ac8565b505b5050565b61426e613a5c565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586142c13390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6142f3614805565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336142c1565b60405185515f91829160208901919081908490614360908590614871565b90506002840193505f5b818110156143e457603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f6143ba603c83614fd9565b6143c49087614d96565b90505f6143d582603a015160f01c90565b9790970196505060010161436a565b506020850282016040525b80156144c9575f61440485603a015160f01c90565b905061441483828d8d8d8d614906565b92505f614425866038015160f01c90565b905081811015614491576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610ac8565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016143ef565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f61450b828651614871565b90505f5b61451a600183614da9565b81101561453057603c939093019260010161450f565b505f61453d845160c01c90565b9695505050505050565b60605f8080808061455a888a018a615115565b95509550955095509550508187106145785794506145949350505050565b83871061458c578295505050505050614594565b509293505050505b9392505050565b5f8160f9811015614608576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610ac8565b6040519150808483378082016040525f614626836009015160c01c90565b905061010060ff82010460200260f901821461469e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610ac8565b509250929050565b5f54610100900460ff1661473c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff166147fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ac8565b61175533613b9f565b60655460ff16611755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610ac8565b5f61487d835160f01c90565b9050805f036148b8576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6148c3603c82614fd9565b6148ce906002614d96565b821461156a576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f0361491557508561453d565b609b5473ffffffffffffffffffffffffffffffffffffffff165f80805b89811015614a155760ff89169150600889901c811580614950575082155b1561495f578060200288013593505b600184841c165f03614a04576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f9073ffffffffffffffffffffffffffffffffffffffff87169063ae453cd590602401602060405180830381865afa1580156149d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149fa9190614dbc565b8d52506020909b019a5b506001988901989788019701614932565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615614aaa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610ac8565b509798975050505050505050565b5f60208284031215614ac8575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614af2575f80fd5b919050565b5f60208284031215614b07575f80fd5b61459482614acf565b5f8083601f840112614b20575f80fd5b50813567ffffffffffffffff811115614b37575f80fd5b602083019150836020828501011115614b4e575f80fd5b9250929050565b5f805f60408486031215614b67575f80fd5b833567ffffffffffffffff811115614b7d575f80fd5b614b8986828701614b10565b909790965060209590950135949350505050565b5f8060208385031215614bae575f80fd5b823567ffffffffffffffff811115614bc4575f80fd5b614bd085828601614b10565b90969095509350505050565b5f805f805f8060c08789031215614bf1575f80fd5b614bfa87614acf565b9550614c0860208801614acf565b9450614c1660408801614acf565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614c4a575f80fd5b843567ffffffffffffffff80821115614c61575f80fd5b614c6d88838901614b10565b90965094506020870135915080821115614c85575f80fd5b50614c9287828801614b10565b95989497509550505050565b8015158114612557575f80fd5b5f60208284031215614cbb575f80fd5b813561459481614c9e565b5f8060408385031215614cd7575f80fd5b823567ffffffffffffffff81168114614cee575f80fd5b946020939093013593505050565b5f8060408385031215614d0d575f80fd5b823567ffffffffffffffff80821115614d24575f80fd5b9084019060e08287031215614d37575f80fd5b90925060208401359080821115614d4c575f80fd5b50830160608186031215614d5e575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561156a5761156a614d69565b8181038181111561156a5761156a614d69565b5f60208284031215614dcc575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614e0357614e03614d69565b5060010190565b5f60208284031215614e1a575f80fd5b815161459481614c9e565b5f60208284031215614e35575f80fd5b813560ff81168114614594575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614e78575f80fd5b83018035915067ffffffffffffffff821115614e92575f80fd5b602001915036819003821315614b4e575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b81811015614f5357845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101614f21565b50508760408601528481036060860152614f6e818789614eb5565b9a9950505050505050505050565b5f82515f5b81811015614f9b5760208186018101518583015201614f81565b505f920191825250919050565b858152846020820152608060408201525f614fc7608083018587614eb5565b90508260608301529695505050505050565b808202811582820484141761156a5761156a614d69565b5f82615023577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112615064575f80fd5b8135602067ffffffffffffffff8083111561508157615081615028565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156150c4576150c4615028565b60405293845260208187018101949081019250878511156150e3575f80fd5b6020870191505b8482101561510a576150fb82614acf565b835291830191908301906150ea565b979650505050505050565b5f805f805f8060c0878903121561512a575f80fd5b86359550602087013567ffffffffffffffff80821115615148575f80fd5b6151548a838b01615055565b9650604089013595506060890135915080821115615170575f80fd5b61517c8a838b01615055565b94506080890135935060a0890135915080821115615198575f80fd5b506151a589828a01615055565b915050929550929550929556fea164736f6c6343000818000a" +var RollupDeployedBin = "0x608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610a0c578063f2fde38b14610a2b578063fb1e8b0414610a4a575f80fd5b8063ddd8a3dc146109ac578063de8b3035146109d8578063dff7827e146109f7575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610965578063d279c1911461097a578063d63b354914610999575f80fd5b8063b3e0a50914610914578063bedb86fb14610933578063cd4edc6914610952575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d3146108c1578063b3484425146108d6578063b35dac4e146108f5575f80fd5b8063a479265d14610862578063a4f209b014610877578063abc8d68d14610896575f80fd5b8063910129d41161016c578063910129d4146107e457806397fc007c14610815578063a415d8dc14610834575f80fd5b806388b1ea09146106d75780638da5cb5b146106f05780638f1d37761461071a575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d14610685578063715018a6146106a4578063728cdbca146106b8575f80fd5b80635f77cf1d146105ef578063612672901461063b57806368589dfa1461065a575f80fd5b806357e0af6c1161022c57806357e0af6c146105595780635c975abb146105785780635ef7a94a1461058f575f80fd5b80632b7ac3f3146104c75780633b70c18a146105185780633e001b6614610544575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614dad565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614dec565b610a5f565b005b3480156103a3575f80fd5b506103966103b2366004614e4a565b610b83565b3480156103c2575f80fd5b5061033f6103d1366004614dad565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b50610396610408366004614e92565b610f6f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614dad565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614dad565b61156c565b34801561047c575f80fd5b5061036961048b366004614dad565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614dad565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161034b565b348015610523575f80fd5b50609b546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b34801561054f575f80fd5b5061036960aa5481565b348015610564575f80fd5b50610396610573366004614dad565b61159a565b348015610583575f80fd5b5060655460ff1661033f565b34801561059a575f80fd5b506105cf6105a9366004614dad565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105fa575f80fd5b506106227f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610646575f80fd5b50610396610655366004614dad565b61165f565b348015610665575f80fd5b50610369610674366004614dad565b60ab6020525f908152604090205481565b348015610690575f80fd5b5061039661069f366004614dec565b6118c2565b3480156106af575f80fd5b506103966119d1565b3480156106c3575f80fd5b506103966106d2366004614ed1565b6119e4565b3480156106e2575f80fd5b5060a65461033f9060ff1681565b3480156106fb575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104f3565b348015610725575f80fd5b50610793610734366004614dad565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107ef575f80fd5b5061033f6107fe366004614dad565b5f90815260a4602052604090206003015460ff1690565b348015610820575f80fd5b5061039661082f366004614dec565b611dad565b34801561083f575f80fd5b5061033f61084e366004614dec565b609f6020525f908152604090205460ff1681565b34801561086d575f80fd5b5061036960995481565b348015610882575f80fd5b50610396610891366004614dad565b611ed1565b3480156108a1575f80fd5b506103696108b0366004614dec565b60a56020525f908152604090205481565b3480156108cc575f80fd5b5061036960a85481565b3480156108e1575f80fd5b506103966108f0366004614f2c565b611f9b565b348015610900575f80fd5b5061039661090f366004614dec565b61226a565b34801561091f575f80fd5b5061039661092e366004614e92565b6122d0565b34801561093e575f80fd5b5061039661094d366004614fa0565b6126bc565b610396610960366004614fbb565b61284f565b348015610970575f80fd5b5061036960985481565b348015610985575f80fd5b50610396610994366004614dec565b612f64565b6103966109a7366004614ff1565b61304a565b3480156109b7575f80fd5b506097546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109e3575f80fd5b5061033f6109f2366004614dad565b613aed565b348015610a02575f80fd5b50610369609a5481565b348015610a17575f80fd5b50610396610a26366004614dad565b613b44565b348015610a36575f80fd5b50610396610a45366004614dec565b613c01565b348015610a55575f80fd5b5061036960a95481565b610a67613cb5565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610afb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b8b613cb5565b5f8111610bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610af2565b5f80610c008585613d36565b915091505f610c13836001015160c01c90565b5f81815260a160205260409020549091508214610c8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b5f60a181610c9a878561508b565b81526020019081526020015f205414610d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610af2565b609d548111610dc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b610dd060018261509e565b609e555b8315610f6757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610e1c81613aed565b15610ea2575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e7490849061508b565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610f1f575060a85481145b15610f29575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610dd4575b505050505050565b60a85415610fd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b610fe1613d51565b5f80610fed8484613d36565b915091505f611000836001015160c01c90565b5f81815260a160205260409020549091508214611079576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6110828161156c565b6110e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b6110f181613aed565b15611158576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003015460ff16156111d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610af2565b5f81815260a2602052604090206001015442101561124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610af2565b605983015160a05f61126060018561509e565b81526020019081526020015f2054146112d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f81815260a060205260409020541561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610af2565b80609d54600101146113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b609d819055600160a35f6113cd866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561143860f98401601185015160c01c600986015160c01c613dbe565b60a25f61144660018461509e565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061147f908461509e565b81526020019081526020015f205f905560a45f60018361149f919061509e565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611548866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061159457505f82815260a1602052604090205415155b92915050565b6115a2613cb5565b5f811180156115b357506099548114155b611619576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610af2565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561167f57505f5460ff8083169116105b61170b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556117465f5460ff1690565b60ff166002146117b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610af2565b8161183f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610af2565b609e545f90815260ab602052604090205461186857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611653565b6118ca613cb5565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff16611958576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610af2565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b78565b6119d9613cb5565b6119e25f613e94565b565b5f54610100900460ff1615808015611a0257505f54600160ff909116105b80611a1b5750303b158015611a1b57505f5460ff166001145b611aa7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611b03575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff86161580611b3a575073ffffffffffffffffffffffffffffffffffffffff8516155b15611b71576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8716611bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610af2565b611bf6613f0a565b611bfe613fa8565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611da4575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611db5613cb5565b73ffffffffffffffffffffffffffffffffffffffff811615801590611df55750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b611e5b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610af2565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611ed9613cb5565b5f81118015611ee9575060648111155b8015611ef7575060a9548114155b611f5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610af2565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611653565b60a85415612005576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61200d613d51565b5f806120198686613d36565b915091505f61202c836001015160c01c90565b5f81815260a1602052604090205490915082146120a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6120ae81613aed565b612114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055609954600290910154429161218b9161508b565b1161221f575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f7574000000000000000000000000000000000000000000000000009183019190915261221a91839190614046565b611da4565b61222a8386866141c9565b611da481336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506143a3565b612272613cb5565b60aa80545f9091556122848282614489565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611653565b6122d8613cb5565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415612369576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610af2565b5f806123758484613d36565b915091505f612388836001015160c01c90565b905080156123f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610af2565b5f6123fe846079015190565b905080612467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610af2565b600984015160c01c156124d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610af2565b5f6124e2856019015190565b03612549576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610af2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612575856039015190565b146125dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610af2565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6126c4613cb5565b801561281d576126d261455b565b60a65460ff16156127cf5760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a5909252822080549192909161273390849061508b565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6128256145e0565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336127f2565b50565b335f908152609f602052604090205460ff166128c7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610af2565b60a85415612931576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b612939613d51565b60a65460ff16156129a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610af2565b8167ffffffffffffffff16609d5410612a1b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a160205260409020548114612a9c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b612aaf8267ffffffffffffffff1661156c565b612b15576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1615612bb7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a260205260409020600101544210612c61576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610af2565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612cef91906150b1565b341015612d58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b997634604051612ec491815260200190565b60405180910390a35f609d546001612edc919061508b565b90505b609e548111612f34578267ffffffffffffffff168114612f22576099545f82815260a2602052604081206001018054909190612f1c90849061508b565b90915550505b80612f2c816150c8565b915050612edf565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003612fdd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610af2565b335f90815260a56020526040812055612ff68282614489565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161303e91815260200190565b60405180910390a25050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa1580156130d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130f491906150ff565b61315a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610af2565b60a854156131c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b6131cc613d51565b6131d9602083018361511a565b60ff1615613243576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610af2565b5f613251604084018461513a565b915050806132bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610af2565b6080830135613326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610af2565b60a0830135613391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610af2565b5f806133a86133a3602087018761513a565b613d36565b915091505f6133bb836001015160c01c90565b90505f60a1816133cc84600161508b565b81526020019081526020015f205414613441576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610af2565b609e5481146134ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b5f81815260a160205260409020548214613522576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610af2565b5f81815260ab602052604090205460808701351461359c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f6135ab846011015160c01c90565b90505f808061360a6135c060408c018c61513a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613605905060608f018f61513a565b614637565b94850194938401939250905061362360608b018b61513a565b905061010060ff85010460200214613697576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610af2565b600194909401935f8049156136ad575f496136cf565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f6136df60608d018d61513a565b6136eb915060f961508b565b90506040519850602081028901604052613719898d5f016020810190613711919061511a565b60ff166147d2565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a01526137868961376760208e018e61513a565b60405161377592919061519b565b604051809103902060b99190910152565b60d989018890526137a38961379e60608f018f61513a565b6147d9565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156138095760a7545f90815260a4602052604090206002015460995442916137fc9161508b565b613806919061509e565b90505b60405180608001604052804281526020018260985442613829919061508b565b613833919061508b565b81526020016138848f806040019061384b919061513a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506147e592505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015613912573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061393691906150b1565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c35906139ab906139a5908f018f61513a565b5f61483c565b5f8e80604001906139bc919061513a565b6040518663ffffffff1660e01b81526004016139dc9594939291906151f1565b602060405180830381865afa1580156139f7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a1b91906150ff565b613aa7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16158015906115945750505f90815260a46020526040902060030154610100900460ff161590565b613b4c613cb5565b5f81118015613b5d57506098548114155b613bc3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610af2565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611653565b613c09613cb5565b73ffffffffffffffffffffffffffffffffffffffff8116613cac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610af2565b61284c81613e94565b60335473ffffffffffffffffffffffffffffffffffffffff1633146119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610af2565b5f805f613d438585614890565b812090969095509350505050565b60655460ff16156119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610af2565b805f03613dca57505050565b8082035f805b83811015610f6757610100818503811115613dea57508084035b8651609b546040517f55f613ce00000000000000000000000000000000000000000000000000000000815260048101879052602481018490526044810183905260209099019891945073ffffffffffffffffffffffffffffffffffffffff16906355f613ce906064015f604051808303815f87803b158015613e6a575f80fd5b505af1158015613e7c573d5f803e3d5ffd5b50505050610100840193505061010081019050613dd0565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613fa0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e261499b565b5f54610100900460ff1661403e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e2614a5b565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af11580156140d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906140fb91906150b1565b5f86815260a4602052604090206001015490915061411a90829061508b565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a59091528120805490919061416690849061508b565b9091555050604051614179908490615271565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80614230576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610af2565b5f61423f846001015160c01c90565b90505f61424d856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061427c876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a84861434b885160f81c90565b858888866040518663ffffffff1660e01b815260040161436f95949392919061529d565b5f6040518083038186803b158015614385575f80fd5b505afa158015614397573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906143c790846152ce565b6143d191906152e5565b90506143dd818361509e565b60aa5f8282546143ed919061508b565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a560205260408120805483929061442690849061508b565b9091555050604051614439908490615271565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015614557575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f81146144e5576040519150601f19603f3d011682016040523d82523d5f602084013e6144ea565b606091505b5050905080614555576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610af2565b505b5050565b614563613d51565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586145b63390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6145e8614afa565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336145b6565b60405185515f91829160208901919081908490614655908590614b66565b90506002840193505f5b818110156146d957603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f6146af603c836152ce565b6146b9908761508b565b90505f6146ca82603a015160f01c90565b9790970196505060010161465f565b506020850282016040525b80156147be575f6146f985603a015160f01c90565b905061470983828d8d8d8d614bfb565b92505f61471a866038015160f01c90565b905081811015614786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610af2565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016146e4565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f614800828651614b66565b90505f5b61480f60018361509e565b81101561482557603c9390930192600101614804565b505f614832845160c01c90565b9695505050505050565b60605f8080808061484f888a018a61540a565b955095509550955095505081871061486d5794506148899350505050565b838710614881578295505050505050614889565b509293505050505b9392505050565b5f8160f98110156148fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610af2565b6040519150808483378082016040525f61491b836009015160c01c90565b905061010060ff82010460200260f9018214614993576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610af2565b509250929050565b5f54610100900460ff16614a31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff16614af1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e233613e94565b60655460ff166119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610af2565b5f614b72835160f01c90565b9050805f03614bad576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614bb8603c826152ce565b614bc390600261508b565b8214611594576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614c0a575085614832565b609b5473ffffffffffffffffffffffffffffffffffffffff165f80805b89811015614d0a5760ff89169150600889901c811580614c45575082155b15614c54578060200288013593505b600184841c165f03614cf9576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f9073ffffffffffffffffffffffffffffffffffffffff87169063ae453cd590602401602060405180830381865afa158015614ccb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614cef91906150b1565b8d52506020909b019a5b506001988901989788019701614c27565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615614d9f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610af2565b509798975050505050505050565b5f60208284031215614dbd575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614de7575f80fd5b919050565b5f60208284031215614dfc575f80fd5b61488982614dc4565b5f8083601f840112614e15575f80fd5b50813567ffffffffffffffff811115614e2c575f80fd5b602083019150836020828501011115614e43575f80fd5b9250929050565b5f805f60408486031215614e5c575f80fd5b833567ffffffffffffffff811115614e72575f80fd5b614e7e86828701614e05565b909790965060209590950135949350505050565b5f8060208385031215614ea3575f80fd5b823567ffffffffffffffff811115614eb9575f80fd5b614ec585828601614e05565b90969095509350505050565b5f805f805f8060c08789031215614ee6575f80fd5b614eef87614dc4565b9550614efd60208801614dc4565b9450614f0b60408801614dc4565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614f3f575f80fd5b843567ffffffffffffffff80821115614f56575f80fd5b614f6288838901614e05565b90965094506020870135915080821115614f7a575f80fd5b50614f8787828801614e05565b95989497509550505050565b801515811461284c575f80fd5b5f60208284031215614fb0575f80fd5b813561488981614f93565b5f8060408385031215614fcc575f80fd5b823567ffffffffffffffff81168114614fe3575f80fd5b946020939093013593505050565b5f8060408385031215615002575f80fd5b823567ffffffffffffffff80821115615019575f80fd5b9084019060e0828703121561502c575f80fd5b90925060208401359080821115615041575f80fd5b50830160608186031215615053575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808201808211156115945761159461505e565b818103818111156115945761159461505e565b5f602082840312156150c1575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036150f8576150f861505e565b5060010190565b5f6020828403121561510f575f80fd5b815161488981614f93565b5f6020828403121561512a575f80fd5b813560ff81168114614889575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261516d575f80fd5b83018035915067ffffffffffffffff821115615187575f80fd5b602001915036819003821315614e43575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b8181101561524857845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101615216565b505087604086015284810360608601526152638187896151aa565b9a9950505050505050505050565b5f82515f5b818110156152905760208186018101518583015201615276565b505f920191825250919050565b858152846020820152608060408201525f6152bc6080830185876151aa565b90508260608301529695505050505050565b80820281158282048414176115945761159461505e565b5f82615318577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112615359575f80fd5b8135602067ffffffffffffffff808311156153765761537661531d565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156153b9576153b961531d565b60405293845260208187018101949081019250878511156153d8575f80fd5b6020870191505b848210156153ff576153f082614dc4565b835291830191908301906153df565b979650505050505050565b5f805f805f8060c0878903121561541f575f80fd5b86359550602087013567ffffffffffffffff8082111561543d575f80fd5b6154498a838b0161534a565b9650604089013595506060890135915080821115615465575f80fd5b6154718a838b0161534a565b94506080890135935060a089013591508082111561548d575f80fd5b5061549a89828a0161534a565b915050929550929550929556fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(RollupStorageLayoutJSON), RollupStorageLayout); err != nil { diff --git a/contracts/contracts/l1/rollup/Rollup.sol b/contracts/contracts/l1/rollup/Rollup.sol index cd1e8a9e9..b9ca1afd2 100644 --- a/contracts/contracts/l1/rollup/Rollup.sol +++ b/contracts/contracts/l1/rollup/Rollup.sol @@ -174,6 +174,15 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { emit UpdateProofRewardPercent(0, _proofRewardPercent); } + function initialize2(bytes32 _prevStateRoot) external reinitializer(2) { + require(_getInitializedVersion() == 2, "must have initialized!"); + require(_prevStateRoot != bytes32(0), "can not set state root with bytes32(0)!"); + + if (committedStateRoots[lastCommittedBatchIndex] == bytes32(0)) { + committedStateRoots[lastCommittedBatchIndex] = _prevStateRoot; + } + } + /************************ * Restricted Functions * ************************/ @@ -185,6 +194,8 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { (uint256 memPtr, bytes32 _batchHash) = _loadBatchHeader(_batchHeader); uint256 _batchIndex = BatchHeaderCodecV0.getBatchIndex(memPtr); + // check batch index is 0 + require(_batchIndex == 0, "invalid batch index"); bytes32 _postStateRoot = BatchHeaderCodecV0.getPostStateHash(memPtr); require(_postStateRoot != bytes32(0), "zero state root"); // check all fields except `dataHash` and `lastBlockHash` are zero diff --git a/contracts/contracts/test/Rollup.t.sol b/contracts/contracts/test/Rollup.t.sol index 0e3464caf..05a9c46ed 100644 --- a/contracts/contracts/test/Rollup.t.sol +++ b/contracts/contracts/test/Rollup.t.sol @@ -714,6 +714,15 @@ contract RollupTest is L1MessageBaseTest { function test_importGenesisBlock_succeeds() public { bytes memory batchHeader; bytes32 bytesData1 = bytes32(uint256(1)); + // invalid batch index, revert + batchHeader = new bytes(249); + assembly { + mstore(add(batchHeader, add(0x20, 1)), shl(192, 1)) // batchIndex = 1 + } + hevm.expectRevert("invalid batch index"); + hevm.prank(multisig); + rollup.importGenesisBatch(batchHeader); + // zero state root, revert batchHeader = new bytes(249); hevm.expectRevert("zero state root"); diff --git a/contracts/hardhat.config.ts b/contracts/hardhat.config.ts index 0255a5981..51e3875fa 100644 --- a/contracts/hardhat.config.ts +++ b/contracts/hardhat.config.ts @@ -17,6 +17,7 @@ import "./tasks/proxy_upgrade" import "./tasks/staking_upgrade" import "./tasks/verifier_upgrade" import "./tasks/token_deploy" +import "./tasks/mainnet_upgrade" import "./src/plugin" import * as process from "process"; diff --git a/contracts/tasks/mainnet_upgrade.ts b/contracts/tasks/mainnet_upgrade.ts new file mode 100644 index 000000000..bd5af77f1 --- /dev/null +++ b/contracts/tasks/mainnet_upgrade.ts @@ -0,0 +1,25 @@ +import "@nomiclabs/hardhat-web3"; +import "@nomiclabs/hardhat-ethers"; +import "@nomiclabs/hardhat-waffle"; + +import { task } from "hardhat/config"; +import { ContractFactoryName } from "../src/types"; + +task("rollup-upgrade-hc") + .addParam("l2cid") + .addParam("prevStateRoot") + .setAction(async (taskArgs, hre) => { + const chainId = taskArgs.l2cid + + const RollupFactoryName = ContractFactoryName.Rollup + + const RollupFactory = await hre.ethers.getContractFactory(RollupFactoryName) + const rollupNewImpl = await RollupFactory.deploy(chainId) + await rollupNewImpl.deployed() + let blockNumber = await hre.ethers.provider.getBlockNumber() + console.log(`Rollup new impl deploy at ${rollupNewImpl.address} and height ${blockNumber}`) + + console.log("initialize2 abi code: ", RollupFactory.interface.encodeFunctionData('initialize2', [ + taskArgs.prevStateRoot, + ])) + }) diff --git a/tx-submitter/entry.go b/tx-submitter/entry.go index 1b9809b3a..2687ed8e3 100644 --- a/tx-submitter/entry.go +++ b/tx-submitter/entry.go @@ -16,6 +16,7 @@ import ( "morph-l2/tx-submitter/db" "morph-l2/tx-submitter/event" "morph-l2/tx-submitter/iface" + "morph-l2/tx-submitter/l1checker" "morph-l2/tx-submitter/metrics" "morph-l2/tx-submitter/services" "morph-l2/tx-submitter/utils" @@ -194,6 +195,9 @@ func Main() func(ctx *cli.Context) error { return fmt.Errorf("failed to connect leveldb: %w", err) } + // blockmonitor + bm := l1checker.NewBlockMonitor(cfg.BlockNotIncreasedThreshold, l1Client) + // new rollup service sr := services.NewRollup( ctx, @@ -211,6 +215,7 @@ func Main() func(ctx *cli.Context) error { rsaPriv, rotator, ldb, + bm, ) // metrics diff --git a/tx-submitter/flags/flags.go b/tx-submitter/flags/flags.go index 522546488..041cf2db5 100644 --- a/tx-submitter/flags/flags.go +++ b/tx-submitter/flags/flags.go @@ -298,6 +298,14 @@ var ( EnvVar: prefixEnvVar("LEVELDB_PATH_NAME"), Value: "submitter-leveldb", } + + // l1 block not incremented threshold + BlockNotIncreasedThreshold = cli.Int64Flag{ + Name: "block_not_increased_threshold", + Usage: "The threshold for block not incremented", + Value: 5, + EnvVar: prefixEnvVar("BLOCK_NOT_INCREASED_THRESHOLD"), + } ) var requiredFlags = []cli.Flag{ @@ -352,6 +360,7 @@ var optionalFlags = []cli.Flag{ StakingEventStoreFileFlag, EventIndexStepFlag, LeveldbPathNameFlag, + BlockNotIncreasedThreshold, } // Flags contains the list of configuration options available to the binary. diff --git a/tx-submitter/l1checker/blockmonitor.go b/tx-submitter/l1checker/blockmonitor.go new file mode 100644 index 000000000..9c870809b --- /dev/null +++ b/tx-submitter/l1checker/blockmonitor.go @@ -0,0 +1,67 @@ +package l1checker + +import ( + "context" + "sync" + "time" + + "morph-l2/tx-submitter/iface" + + "github.com/morph-l2/go-ethereum/log" +) + +const blockTime = time.Second * 12 + +type IBlockMonitor interface { + BlockNotIncreasedIn(time.Duration) bool +} + +type BlockMonitor struct { + blockGenerateTime time.Duration //12s for Dencun + latestBlockTime time.Time + noGrowthBlockCntTime time.Duration + client iface.L1Client + mu sync.Mutex +} + +func NewBlockMonitor(notGrowthInBlocks int64, client iface.L1Client) *BlockMonitor { + return &BlockMonitor{ + blockGenerateTime: blockTime, + latestBlockTime: time.Time{}, + noGrowthBlockCntTime: time.Duration(notGrowthInBlocks) * blockTime, + client: client, + } +} + +func (m *BlockMonitor) StartMonitoring() { + ticker := time.NewTicker(m.blockGenerateTime) + for ; ; <-ticker.C { + header, err := m.client.HeaderByNumber(context.Background(), nil) + if err != nil { + log.Warn("failed to get block in blockmonitor", "error", err) + continue + } + m.SetLatestBlockTime(time.Unix(int64(header.Time), 0)) + } +} + +func (m *BlockMonitor) IsGrowth() bool { + t := m.GetLatestBlockTime() + if t.IsZero() { + log.Warn("latest block time is zero") + return false + } + return time.Since(t) < m.noGrowthBlockCntTime +} + +func (m *BlockMonitor) SetLatestBlockTime(t time.Time) { + m.mu.Lock() + defer m.mu.Unlock() + m.latestBlockTime = t +} + +func (m *BlockMonitor) GetLatestBlockTime() time.Time { + m.mu.Lock() + defer m.mu.Unlock() + return m.latestBlockTime +} diff --git a/tx-submitter/l1checker/blockmonitor_test.go b/tx-submitter/l1checker/blockmonitor_test.go new file mode 100644 index 000000000..846e814ce --- /dev/null +++ b/tx-submitter/l1checker/blockmonitor_test.go @@ -0,0 +1,23 @@ +package l1checker + +import ( + "testing" + "time" + + "github.com/stretchr/testify/require" +) + +func TestIsGrowth(t *testing.T) { + + blockCnt := int64(2) + monitor := NewBlockMonitor(blockCnt, nil) + monitor.latestBlockTime = time.Time{} + require.Equal(t, false, monitor.IsGrowth()) + + monitor.latestBlockTime = time.Now() + require.Equal(t, true, monitor.IsGrowth()) + + monitor.latestBlockTime = time.Now().Add(-monitor.noGrowthBlockCntTime) + require.Equal(t, false, monitor.IsGrowth()) + +} diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index 63a654123..d944b5bd4 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -30,6 +30,7 @@ import ( "morph-l2/tx-submitter/db" "morph-l2/tx-submitter/event" "morph-l2/tx-submitter/iface" + "morph-l2/tx-submitter/l1checker" "morph-l2/tx-submitter/localpool" "morph-l2/tx-submitter/metrics" "morph-l2/tx-submitter/utils" @@ -75,6 +76,7 @@ type Rollup struct { collectedL1FeeSum float64 // batchcache batchCache map[uint64]*eth.RPCRollupBatch + bm *l1checker.BlockMonitor } func NewRollup( @@ -93,6 +95,7 @@ func NewRollup( rsaPriv *rsa.PrivateKey, rotator *Rotator, ldb *db.Db, + bm *l1checker.BlockMonitor, ) *Rollup { return &Rollup{ @@ -113,6 +116,7 @@ func NewRollup( externalRsaPriv: rsaPriv, batchCache: make(map[uint64]*eth.RPCRollupBatch), ldb: ldb, + bm: bm, } } @@ -144,6 +148,10 @@ func (r *Rollup) Start() error { return fmt.Errorf("init fee metrics sum failed: %w", err) } + /// start services + // start l1 monitor + go r.bm.StartMonitoring() + // metrics go utils.Loop(r.ctx, 10*time.Second, func() { @@ -1090,6 +1098,10 @@ func (r *Rollup) SendTx(tx *types.Transaction) error { if tx == nil { return errors.New("nil tx") } + // l1 health check + if !r.bm.IsGrowth() { + return fmt.Errorf("block not growth in %d blocks time", r.cfg.BlockNotIncreasedThreshold) + } err := sendTx(r.L1Client, r.cfg.TxFeeLimit, tx) if err != nil { diff --git a/tx-submitter/utils/config.go b/tx-submitter/utils/config.go index 3d63fa042..30decb206 100644 --- a/tx-submitter/utils/config.go +++ b/tx-submitter/utils/config.go @@ -105,7 +105,8 @@ type Config struct { // event indexer index step EventIndexStep uint64 // leveldb path name - LeveldbPathName string + LeveldbPathName string + BlockNotIncreasedThreshold int64 } // NewConfig parses the DriverConfig from the provided flags or environment variables. @@ -175,6 +176,8 @@ func NewConfig(ctx *cli.Context) (Config, error) { EventIndexStep: ctx.GlobalUint64(flags.EventIndexStepFlag.Name), // leveldb path name LeveldbPathName: ctx.GlobalString(flags.LeveldbPathNameFlag.Name), + // BlockNotIncreasedThreshold + BlockNotIncreasedThreshold: ctx.GlobalInt64(flags.BlockNotIncreasedThreshold.Name), } return cfg, nil From 285695852e6237c1132ca49eb9e444c0783b14ab Mon Sep 17 00:00:00 2001 From: "marvel.yu" Date: Tue, 3 Dec 2024 14:31:32 +0800 Subject: [PATCH 13/33] update for holesky build rule --- MakefileEc2.mk | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/MakefileEc2.mk b/MakefileEc2.mk index 39cf56334..8fa53be8f 100644 --- a/MakefileEc2.mk +++ b/MakefileEc2.mk @@ -21,3 +21,19 @@ build-bk-prod-morph-prod-mainnet-to-morph-tx-submitter: cp tx-submitter/tx-submitter dist/ tar -czvf tx-submitter.tar.gz dist aws s3 cp tx-submitter.tar.gz s3://morph-0582-morph-technical-department-mainnet-data/morph-setup/tx-submitter.tar.gz + +# build for holesky +build-bk-prod-morph-prod-testnet-to-morph-node-holesky: + if [ ! -d dist ]; then mkdir -p dist; fi + cd $(PWD)/node && make build + cp node/build/bin/morphnode dist/ + cp node/build/bin/tendermint dist/ + tar -czvf morph-node.tar.gz dist + aws s3 cp morph-node.tar.gz s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/morph-node.tar.gz + +build-bk-prod-morph-prod-testnet-to-morph-tx-submitter-holesky: + if [ ! -d dist ]; then mkdir -p dist; fi + env GO111MODULE=on CGO_LDFLAGS="-ldl" CGO_ENABLED=1 go build -v $(LDFLAGS) -o tx-submitter/tx-submitter ./tx-submitter/cmd + cp tx-submitter/tx-submitter dist/ + tar -czvf tx-submitter.tar.gz dist + aws s3 cp tx-submitter.tar.gz s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/tx-submitter.tar.gz From d3357298902cc0a680f5811dafad2f3ef9f5f78c Mon Sep 17 00:00:00 2001 From: FletcherMan Date: Wed, 4 Dec 2024 12:21:45 +0800 Subject: [PATCH 14/33] Pick `removeSkipMap` feature related code and update bindings (#659) Co-authored-by: vincent Co-authored-by: chengwenxi <22697326+chengwenxi@users.noreply.github.com> Co-authored-by: curryxbo Co-authored-by: WorldDogs <33647825+WorldDogs@users.noreply.github.com> --- Makefile | 2 +- ...essagequeuewithgaspriceoracle_deployed.hex | 2 +- bindings/bin/rollup_deployed.hex | 2 +- .../l1messagequeuewithgaspriceoracle.go | 78 ++---- .../l1messagequeuewithgaspriceoracle_more.go | 4 +- bindings/bindings/rollup.go | 29 ++- bindings/bindings/rollup_more.go | 2 +- bindings/go.mod | 2 +- bindings/go.sum | 4 +- .../contracts/l1/rollup/IL1MessageQueue.sol | 10 +- contracts/contracts/l1/rollup/IRollup.sol | 2 - .../L1MessageQueueWithGasPriceOracle.sol | 37 +-- contracts/contracts/l1/rollup/Rollup.sol | 62 +---- .../libraries/codec/BatchHeaderCodecV0.sol | 45 +--- .../libraries/verifier/ISP1Verifier.sol | 2 +- .../libraries/verifier/SP1VerifierPlonk.sol | 12 +- .../libraries/verifier/ZkEvmVerifierV1.sol | 1 - contracts/contracts/lido/L1LidoGateway.sol | 2 +- .../contracts/mock/BatchHeaderCodecTest.sol | 3 +- .../test/L1CrossDomainMessenger.t.sol | 8 +- .../contracts/test/L1CustomERC20Gateway.t.sol | 4 +- .../contracts/test/L1ERC1155Gateway.t.sol | 8 +- .../contracts/test/L1ERC721Gateway.t.sol | 8 +- contracts/contracts/test/L1ETHGateway.t.sol | 4 +- contracts/contracts/test/L1MessageQueue.t.sol | 20 +- .../test/L1StandardERC20Gateway.t.sol | 4 +- contracts/contracts/test/L1WETHGateway.t.sol | 2 +- .../contracts/test/L2CustomERC20Gateway.t.sol | 8 +- .../contracts/test/L2ERC1155Gateway.t.sol | 40 ++- .../contracts/test/L2ERC721Gateway.t.sol | 12 +- .../contracts/test/L2GatewayRouter.t.sol | 38 ++- contracts/contracts/test/Rollup.t.sol | 235 +++--------------- .../contracts/test/ZkEvmVerifierV1.t.sol | 2 +- .../test/base/BatchHeaderCodeV0.t.sol | 4 +- contracts/go.mod | 2 +- contracts/go.sum | 4 +- go-ethereum | 2 +- go.work.sum | 2 + node/core/batch.go | 91 +++---- node/core/config.go | 17 ++ node/core/executor.go | 9 +- node/core/l1_message.go | 37 +-- node/core/l1_message_test.go | 68 +---- node/derivation/batch_info.go | 5 +- node/derivation/derivation.go | 101 +++++--- node/derivation/derivation_test.go | 69 ++--- node/flags/flags.go | 26 ++ node/go.mod | 2 +- node/go.sum | 4 +- node/types/batch.go | 8 +- node/types/consensus_message.go | 5 +- node/types/derivation.go | 6 - ops/docker/.env | 9 +- ops/docker/docker-compose-4nodes.yml | 4 + .../deploy-config/qanet-deploy-config.json | 4 +- ops/l2-genesis/go.mod | 2 +- ops/l2-genesis/go.sum | 4 +- ops/tools/go.mod | 2 +- ops/tools/go.sum | 4 +- oracle/go.mod | 2 +- oracle/go.sum | 6 +- tx-submitter/go.mod | 2 +- tx-submitter/go.sum | 6 +- tx-submitter/services/pendingtx.go | 10 +- tx-submitter/services/pendingtx_test.go | 31 +++ tx-submitter/services/rollup.go | 30 ++- 66 files changed, 487 insertions(+), 785 deletions(-) delete mode 100644 node/types/derivation.go create mode 100644 tx-submitter/services/pendingtx_test.go diff --git a/Makefile b/Makefile index d53102ae7..92026b225 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ ################## update dependencies #################### -ETHEREUM_TARGET_VERSION := morph-v2.0.1 +ETHEREUM_TARGET_VERSION := v1.10.14-0.20241105040223-5c7f1bb7073e TENDERMINT_TARGET_VERSION := v0.3.1 ETHEREUM_MODULE_NAME := github.com/morph-l2/go-ethereum diff --git a/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex b/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex index 029ef9d7a..704b62314 100644 --- a/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex +++ b/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex @@ -1 +1 @@ -0x608060405234801561000f575f80fd5b50600436106101a5575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ca578063e3176bd5146103e4578063f2fde38b146103ed578063fd0ad31e14610400575f80fd5b8063d5ad4a9714610391578063d99bc80e146103a4578063da35a26f146103b7575f80fd5b8063bb7862ca116100c3578063bb7862ca14610337578063bdc6f0a014610357578063c27606771461036a575f80fd5b80639b15978214610308578063a85006ca1461031b578063ae453cd514610324575f80fd5b80635f9cd92e116101535780638770d7071161012e5780638770d707146102645780638da5cb5b146102b057806391652461146102ce578063927ede2d146102e1575f80fd5b80635f9cd92e14610236578063715018a6146102495780637d82191a14610251575f80fd5b806355f613ce1161018357806355f613ce146102055780635ad9945a1461021a5780635e45da231461022d575f80fd5b806329aa604b146101a95780633e4cbbe6146101cf5780633e6dada1146101e2575b5f80fd5b6101bc6101b73660046114fc565b610408565b6040519081526020015b60405180910390f35b6101bc6101dd366004611536565b610427565b6101f56101f03660046114fc565b6104db565b60405190151581526020016101c6565b61021861021336600461155e565b610521565b005b6101bc6102283660046115cc565b610715565b6101bc60685481565b610218610244366004611648565b610905565b61021861099a565b6101f561025f3660046114fc565b6109ad565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101c6565b60335473ffffffffffffffffffffffffffffffffffffffff1661028b565b6102186102dc3660046114fc565b6109e0565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b610218610316366004611661565b610bff565b6101bc60675481565b6101bc6103323660046114fc565b610ce1565b606b5461028b9073ffffffffffffffffffffffffffffffffffffffff1681565b6102186103653660046116b7565b610d57565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b61021861039f3660046114fc565b610e88565b6102186103b23660046114fc565b610ed6565b6102186103c536600461172a565b610f1c565b6101bc6103d8366004611754565b60100261520801919050565b6101bc60655481565b6102186103fb366004611648565b6110d1565b6066546101bc565b60668181548110610417575f80fd5b5f91825260209091200154905081565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b99190611793565b156104c557505f6104d5565b6065546104d290836117b9565b90505b92915050565b600881901c5f908152606a6020526040812054600160ff84161b16151580156104d55750600882901c5f90815260696020526040902054600160ff84161b1615156104d5565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146105ab5760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008211156105fd5760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d65737361676573000000000000000000000060448201526064016105a2565b826067541461064e5760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d6174636800000000000000000000000060448201526064016105a2565b600883901c5f818152606a6020526040902080546001851b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0193841660ff871681811b9092179092559092919061010081860111156106c557600182015f908152606a6020526040902061010082900385901c90555b50505081830160675560408051848152602081018490529081018290527fc77f792f838ae38399ac31acc3348389aeb110ce7bedf3cfdbdd5e6679267970906060015b60405180910390a1505050565b5f607e816107bf565b5f8161072c57506001919050565b5b81156107425760089190911c9060010161072d565b919050565b80608083106001811461077f5761075d8461071e565b60808101835360018301925084816020036008021b83528083019250506107a0565b848415166001811461079357848353610798565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b600560405101806107d260018c83610747565b90506107e060018983610747565b90506107ec89826107a8565b90506107fa60018b83610747565b905060018614600181146108625760388710600181146108475761081d8861071e565b8060b701845360018401935088816020036008021b8452808401935050878984379187019161085c565b87608001835360018301925087898437918701915b50610873565b6108705f89355f1a84610747565b91505b5061087e8c826107a8565b90508181035f8060388310600181146108b15761089a8461071e565b60f78101600882021b8517935060010191506108bc565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b61090d61116e565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6109a261116e565b6109ab5f6111d5565b565b5f60675482106109be57505f919050565b600882901c5f908152606a6020526040902054600160ff84161b1615156104d5565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610a8b5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016105a2565b6067548110610adc5760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d657373616765000000000060448201526064016105a2565b600881901c5f908152606a6020526040902054600160ff83161b16610b435760405162461bcd60e51b815260206004820152601860248201527f64726f70206e6f6e2d736b6970706564206d657373616765000000000000000060448201526064016105a2565b600881901c5f90815260696020526040902054600160ff83161b1615610bab5760405162461bcd60e51b815260206004820152601760248201527f6d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105a2565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610caa5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016105a2565b610cb583838361124b565b3373111100000000000000000000000000000000111101610cda81865f878787611347565b5050505050565b6066545f908210610d345760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e676500000000000060448201526064016105a2565b60668281548110610d4757610d476117f5565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610e025760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f617465776179000000000000000000000000000000000000000000000000000060648201526084016105a2565b73ffffffffffffffffffffffffffffffffffffffff86163b15610e675760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f4100000000000000000000000000000000000000000000000060448201526064016105a2565b610e7283838361124b565b610e80868686868686611347565b505050505050565b610e9061116e565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c591015b60405180910390a15050565b610ede61116e565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead3663299101610eca565b5f54610100900460ff1615808015610f3a57505f54600160ff909116105b80610f535750303b158015610f5357505f5460ff166001145b610fc55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105a2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611021575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6110296113f8565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841617905580156110cc575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610708565b505050565b6110d961116e565b73ffffffffffffffffffffffffffffffffffffffff81166111625760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105a2565b61116b816111d5565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146109ab5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105a2565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156112c35760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d697400000000000000000000000000000000000000000000000000000060648201526084016105a2565b6010810261520801808410156113415760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e736963206761730000000000000000000000000060648201526084016105a2565b50505050565b6066545f61135a8883888a898989610715565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e906113e6908a9087908b908b908b90611822565b60405180910390a35050505050505050565b5f54610100900460ff166114745760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105a2565b6109ab5f54610100900460ff166114f35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105a2565b6109ab336111d5565b5f6020828403121561150c575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610742575f80fd5b5f8060408385031215611547575f80fd5b61155083611513565b946020939093013593505050565b5f805f60608486031215611570575f80fd5b505081359360208301359350604090920135919050565b5f8083601f840112611597575f80fd5b50813567ffffffffffffffff8111156115ae575f80fd5b6020830191508360208285010111156115c5575f80fd5b9250929050565b5f805f805f805f60c0888a0312156115e2575f80fd5b6115eb88611513565b9650602088013595506040880135945061160760608901611513565b93506080880135925060a088013567ffffffffffffffff811115611629575f80fd5b6116358a828b01611587565b989b979a50959850939692959293505050565b5f60208284031215611658575f80fd5b6104d282611513565b5f805f8060608587031215611674575f80fd5b61167d85611513565b935060208501359250604085013567ffffffffffffffff81111561169f575f80fd5b6116ab87828801611587565b95989497509550505050565b5f805f805f8060a087890312156116cc575f80fd5b6116d587611513565b95506116e360208801611513565b94506040870135935060608701359250608087013567ffffffffffffffff81111561170c575f80fd5b61171889828a01611587565b979a9699509497509295939492505050565b5f806040838503121561173b575f80fd5b8235915061174b60208401611513565b90509250929050565b5f8060208385031215611765575f80fd5b823567ffffffffffffffff81111561177b575f80fd5b61178785828601611587565b90969095509350505050565b5f602082840312156117a3575f80fd5b815180151581146117b2575f80fd5b9392505050565b80820281158282048414176104d5577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a +0x608060405234801561000f575f80fd5b506004361061019a575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ac578063e3176bd5146103c6578063f2fde38b146103cf578063fd0ad31e146103e2575f80fd5b8063d5ad4a9714610373578063d99bc80e14610386578063da35a26f14610399575f80fd5b8063bb7862ca116100c3578063bb7862ca14610319578063bdc6f0a014610339578063c27606771461034c575f80fd5b80639b159782146102ea578063a85006ca146102fd578063ae453cd514610306575f80fd5b80635f9cd92e116101485780638da5cb5b116101235780638da5cb5b1461029257806391652461146102b0578063927ede2d146102c3575f80fd5b80635f9cd92e1461022b578063715018a61461023e5780638770d70714610246575f80fd5b80633e6dada1116101785780633e6dada1146101ec5780635ad9945a1461020f5780635e45da2314610222575f80fd5b806329aa604b1461019e5780633c7f5283146101c45780633e4cbbe6146101d9575b5f80fd5b6101b16101ac366004611399565b6103ea565b6040519081526020015b60405180910390f35b6101d76101d23660046113b0565b610409565b005b6101b16101e73660046113f3565b61057a565b6101ff6101fa366004611399565b61062e565b60405190151581526020016101bb565b6101b161021d366004611460565b610650565b6101b160685481565b6101d76102393660046114dc565b610840565b6101d76108d5565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101bb565b60335473ffffffffffffffffffffffffffffffffffffffff1661026d565b6101d76102be366004611399565b6108e8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d76102f83660046114f5565b610aa0565b6101b160675481565b6101b1610314366004611399565b610b82565b606b5461026d9073ffffffffffffffffffffffffffffffffffffffff1681565b6101d761034736600461154b565b610bf8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d7610381366004611399565b610d29565b6101d7610394366004611399565b610d6f565b6101d76103a73660046115be565b610db5565b6101b16103ba3660046115e8565b60100261520801919050565b6101b160655481565b6101d76103dd3660046114dc565b610f6e565b6066546101b1565b606681815481106103f9575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104935760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008111156104e55760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d657373616765730000000000000000000000604482015260640161048a565b81606754146105365760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d61746368000000000000000000000000604482015260640161048a565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa1580156105e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061060c9190611627565b1561061857505f610628565b606554610625908361164d565b90505b92915050565b600881901c5f90815260696020526040812054600160ff84161b161515610628565b5f607e816106fa565b5f8161066757506001919050565b5b811561067d5760089190911c90600101610668565b919050565b8060808310600181146106ba5761069884610659565b60808101835360018301925084816020036008021b83528083019250506106db565b84841516600181146106ce578483536106d3565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061070d60018c83610682565b905061071b60018983610682565b905061072789826106e3565b905061073560018b83610682565b9050600186146001811461079d5760388710600181146107825761075888610659565b8060b701845360018401935088816020036008021b84528084019350508789843791870191610797565b87608001835360018301925087898437918701915b506107ae565b6107ab5f89355f1a84610682565b91505b506107b98c826106e3565b90508181035f8060388310600181146107ec576107d584610659565b60f78101600882021b8517935060010191506107f7565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b61084861100b565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108dd61100b565b6108e65f611072565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109935760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b60675481106109e45760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d6573736167650000000000604482015260640161048a565b600881901c5f90815260696020526040902054600160ff83161b1615610a4c5760405162461bcd60e51b815260206004820152601760248201527f6d65737361676520616c72656164792064726f70706564000000000000000000604482015260640161048a565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610b4b5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b610b568383836110e8565b3373111100000000000000000000000000000000111101610b7b81865f8787876111e4565b5050505050565b6066545f908210610bd55760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e6765000000000000604482015260640161048a565b60668281548110610be857610be8611689565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610ca35760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f6174657761790000000000000000000000000000000000000000000000000000606482015260840161048a565b73ffffffffffffffffffffffffffffffffffffffff86163b15610d085760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f41000000000000000000000000000000000000000000000000604482015260640161048a565b610d138383836110e8565b610d218686868686866111e4565b505050505050565b610d3161100b565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c5910161056e565b610d7761100b565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead366329910161056e565b5f54610100900460ff1615808015610dd357505f54600160ff909116105b80610dec5750303b158015610dec57505f5460ff166001145b610e5e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161048a565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610eba575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610ec2611295565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015610f69575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610f7661100b565b73ffffffffffffffffffffffffffffffffffffffff8116610fff5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161048a565b61100881611072565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146108e65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161048a565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156111605760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d6974000000000000000000000000000000000000000000000000000000606482015260840161048a565b6010810261520801808410156111de5760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e7369632067617300000000000000000000000000606482015260840161048a565b50505050565b6066545f6111f78883888a898989610650565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611283908a9087908b908b908b906116b6565b60405180910390a35050505050505050565b5f54610100900460ff166113115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e65f54610100900460ff166113905760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e633611072565b5f602082840312156113a9575f80fd5b5035919050565b5f80604083850312156113c1575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff8116811461067d575f80fd5b5f8060408385031215611404575f80fd5b61140d836113d0565b946020939093013593505050565b5f8083601f84011261142b575f80fd5b50813567ffffffffffffffff811115611442575f80fd5b602083019150836020828501011115611459575f80fd5b9250929050565b5f805f805f805f60c0888a031215611476575f80fd5b61147f886113d0565b9650602088013595506040880135945061149b606089016113d0565b93506080880135925060a088013567ffffffffffffffff8111156114bd575f80fd5b6114c98a828b0161141b565b989b979a50959850939692959293505050565b5f602082840312156114ec575f80fd5b610625826113d0565b5f805f8060608587031215611508575f80fd5b611511856113d0565b935060208501359250604085013567ffffffffffffffff811115611533575f80fd5b61153f8782880161141b565b95989497509550505050565b5f805f805f8060a08789031215611560575f80fd5b611569876113d0565b9550611577602088016113d0565b94506040870135935060608701359250608087013567ffffffffffffffff8111156115a0575f80fd5b6115ac89828a0161141b565b979a9699509497509295939492505050565b5f80604083850312156115cf575f80fd5b823591506115df602084016113d0565b90509250929050565b5f80602083850312156115f9575f80fd5b823567ffffffffffffffff81111561160f575f80fd5b61161b8582860161141b565b90969095509350505050565b5f60208284031215611637575f80fd5b81518015158114611646575f80fd5b9392505050565b8082028115828204841417610628577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a diff --git a/bindings/bin/rollup_deployed.hex b/bindings/bin/rollup_deployed.hex index a123792e3..b23011457 100644 --- a/bindings/bin/rollup_deployed.hex +++ b/bindings/bin/rollup_deployed.hex @@ -1 +1 @@ -0x608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610917578063d279c1911461092c578063d63b35491461094b575f80fd5b8063b3e0a509146108c6578063bedb86fb146108e5578063cd4edc6914610904575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610873578063b348442514610888578063b35dac4e146108a7575f80fd5b8063a479265d14610814578063a4f209b014610829578063abc8d68d14610848575f80fd5b8063910129d41161016c578063910129d41461079657806397fc007c146107c7578063a415d8dc146107e6575f80fd5b806388b1ea09146106b05780638da5cb5b146106c95780638f1d3776146106e6575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d1461065e578063715018a61461067d578063728cdbca14610691575f80fd5b80635f77cf1d146105c8578063612672901461061457806368589dfa14610633575f80fd5b806357e0af6c1161022c57806357e0af6c146105325780635c975abb146105515780635ef7a94a14610568575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046142d3565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614305565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614363565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046142d3565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046143ab565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046142d3565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046142d3565b611324565b34801561047c575f80fd5b5061036961048b3660046142d3565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046142d3565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b34801561053d575f80fd5b5061039661054c3660046142d3565b611352565b34801561055c575f80fd5b5060655460ff1661033f565b348015610573575f80fd5b506105a86105823660046142d3565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105d3575f80fd5b506105fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b34801561061f575f80fd5b5061039661062e3660046142d3565b6113fd565b34801561063e575f80fd5b5061036961064d3660046142d3565b60ab6020525f908152604090205481565b348015610669575f80fd5b50610396610678366004614305565b611612565b348015610688575f80fd5b506103966116cf565b34801561069c575f80fd5b506103966106ab3660046143ea565b6116e2565b3480156106bb575f80fd5b5060a65461033f9060ff1681565b3480156106d4575f80fd5b506033546001600160a01b03166104e6565b3480156106f1575f80fd5b506107526107003660046142d3565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107a1575f80fd5b5061033f6107b03660046142d3565b5f90815260a4602052604090206003015460ff1690565b3480156107d2575f80fd5b506103966107e1366004614305565b611a25565b3480156107f1575f80fd5b5061033f610800366004614305565b609f6020525f908152604090205460ff1681565b34801561081f575f80fd5b5061036960995481565b348015610834575f80fd5b506103966108433660046142d3565b611b08565b348015610853575f80fd5b50610369610862366004614305565b60a56020525f908152604090205481565b34801561087e575f80fd5b5061036960a85481565b348015610893575f80fd5b506103966108a2366004614445565b611bb8565b3480156108b2575f80fd5b506103966108c1366004614305565b611dfd565b3480156108d1575f80fd5b506103966108e03660046143ab565b611e56565b3480156108f0575f80fd5b506103966108ff3660046144b9565b6121a6565b6103966109123660046144d4565b612301565b348015610922575f80fd5b5061036960985481565b348015610937575f80fd5b50610396610946366004614305565b6128cd565b61039661095936600461450a565b61298c565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046142d3565b6132b6565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046142d3565b613300565b3480156109db575f80fd5b506103966109ea366004614305565b6133a3565b3480156109fa575f80fd5b5061036960a95481565b610a0c613430565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade613430565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b39858561348a565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856145a4565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826145b7565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d07816132b6565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906145a4565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e876134a5565b5f80610e93848461348a565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611324565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f63816132b6565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856145b7565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f060f98401601185015160c01c600986015160c01c6134f8565b60a25f6111fe6001846145b7565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123790846145b7565b81526020019081526020015f205f905560a45f60018361125791906145b7565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611300866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134c57505f82815260a1602052604090205415155b92915050565b61135a613430565b5f8111801561136b57506099548114155b6113b75760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561141d57505f5460ff8083169116105b61148f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ca5f5460ff1690565b60ff1660021461151c5760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b8161158f5760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab60205260409020546115b857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020016113f1565b61161a613430565b6001600160a01b0381165f908152609f602052604090205460ff166116815760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b6116d7613430565b6116e05f6135c1565b565b5f54610100900460ff161580801561170057505f54600160ff909116105b806117195750303b15801561171957505f5460ff166001145b61178b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff1916600117905580156117c9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806117e657506001600160a01b038516155b1561181d576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166118735760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b61187b61362a565b6118836136ae565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611a1c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611a2d613430565b6001600160a01b03811615801590611a535750609c546001600160a01b03828116911614155b611a9f5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611b10613430565b5f81118015611b20575060648111155b8015611b2e575060a9548114155b611b7a5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113f1565b60a85415611c085760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611c106134a5565b5f80611c1c868661348a565b915091505f611c2f836001015160c01c90565b5f81815260a160205260409020549091508214611c8e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b611c97816132b6565b611ce35760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611d3c916145a4565b11611db2575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611dad91839190613732565b611a1c565b611dbd83868661388e565b611a1c81336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613a41565b611e05613430565b60aa80545f909155611e178282613b0d565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113f1565b611e5e613430565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611ed55760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f80611ee1848461348a565b915091505f611ef4836001015160c01c90565b90508015611f445760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f611f50846079015190565b905080611f9f5760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c15611ff45760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612000856019015190565b0361204d5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612079856039015190565b146120c65760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6121ae613430565b80156122cf576121bc613bb8565b60a65460ff161561228e5760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a590925282208054919290916122109084906145a4565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b6122d7613c12565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336122b1565b50565b335f908152609f602052604090205460ff1661235f5760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a854156123af5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b6123b76134a5565b60a65460ff161561240a5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d54106124655760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a1602052604090205481146124cc5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6124df8267ffffffffffffffff16611324565b61252b5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156125a65760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a2602052604090206001015442106126365760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612686573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126aa91906145ca565b3410156126f95760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161284b91815260200190565b60405180910390a35f609d54600161286391906145a4565b90505b609e5481116128bb578267ffffffffffffffff1681146128a9576099545f82815260a26020526040812060010180549091906128a39084906145a4565b90915550505b806128b3816145e1565b915050612866565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361292c5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556129458282613b0d565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161298091815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156129f8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a1c9190614618565b612a685760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a85415612ab85760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612ac06134a5565b612acd6020830183614633565b60ff1615612b1d5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f612b2b6040840184614653565b91505080612b7b5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b6080830135612bcc5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a0830135612c1d5760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f80612c34612c2f6020870187614653565b61348a565b915091505f612c47836001015160c01c90565b90505f60a181612c588460016145a4565b81526020019081526020015f205414612cb35760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e548114612d045760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a160205260409020548214612d605760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab6020526040902054608087013514612dc05760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f612dcf846011015160c01c90565b90505f8080612e2e612de460408c018c614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612e29905060608f018f614653565b613c4b565b948501949384019392509050612e4760608b018b614653565b905061010060ff85010460200214612ea15760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b600194909401935f804915612eb7575f49612ed9565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612ee960608d018d614653565b612ef5915060f96145a4565b90506040519850602081028901604052612f23898d5f016020810190612f1b9190614633565b60ff16613dcc565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612f9089612f7160208e018e614653565b604051612f7f9291906146b4565b604051809103902060b99190910152565b60d98901889052612fad89612fa860608f018f614653565b613dd3565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156130135760a7545f90815260a460205260409020600201546099544291613006916145a4565b61301091906145b7565b90505b6040518060800160405280428152602001826098544261303391906145a4565b61303d91906145a4565b815260200161308e8f80604001906130559190614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613ddf92505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015613102573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061312691906145ca565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c359061318e90613188908f018f614653565b5f613e36565b5f8e806040019061319f9190614653565b6040518663ffffffff1660e01b81526004016131bf95949392919061470a565b602060405180830381865afa1580156131da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131fe9190614618565b6132705760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134c5750505f90815260a46020526040902060030154610100900460ff161590565b613308613430565b5f8111801561331957506098548114155b6133655760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113f1565b6133ab613430565b6001600160a01b0381166134275760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b6122fe816135c1565b6033546001600160a01b031633146116e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134978585613e8a565b812090969095509350505050565b60655460ff16156116e05760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361350457505050565b8082035f805b83811015610e275761010081850381111561352457508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b158015613597575f80fd5b505af11580156135a9573d5f803e3d5ffd5b5050505061010084019350506101008101905061350a565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166136a65760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f61565b5f54610100900460ff1661372a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613fe9565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af11580156137b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137da91906145ca565b5f86815260a460205260409020600101549091506137f99082906145a4565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906138389084906145a4565b909155505060405161384b90849061477d565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b806138db5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f6138ea846001015160c01c90565b90505f6138f8856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613927876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a8486139e9885160f81c90565b858888866040518663ffffffff1660e01b8152600401613a0d9594939291906147a9565b5f6040518083038186803b158015613a23575f80fd5b505afa158015613a35573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613a6590846147da565b613a6f91906147f1565b9050613a7b81836145b7565b60aa5f828254613a8b91906145a4565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613ab79084906145a4565b9091555050604051613aca90849061477d565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613bb4575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613b5c576040519150601f19603f3d011682016040523d82523d5f602084013e613b61565b606091505b5050905080613bb25760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613bc06134a5565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613bf53390565b6040516001600160a01b03909116815260200160405180910390a1565b613c1a61406e565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613bf5565b60405185515f91829160208901919081908490613c699085906140c0565b90506002840193505f5b81811015613ced57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613cc3603c836147da565b613ccd90876145a4565b90505f613cde82603a015160f01c90565b97909701965050600101613c73565b506020850282016040525b8015613db8575f613d0d85603a015160f01c90565b9050613d1d83828d8d8d8d614155565b92505f613d2e866038015160f01c90565b905081811015613d805760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613cf8565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613dfa8286516140c0565b90505f5b613e096001836145b7565b811015613e1f57603c9390930192600101613dfe565b505f613e2c845160c01c90565b9695505050505050565b60605f80808080613e49888a018a614916565b9550955095509550955050818710613e67579450613e839350505050565b838710613e7b578295505050505050613e83565b509293505050505b9392505050565b5f8160f9811015613edd5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040525f613efb836009015160c01c90565b905061010060ff82010460200260f9018214613f595760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b509250929050565b5f54610100900460ff16613fdd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140655760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0336135c1565b60655460ff166116e05760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f6140cc835160f01c90565b9050805f03614107576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614112603c826147da565b61411d9060026145a4565b821461134c576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614164575085613e2c565b609b546001600160a01b03165f80805b8981101561424a5760ff89169150600889901c811580614192575082155b156141a1578060200288013593505b600184841c165f03614239576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa15801561420b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061422f91906145ca565b8d52506020909b019a5b506001988901989788019701614174565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156142c55760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a70565b509798975050505050505050565b5f602082840312156142e3575f80fd5b5035919050565b80356001600160a01b0381168114614300575f80fd5b919050565b5f60208284031215614315575f80fd5b613e83826142ea565b5f8083601f84011261432e575f80fd5b50813567ffffffffffffffff811115614345575f80fd5b60208301915083602082850101111561435c575f80fd5b9250929050565b5f805f60408486031215614375575f80fd5b833567ffffffffffffffff81111561438b575f80fd5b6143978682870161431e565b909790965060209590950135949350505050565b5f80602083850312156143bc575f80fd5b823567ffffffffffffffff8111156143d2575f80fd5b6143de8582860161431e565b90969095509350505050565b5f805f805f8060c087890312156143ff575f80fd5b614408876142ea565b9550614416602088016142ea565b9450614424604088016142ea565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614458575f80fd5b843567ffffffffffffffff8082111561446f575f80fd5b61447b8883890161431e565b90965094506020870135915080821115614493575f80fd5b506144a08782880161431e565b95989497509550505050565b80151581146122fe575f80fd5b5f602082840312156144c9575f80fd5b8135613e83816144ac565b5f80604083850312156144e5575f80fd5b823567ffffffffffffffff811681146144fc575f80fd5b946020939093013593505050565b5f806040838503121561451b575f80fd5b823567ffffffffffffffff80821115614532575f80fd5b9084019060e08287031215614545575f80fd5b9092506020840135908082111561455a575f80fd5b5083016060818603121561456c575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134c5761134c614577565b8181038181111561134c5761134c614577565b5f602082840312156145da575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361461157614611614577565b5060010190565b5f60208284031215614628575f80fd5b8151613e83816144ac565b5f60208284031215614643575f80fd5b813560ff81168114613e83575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614686575f80fd5b83018035915067ffffffffffffffff8211156146a0575f80fd5b60200191503681900382131561435c575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156147545784516001600160a01b03168352938301939183019160010161472f565b5050876040860152848103606086015261476f8187896146c3565b9a9950505050505050505050565b5f82515f5b8181101561479c5760208186018101518583015201614782565b505f920191825250919050565b858152846020820152608060408201525f6147c86080830185876146c3565b90508260608301529695505050505050565b808202811582820484141761134c5761134c614577565b5f82614824577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614865575f80fd5b8135602067ffffffffffffffff8083111561488257614882614829565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156148c5576148c5614829565b60405293845260208187018101949081019250878511156148e4575f80fd5b6020870191505b8482101561490b576148fc826142ea565b835291830191908301906148eb565b979650505050505050565b5f805f805f8060c0878903121561492b575f80fd5b86359550602087013567ffffffffffffffff80821115614949575f80fd5b6149558a838b01614856565b9650604089013595506060890135915080821115614971575f80fd5b61497d8a838b01614856565b94506080890135935060a0890135915080821115614999575f80fd5b506149a689828a01614856565b915050929550929550929556fea164736f6c6343000818000a +0x608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063cd4edc69116100b7578063cd4edc6914610917578063ce5db8d61461092a578063d279c1911461093f575f80fd5b8063b35dac4e146108ba578063b3e0a509146108d9578063bedb86fb146108f8575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d1461085b578063b31a77d314610886578063b34844251461089b575f80fd5b8063a415d8dc146107f9578063a479265d14610827578063a4f209b01461083c575f80fd5b80638f1d37761161016c5780638f1d3776146106f9578063910129d4146107a957806397fc007c146107da575f80fd5b8063728cdbca146106a457806388b1ea09146106c35780638da5cb5b146106dc575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa146106465780636c578c1d14610671578063715018a614610690575f80fd5b80635ef7a94a1461057b5780635f77cf1d146105db5780636126729014610627575f80fd5b80634a8d544f1161022c5780634a8d544f1461053257806357e0af6c146105455780635c975abb14610564575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046140f4565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614126565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614184565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046140f4565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046141cc565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046140f4565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046140f4565b611326565b34801561047c575f80fd5b5061036961048b3660046140f4565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046140f4565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b61039661054036600461420b565b611354565b348015610550575f80fd5b5061039661055f3660046140f4565b611bd7565b34801561056f575f80fd5b5060655460ff1661033f565b348015610586575f80fd5b506105bb6105953660046140f4565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105e6575f80fd5b5061060e7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610632575f80fd5b506103966106413660046140f4565b611c82565b348015610651575f80fd5b506103696106603660046140f4565b60ab6020525f908152604090205481565b34801561067c575f80fd5b5061039661068b366004614126565b611e97565b34801561069b575f80fd5b50610396611f54565b3480156106af575f80fd5b506103966106be366004614278565b611f67565b3480156106ce575f80fd5b5060a65461033f9060ff1681565b3480156106e7575f80fd5b506033546001600160a01b03166104e6565b348015610704575f80fd5b506107656107133660046140f4565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107b4575f80fd5b5061033f6107c33660046140f4565b5f90815260a4602052604090206003015460ff1690565b3480156107e5575f80fd5b506103966107f4366004614126565b6122aa565b348015610804575f80fd5b5061033f610813366004614126565b609f6020525f908152604090205460ff1681565b348015610832575f80fd5b5061036960995481565b348015610847575f80fd5b506103966108563660046140f4565b61238d565b348015610866575f80fd5b50610369610875366004614126565b60a56020525f908152604090205481565b348015610891575f80fd5b5061036960a85481565b3480156108a6575f80fd5b506103966108b53660046142d3565b61243d565b3480156108c5575f80fd5b506103966108d4366004614126565b612682565b3480156108e4575f80fd5b506103966108f33660046141cc565b6126db565b348015610903575f80fd5b50610396610912366004614347565b612a2b565b610396610925366004614362565b612b86565b348015610935575f80fd5b5061036960985481565b34801561094a575f80fd5b50610396610959366004614126565b613152565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046140f4565b613211565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046140f4565b61325b565b3480156109db575f80fd5b506103966109ea366004614126565b6132fe565b3480156109fa575f80fd5b5061036960a95481565b610a0c61338b565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade61338b565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b3985856133e5565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856143c5565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826143d8565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d0781613211565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906143c5565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e87613400565b5f80610e9384846133e5565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611326565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f6381613211565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856143d8565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f26111e5846011015160c01c90565b600985015160c01c613453565b60a25f6112006001846143d8565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123990846143d8565b81526020019081526020015f205f905560a45f60018361125991906143d8565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611302866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134e57505f82815260a1602052604090205415155b92915050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156113c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e491906143eb565b6114305760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a854156114805760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611488613400565b6114956020830183614406565b60ff16156114e55760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f6114f36040840184614426565b915050806115435760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b60608301356115945760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60808301356115e55760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f806115fc6115f76020870187614426565b6133e5565b915091505f61160f836001015160c01c90565b90505f60a1816116208460016143c5565b81526020019081526020015f20541461167b5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e5481146116cc5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a1602052604090205482146117285760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab60205260409020546060870135146117885760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f611797846011015160c01c90565b90505f80806117e96117ac60408c018c614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508792508891506135109050565b600196909601959485019493840193925090505f80491561180b575f4961182d565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b60408051611f2081019091529850905060f96118588961185060208f018f614406565b60ff1661368d565b60c087811b60018b015285811b60098b015286901b60118a01526019890183905260608c013560598a015260808c013560798a015260a08c013560998a01526118c7896118a860208e018e614426565b6040516118b6929190614487565b604051809103902060b99190910152565b60d98901889052603989018290528089205f88815260a1602090815260408083209390935560ab905290812060808e0135905560a65460ff16156119345760a7545f90815260a460205260409020600201546099544291611927916143c5565b61193191906143d8565b90505b6040518060800160405280428152602001826098544261195491906143c5565b61195e91906143c5565b81526020016119af8f80604001906119769190614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061369492505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015611a23573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a479190614496565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590611aaf90611aa9908f018f614426565b5f6136eb565b5f8e8060400190611ac09190614426565b6040518663ffffffff1660e01b8152600401611ae09594939291906144f4565b602060405180830381865afa158015611afb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b1f91906143eb565b611b915760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b611bdf61338b565b5f81118015611bf057506099548114155b611c3c5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff16158015611ca257505f5460ff8083169116105b611d145760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611d4f5f5460ff1690565b60ff16600214611da15760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b81611e145760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab6020526040902054611e3d57609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611c76565b611e9f61338b565b6001600160a01b0381165f908152609f602052604090205460ff16611f065760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b611f5c61338b565b611f655f61373f565b565b5f54610100900460ff1615808015611f8557505f54600160ff909116105b80611f9e5750303b158015611f9e57505f5460ff166001145b6120105760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff19166001179055801561204e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061206b57506001600160a01b038516155b156120a2576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166120f85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b6121006137a8565b61210861382c565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156122a1575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6122b261338b565b6001600160a01b038116158015906122d85750609c546001600160a01b03828116911614155b6123245760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61239561338b565b5f811180156123a5575060648111155b80156123b3575060a9548114155b6123ff5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611c76565b60a8541561248d5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612495613400565b5f806124a186866133e5565b915091505f6124b4836001015160c01c90565b5f81815260a1602052604090205490915082146125135760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b61251c81613211565b6125685760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff1916905560995460029091015442916125c1916143c5565b11612637575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152612632918391906138b0565b6122a1565b612642838686613a0c565b6122a181336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613bbf565b61268a61338b565b60aa80545f90915561269c8282613c8b565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611c76565b6126e361338b565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea541561275a5760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f8061276684846133e5565b915091505f612779836001015160c01c90565b905080156127c95760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f6127d5846079015190565b9050806128245760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c156128795760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612885856019015190565b036128d25760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440146128fe856039015190565b1461294b5760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b612a3361338b565b8015612b5457612a41613d36565b60a65460ff1615612b135760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091612a959084906143c5565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612b5c613d90565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612b36565b50565b335f908152609f602052604090205460ff16612be45760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a85415612c345760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612c3c613400565b60a65460ff1615612c8f5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d5410612cea5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a160205260409020548114612d515760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b612d648267ffffffffffffffff16611326565b612db05760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b031615612e2b5760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a260205260409020600101544210612ebb5760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f0b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f2f9190614496565b341015612f7e5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516130d091815260200190565b60405180910390a35f609d5460016130e891906143c5565b90505b609e548111613140578267ffffffffffffffff16811461312e576099545f82815260a26020526040812060010180549091906131289084906143c5565b90915550505b8061313881614567565b9150506130eb565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036131b15760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556131ca8282613c8b565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161320591815260200190565b60405180910390a25050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134e5750505f90815260a46020526040902060030154610100900460ff161590565b61326361338b565b5f8111801561327457506098548114155b6132c05760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611c76565b61330661338b565b6001600160a01b0381166133825760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b612b838161373f565b6033546001600160a01b03163314611f655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6133f28585613dc9565b812090969095509350505050565b60655460ff1615611f655760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361345e575050565b8082035f5b8281101561350a5761010081840381111561347d57508083035b609b546040517f3c7f528300000000000000000000000000000000000000000000000000000000815260048101859052602481018390526001600160a01b0390911690633c7f5283906044015f604051808303815f87803b1580156134e0575f80fd5b505af11580156134f2573d5f803e3d5ffd5b50505050610100830192505061010081019050613463565b50505050565b60405183515f9182916020870191908190849061352e908590613e32565b90506002840193505f5b818110156135b257603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613588603c8361459e565b61359290876143c5565b90505f6135a382603a015160f01c90565b97909701965050600101613538565b506020850282016040525b801561367b575f6135d285603a015160f01c90565b90506135e083828b8b613ec7565b92505f6135f1866038015160f01c90565b9050818110156136435760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50978801979690960195603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016135bd565b50819003902096919550909350505050565b8082535050565b5f805f6020840190506002810191505f6136af828651613e32565b90505f5b6136be6001836143d8565b8110156136d457603c93909301926001016136b3565b505f6136e1845160c01c90565b9695505050505050565b60605f808080806136fe888a018a6146a2565b955095509550955095505081871061371c5794506137389350505050565b838710613730578295505050505050613738565b509293505050505b9392505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166138245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f65613f95565b5f54610100900460ff166138a85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f6561401d565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613934573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139589190614496565b5f86815260a460205260409020600101549091506139779082906143c5565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906139b69084906143c5565b90915550506040516139c990849061473f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613a595760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f613a68846001015160c01c90565b90505f613a76856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613aa5876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a848613b67885160f81c90565b858888866040518663ffffffff1660e01b8152600401613b8b95949392919061476b565b5f6040518083038186803b158015613ba1575f80fd5b505afa158015613bb3573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613be3908461459e565b613bed919061479c565b9050613bf981836143d8565b60aa5f828254613c0991906143c5565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613c359084906143c5565b9091555050604051613c4890849061473f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613d32575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613cda576040519150601f19603f3d011682016040523d82523d5f602084013e613cdf565b606091505b5050905080613d305760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613d3e613400565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613d733390565b6040516001600160a01b03909116815260200160405180910390a1565b613d986140a2565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613d73565b5f8160f9811015613e1c5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040529250929050565b5f613e3e835160f01c90565b9050805f03613e79576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e84603c8261459e565b613e8f9060026143c5565b821461134e576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f03613ed6575083613f8d565b609b546001600160a01b03165f5b85811015613f87576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f906001600160a01b0384169063ae453cd590602401602060405180830381865afa158015613f4a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f6e9190614496565b8852506020909601956001948501949384019301613ee4565b50859150505b949350505050565b5f54610100900460ff166140115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140995760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f653361373f565b60655460ff16611f655760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f60208284031215614104575f80fd5b5035919050565b80356001600160a01b0381168114614121575f80fd5b919050565b5f60208284031215614136575f80fd5b6137388261410b565b5f8083601f84011261414f575f80fd5b50813567ffffffffffffffff811115614166575f80fd5b60208301915083602082850101111561417d575f80fd5b9250929050565b5f805f60408486031215614196575f80fd5b833567ffffffffffffffff8111156141ac575f80fd5b6141b88682870161413f565b909790965060209590950135949350505050565b5f80602083850312156141dd575f80fd5b823567ffffffffffffffff8111156141f3575f80fd5b6141ff8582860161413f565b90969095509350505050565b5f806040838503121561421c575f80fd5b823567ffffffffffffffff80821115614233575f80fd5b9084019060c08287031215614246575f80fd5b9092506020840135908082111561425b575f80fd5b5083016060818603121561426d575f80fd5b809150509250929050565b5f805f805f8060c0878903121561428d575f80fd5b6142968761410b565b95506142a46020880161410b565b94506142b26040880161410b565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156142e6575f80fd5b843567ffffffffffffffff808211156142fd575f80fd5b6143098883890161413f565b90965094506020870135915080821115614321575f80fd5b5061432e8782880161413f565b95989497509550505050565b8015158114612b83575f80fd5b5f60208284031215614357575f80fd5b81356137388161433a565b5f8060408385031215614373575f80fd5b823567ffffffffffffffff8116811461438a575f80fd5b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134e5761134e614398565b8181038181111561134e5761134e614398565b5f602082840312156143fb575f80fd5b81516137388161433a565b5f60208284031215614416575f80fd5b813560ff81168114613738575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614459575f80fd5b83018035915067ffffffffffffffff821115614473575f80fd5b60200191503681900382131561417d575f80fd5b818382375f9101908152919050565b5f602082840312156144a6575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b8181101561453e5784516001600160a01b031683529383019391830191600101614519565b505087604086015284810360608601526145598187896144ad565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361459757614597614398565b5060010190565b808202811582820484141761134e5761134e614398565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145f1575f80fd5b8135602067ffffffffffffffff8083111561460e5761460e6145b5565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614651576146516145b5565b6040529384526020818701810194908101925087851115614670575f80fd5b6020870191505b84821015614697576146888261410b565b83529183019190830190614677565b979650505050505050565b5f805f805f8060c087890312156146b7575f80fd5b86359550602087013567ffffffffffffffff808211156146d5575f80fd5b6146e18a838b016145e2565b96506040890135955060608901359150808211156146fd575f80fd5b6147098a838b016145e2565b94506080890135935060a0890135915080821115614725575f80fd5b5061473289828a016145e2565b9150509295509295509295565b5f82515f5b8181101561475e5760208186018101518583015201614744565b505f920191825250919050565b858152846020820152608060408201525f61478a6080830185876144ad565b90508260608301529695505050505050565b5f826147cf577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea164736f6c6343000818000a diff --git a/bindings/bindings/l1messagequeuewithgaspriceoracle.go b/bindings/bindings/l1messagequeuewithgaspriceoracle.go index 966fbf65e..34bda65f5 100644 --- a/bindings/bindings/l1messagequeuewithgaspriceoracle.go +++ b/bindings/bindings/l1messagequeuewithgaspriceoracle.go @@ -31,8 +31,8 @@ var ( // L1MessageQueueWithGasPriceOracleMetaData contains all meta data concerning the L1MessageQueueWithGasPriceOracle contract. var L1MessageQueueWithGasPriceOracleMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_enforcedTxGateway\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"startIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"skippedBitmap\",\"type\":\"uint256\"}],\"name\":\"DequeueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"DropTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"queueIndex\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"QueueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGateway\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGateway\",\"type\":\"address\"}],\"name\":\"UpdateEnforcedTxGateway\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGasOracle\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGasOracle\",\"type\":\"address\"}],\"name\":\"UpdateGasOracle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldL2BaseFee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"UpdateL2BaseFee\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_oldMaxGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"UpdateMaxGasLimit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldWhitelistChecker\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"UpdateWhitelistChecker\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"ENFORCED_TX_GATEWAAY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ROLLUP_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendEnforcedTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"calculateIntrinsicGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"computeTransactionHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"dropCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"estimateCrossDomainMessageFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"getCrossDomainMessage\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_whitelistChecker\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"isMessageDropped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"isMessageSkipped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2BaseFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxGasLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextCrossDomainMessageIndex\",\"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\":\"pendingQueueIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_startIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_skippedBitmap\",\"type\":\"uint256\"}],\"name\":\"popCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"setL2BaseFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"updateMaxGasLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"updateWhitelistChecker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"whitelistChecker\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", - Bin: "0x60e060405234801562000010575f80fd5b5060405162001aad38038062001aad833981016040819052620000339162000185565b6001600160a01b03831615806200005157506001600160a01b038216155b806200006457506001600160a01b038116155b156200008357604051630ecc6fdf60e41b815260040160405180910390fd5b6200008d620000ab565b6001600160a01b0392831660805290821660a0521660c052620001cc565b5f54610100900460ff1615620001175760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000167575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811462000180575f80fd5b919050565b5f805f6060848603121562000198575f80fd5b620001a38462000169565b9250620001b36020850162000169565b9150620001c36040850162000169565b90509250925092565b60805160a05160c05161189a620002135f395f818161036f0152610d5a01525f8181610269015261052401525f81816102e6015281816109e30152610c02015261189a5ff3fe608060405234801561000f575f80fd5b50600436106101a5575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ca578063e3176bd5146103e4578063f2fde38b146103ed578063fd0ad31e14610400575f80fd5b8063d5ad4a9714610391578063d99bc80e146103a4578063da35a26f146103b7575f80fd5b8063bb7862ca116100c3578063bb7862ca14610337578063bdc6f0a014610357578063c27606771461036a575f80fd5b80639b15978214610308578063a85006ca1461031b578063ae453cd514610324575f80fd5b80635f9cd92e116101535780638770d7071161012e5780638770d707146102645780638da5cb5b146102b057806391652461146102ce578063927ede2d146102e1575f80fd5b80635f9cd92e14610236578063715018a6146102495780637d82191a14610251575f80fd5b806355f613ce1161018357806355f613ce146102055780635ad9945a1461021a5780635e45da231461022d575f80fd5b806329aa604b146101a95780633e4cbbe6146101cf5780633e6dada1146101e2575b5f80fd5b6101bc6101b73660046114fc565b610408565b6040519081526020015b60405180910390f35b6101bc6101dd366004611536565b610427565b6101f56101f03660046114fc565b6104db565b60405190151581526020016101c6565b61021861021336600461155e565b610521565b005b6101bc6102283660046115cc565b610715565b6101bc60685481565b610218610244366004611648565b610905565b61021861099a565b6101f561025f3660046114fc565b6109ad565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101c6565b60335473ffffffffffffffffffffffffffffffffffffffff1661028b565b6102186102dc3660046114fc565b6109e0565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b610218610316366004611661565b610bff565b6101bc60675481565b6101bc6103323660046114fc565b610ce1565b606b5461028b9073ffffffffffffffffffffffffffffffffffffffff1681565b6102186103653660046116b7565b610d57565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b61021861039f3660046114fc565b610e88565b6102186103b23660046114fc565b610ed6565b6102186103c536600461172a565b610f1c565b6101bc6103d8366004611754565b60100261520801919050565b6101bc60655481565b6102186103fb366004611648565b6110d1565b6066546101bc565b60668181548110610417575f80fd5b5f91825260209091200154905081565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b99190611793565b156104c557505f6104d5565b6065546104d290836117b9565b90505b92915050565b600881901c5f908152606a6020526040812054600160ff84161b16151580156104d55750600882901c5f90815260696020526040902054600160ff84161b1615156104d5565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146105ab5760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008211156105fd5760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d65737361676573000000000000000000000060448201526064016105a2565b826067541461064e5760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d6174636800000000000000000000000060448201526064016105a2565b600883901c5f818152606a6020526040902080546001851b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0193841660ff871681811b9092179092559092919061010081860111156106c557600182015f908152606a6020526040902061010082900385901c90555b50505081830160675560408051848152602081018490529081018290527fc77f792f838ae38399ac31acc3348389aeb110ce7bedf3cfdbdd5e6679267970906060015b60405180910390a1505050565b5f607e816107bf565b5f8161072c57506001919050565b5b81156107425760089190911c9060010161072d565b919050565b80608083106001811461077f5761075d8461071e565b60808101835360018301925084816020036008021b83528083019250506107a0565b848415166001811461079357848353610798565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b600560405101806107d260018c83610747565b90506107e060018983610747565b90506107ec89826107a8565b90506107fa60018b83610747565b905060018614600181146108625760388710600181146108475761081d8861071e565b8060b701845360018401935088816020036008021b8452808401935050878984379187019161085c565b87608001835360018301925087898437918701915b50610873565b6108705f89355f1a84610747565b91505b5061087e8c826107a8565b90508181035f8060388310600181146108b15761089a8461071e565b60f78101600882021b8517935060010191506108bc565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b61090d61116e565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6109a261116e565b6109ab5f6111d5565b565b5f60675482106109be57505f919050565b600882901c5f908152606a6020526040902054600160ff84161b1615156104d5565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610a8b5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016105a2565b6067548110610adc5760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d657373616765000000000060448201526064016105a2565b600881901c5f908152606a6020526040902054600160ff83161b16610b435760405162461bcd60e51b815260206004820152601860248201527f64726f70206e6f6e2d736b6970706564206d657373616765000000000000000060448201526064016105a2565b600881901c5f90815260696020526040902054600160ff83161b1615610bab5760405162461bcd60e51b815260206004820152601760248201527f6d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105a2565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610caa5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016105a2565b610cb583838361124b565b3373111100000000000000000000000000000000111101610cda81865f878787611347565b5050505050565b6066545f908210610d345760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e676500000000000060448201526064016105a2565b60668281548110610d4757610d476117f5565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610e025760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f617465776179000000000000000000000000000000000000000000000000000060648201526084016105a2565b73ffffffffffffffffffffffffffffffffffffffff86163b15610e675760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f4100000000000000000000000000000000000000000000000060448201526064016105a2565b610e7283838361124b565b610e80868686868686611347565b505050505050565b610e9061116e565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c591015b60405180910390a15050565b610ede61116e565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead3663299101610eca565b5f54610100900460ff1615808015610f3a57505f54600160ff909116105b80610f535750303b158015610f5357505f5460ff166001145b610fc55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105a2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611021575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6110296113f8565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841617905580156110cc575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610708565b505050565b6110d961116e565b73ffffffffffffffffffffffffffffffffffffffff81166111625760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105a2565b61116b816111d5565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146109ab5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105a2565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156112c35760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d697400000000000000000000000000000000000000000000000000000060648201526084016105a2565b6010810261520801808410156113415760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e736963206761730000000000000000000000000060648201526084016105a2565b50505050565b6066545f61135a8883888a898989610715565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e906113e6908a9087908b908b908b90611822565b60405180910390a35050505050505050565b5f54610100900460ff166114745760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105a2565b6109ab5f54610100900460ff166114f35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105a2565b6109ab336111d5565b5f6020828403121561150c575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610742575f80fd5b5f8060408385031215611547575f80fd5b61155083611513565b946020939093013593505050565b5f805f60608486031215611570575f80fd5b505081359360208301359350604090920135919050565b5f8083601f840112611597575f80fd5b50813567ffffffffffffffff8111156115ae575f80fd5b6020830191508360208285010111156115c5575f80fd5b9250929050565b5f805f805f805f60c0888a0312156115e2575f80fd5b6115eb88611513565b9650602088013595506040880135945061160760608901611513565b93506080880135925060a088013567ffffffffffffffff811115611629575f80fd5b6116358a828b01611587565b989b979a50959850939692959293505050565b5f60208284031215611658575f80fd5b6104d282611513565b5f805f8060608587031215611674575f80fd5b61167d85611513565b935060208501359250604085013567ffffffffffffffff81111561169f575f80fd5b6116ab87828801611587565b95989497509550505050565b5f805f805f8060a087890312156116cc575f80fd5b6116d587611513565b95506116e360208801611513565b94506040870135935060608701359250608087013567ffffffffffffffff81111561170c575f80fd5b61171889828a01611587565b979a9699509497509295939492505050565b5f806040838503121561173b575f80fd5b8235915061174b60208401611513565b90509250929050565b5f8060208385031215611765575f80fd5b823567ffffffffffffffff81111561177b575f80fd5b61178785828601611587565b90969095509350505050565b5f602082840312156117a3575f80fd5b815180151581146117b2575f80fd5b9392505050565b80820281158282048414176104d5577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_enforcedTxGateway\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"startIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"}],\"name\":\"DequeueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"DropTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"queueIndex\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"QueueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGateway\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGateway\",\"type\":\"address\"}],\"name\":\"UpdateEnforcedTxGateway\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGasOracle\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGasOracle\",\"type\":\"address\"}],\"name\":\"UpdateGasOracle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldL2BaseFee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"UpdateL2BaseFee\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_oldMaxGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"UpdateMaxGasLimit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldWhitelistChecker\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"UpdateWhitelistChecker\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"ENFORCED_TX_GATEWAAY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ROLLUP_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendEnforcedTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"calculateIntrinsicGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"computeTransactionHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"dropCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"estimateCrossDomainMessageFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"getCrossDomainMessage\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_whitelistChecker\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"isMessageDropped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2BaseFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxGasLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextCrossDomainMessageIndex\",\"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\":\"pendingQueueIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_startIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"popCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"setL2BaseFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"updateMaxGasLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"updateWhitelistChecker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"whitelistChecker\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", + Bin: "0x60e060405234801562000010575f80fd5b506040516200194138038062001941833981016040819052620000339162000185565b6001600160a01b03831615806200005157506001600160a01b038216155b806200006457506001600160a01b038116155b156200008357604051630ecc6fdf60e41b815260040160405180910390fd5b6200008d620000ab565b6001600160a01b0392831660805290821660a0521660c052620001cc565b5f54610100900460ff1615620001175760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000167575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811462000180575f80fd5b919050565b5f805f6060848603121562000198575f80fd5b620001a38462000169565b9250620001b36020850162000169565b9150620001c36040850162000169565b90509250925092565b60805160a05160c05161172e620002135f395f81816103510152610bfb01525f818161024b015261040c01525f81816102c8015281816108eb0152610aa3015261172e5ff3fe608060405234801561000f575f80fd5b506004361061019a575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ac578063e3176bd5146103c6578063f2fde38b146103cf578063fd0ad31e146103e2575f80fd5b8063d5ad4a9714610373578063d99bc80e14610386578063da35a26f14610399575f80fd5b8063bb7862ca116100c3578063bb7862ca14610319578063bdc6f0a014610339578063c27606771461034c575f80fd5b80639b159782146102ea578063a85006ca146102fd578063ae453cd514610306575f80fd5b80635f9cd92e116101485780638da5cb5b116101235780638da5cb5b1461029257806391652461146102b0578063927ede2d146102c3575f80fd5b80635f9cd92e1461022b578063715018a61461023e5780638770d70714610246575f80fd5b80633e6dada1116101785780633e6dada1146101ec5780635ad9945a1461020f5780635e45da2314610222575f80fd5b806329aa604b1461019e5780633c7f5283146101c45780633e4cbbe6146101d9575b5f80fd5b6101b16101ac366004611399565b6103ea565b6040519081526020015b60405180910390f35b6101d76101d23660046113b0565b610409565b005b6101b16101e73660046113f3565b61057a565b6101ff6101fa366004611399565b61062e565b60405190151581526020016101bb565b6101b161021d366004611460565b610650565b6101b160685481565b6101d76102393660046114dc565b610840565b6101d76108d5565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101bb565b60335473ffffffffffffffffffffffffffffffffffffffff1661026d565b6101d76102be366004611399565b6108e8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d76102f83660046114f5565b610aa0565b6101b160675481565b6101b1610314366004611399565b610b82565b606b5461026d9073ffffffffffffffffffffffffffffffffffffffff1681565b6101d761034736600461154b565b610bf8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d7610381366004611399565b610d29565b6101d7610394366004611399565b610d6f565b6101d76103a73660046115be565b610db5565b6101b16103ba3660046115e8565b60100261520801919050565b6101b160655481565b6101d76103dd3660046114dc565b610f6e565b6066546101b1565b606681815481106103f9575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104935760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008111156104e55760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d657373616765730000000000000000000000604482015260640161048a565b81606754146105365760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d61746368000000000000000000000000604482015260640161048a565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa1580156105e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061060c9190611627565b1561061857505f610628565b606554610625908361164d565b90505b92915050565b600881901c5f90815260696020526040812054600160ff84161b161515610628565b5f607e816106fa565b5f8161066757506001919050565b5b811561067d5760089190911c90600101610668565b919050565b8060808310600181146106ba5761069884610659565b60808101835360018301925084816020036008021b83528083019250506106db565b84841516600181146106ce578483536106d3565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061070d60018c83610682565b905061071b60018983610682565b905061072789826106e3565b905061073560018b83610682565b9050600186146001811461079d5760388710600181146107825761075888610659565b8060b701845360018401935088816020036008021b84528084019350508789843791870191610797565b87608001835360018301925087898437918701915b506107ae565b6107ab5f89355f1a84610682565b91505b506107b98c826106e3565b90508181035f8060388310600181146107ec576107d584610659565b60f78101600882021b8517935060010191506107f7565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b61084861100b565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108dd61100b565b6108e65f611072565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109935760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b60675481106109e45760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d6573736167650000000000604482015260640161048a565b600881901c5f90815260696020526040902054600160ff83161b1615610a4c5760405162461bcd60e51b815260206004820152601760248201527f6d65737361676520616c72656164792064726f70706564000000000000000000604482015260640161048a565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610b4b5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b610b568383836110e8565b3373111100000000000000000000000000000000111101610b7b81865f8787876111e4565b5050505050565b6066545f908210610bd55760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e6765000000000000604482015260640161048a565b60668281548110610be857610be8611689565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610ca35760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f6174657761790000000000000000000000000000000000000000000000000000606482015260840161048a565b73ffffffffffffffffffffffffffffffffffffffff86163b15610d085760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f41000000000000000000000000000000000000000000000000604482015260640161048a565b610d138383836110e8565b610d218686868686866111e4565b505050505050565b610d3161100b565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c5910161056e565b610d7761100b565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead366329910161056e565b5f54610100900460ff1615808015610dd357505f54600160ff909116105b80610dec5750303b158015610dec57505f5460ff166001145b610e5e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161048a565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610eba575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610ec2611295565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015610f69575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610f7661100b565b73ffffffffffffffffffffffffffffffffffffffff8116610fff5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161048a565b61100881611072565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146108e65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161048a565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156111605760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d6974000000000000000000000000000000000000000000000000000000606482015260840161048a565b6010810261520801808410156111de5760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e7369632067617300000000000000000000000000606482015260840161048a565b50505050565b6066545f6111f78883888a898989610650565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611283908a9087908b908b908b906116b6565b60405180910390a35050505050505050565b5f54610100900460ff166113115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e65f54610100900460ff166113905760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e633611072565b5f602082840312156113a9575f80fd5b5035919050565b5f80604083850312156113c1575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff8116811461067d575f80fd5b5f8060408385031215611404575f80fd5b61140d836113d0565b946020939093013593505050565b5f8083601f84011261142b575f80fd5b50813567ffffffffffffffff811115611442575f80fd5b602083019150836020828501011115611459575f80fd5b9250929050565b5f805f805f805f60c0888a031215611476575f80fd5b61147f886113d0565b9650602088013595506040880135945061149b606089016113d0565b93506080880135925060a088013567ffffffffffffffff8111156114bd575f80fd5b6114c98a828b0161141b565b989b979a50959850939692959293505050565b5f602082840312156114ec575f80fd5b610625826113d0565b5f805f8060608587031215611508575f80fd5b611511856113d0565b935060208501359250604085013567ffffffffffffffff811115611533575f80fd5b61153f8782880161141b565b95989497509550505050565b5f805f805f8060a08789031215611560575f80fd5b611569876113d0565b9550611577602088016113d0565b94506040870135935060608701359250608087013567ffffffffffffffff8111156115a0575f80fd5b6115ac89828a0161141b565b979a9699509497509295939492505050565b5f80604083850312156115cf575f80fd5b823591506115df602084016113d0565b90509250929050565b5f80602083850312156115f9575f80fd5b823567ffffffffffffffff81111561160f575f80fd5b61161b8582860161141b565b90969095509350505050565b5f60208284031215611637575f80fd5b81518015158114611646575f80fd5b9392505050565b8082028115828204841417610628577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a", } // L1MessageQueueWithGasPriceOracleABI is the input ABI used to generate the binding from. @@ -450,37 +450,6 @@ func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleCallerS return _L1MessageQueueWithGasPriceOracle.Contract.IsMessageDropped(&_L1MessageQueueWithGasPriceOracle.CallOpts, _queueIndex) } -// IsMessageSkipped is a free data retrieval call binding the contract method 0x7d82191a. -// -// Solidity: function isMessageSkipped(uint256 _queueIndex) view returns(bool) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleCaller) IsMessageSkipped(opts *bind.CallOpts, _queueIndex *big.Int) (bool, error) { - var out []interface{} - err := _L1MessageQueueWithGasPriceOracle.contract.Call(opts, &out, "isMessageSkipped", _queueIndex) - - if err != nil { - return *new(bool), err - } - - out0 := *abi.ConvertType(out[0], new(bool)).(*bool) - - return out0, err - -} - -// IsMessageSkipped is a free data retrieval call binding the contract method 0x7d82191a. -// -// Solidity: function isMessageSkipped(uint256 _queueIndex) view returns(bool) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleSession) IsMessageSkipped(_queueIndex *big.Int) (bool, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.IsMessageSkipped(&_L1MessageQueueWithGasPriceOracle.CallOpts, _queueIndex) -} - -// IsMessageSkipped is a free data retrieval call binding the contract method 0x7d82191a. -// -// Solidity: function isMessageSkipped(uint256 _queueIndex) view returns(bool) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleCallerSession) IsMessageSkipped(_queueIndex *big.Int) (bool, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.IsMessageSkipped(&_L1MessageQueueWithGasPriceOracle.CallOpts, _queueIndex) -} - // L2BaseFee is a free data retrieval call binding the contract method 0xe3176bd5. // // Solidity: function l2BaseFee() view returns(uint256) @@ -782,25 +751,25 @@ func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransac return _L1MessageQueueWithGasPriceOracle.Contract.Initialize(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _maxGasLimit, _whitelistChecker) } -// PopCrossDomainMessage is a paid mutator transaction binding the contract method 0x55f613ce. +// PopCrossDomainMessage is a paid mutator transaction binding the contract method 0x3c7f5283. // -// Solidity: function popCrossDomainMessage(uint256 _startIndex, uint256 _count, uint256 _skippedBitmap) returns() -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransactor) PopCrossDomainMessage(opts *bind.TransactOpts, _startIndex *big.Int, _count *big.Int, _skippedBitmap *big.Int) (*types.Transaction, error) { - return _L1MessageQueueWithGasPriceOracle.contract.Transact(opts, "popCrossDomainMessage", _startIndex, _count, _skippedBitmap) +// Solidity: function popCrossDomainMessage(uint256 _startIndex, uint256 _count) returns() +func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransactor) PopCrossDomainMessage(opts *bind.TransactOpts, _startIndex *big.Int, _count *big.Int) (*types.Transaction, error) { + return _L1MessageQueueWithGasPriceOracle.contract.Transact(opts, "popCrossDomainMessage", _startIndex, _count) } -// PopCrossDomainMessage is a paid mutator transaction binding the contract method 0x55f613ce. +// PopCrossDomainMessage is a paid mutator transaction binding the contract method 0x3c7f5283. // -// Solidity: function popCrossDomainMessage(uint256 _startIndex, uint256 _count, uint256 _skippedBitmap) returns() -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleSession) PopCrossDomainMessage(_startIndex *big.Int, _count *big.Int, _skippedBitmap *big.Int) (*types.Transaction, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.PopCrossDomainMessage(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _startIndex, _count, _skippedBitmap) +// Solidity: function popCrossDomainMessage(uint256 _startIndex, uint256 _count) returns() +func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleSession) PopCrossDomainMessage(_startIndex *big.Int, _count *big.Int) (*types.Transaction, error) { + return _L1MessageQueueWithGasPriceOracle.Contract.PopCrossDomainMessage(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _startIndex, _count) } -// PopCrossDomainMessage is a paid mutator transaction binding the contract method 0x55f613ce. +// PopCrossDomainMessage is a paid mutator transaction binding the contract method 0x3c7f5283. // -// Solidity: function popCrossDomainMessage(uint256 _startIndex, uint256 _count, uint256 _skippedBitmap) returns() -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransactorSession) PopCrossDomainMessage(_startIndex *big.Int, _count *big.Int, _skippedBitmap *big.Int) (*types.Transaction, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.PopCrossDomainMessage(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _startIndex, _count, _skippedBitmap) +// Solidity: function popCrossDomainMessage(uint256 _startIndex, uint256 _count) returns() +func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransactorSession) PopCrossDomainMessage(_startIndex *big.Int, _count *big.Int) (*types.Transaction, error) { + return _L1MessageQueueWithGasPriceOracle.Contract.PopCrossDomainMessage(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _startIndex, _count) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. @@ -977,15 +946,14 @@ func (it *L1MessageQueueWithGasPriceOracleDequeueTransactionIterator) Close() er // L1MessageQueueWithGasPriceOracleDequeueTransaction represents a DequeueTransaction event raised by the L1MessageQueueWithGasPriceOracle contract. type L1MessageQueueWithGasPriceOracleDequeueTransaction struct { - StartIndex *big.Int - Count *big.Int - SkippedBitmap *big.Int - Raw types.Log // Blockchain specific contextual infos + StartIndex *big.Int + Count *big.Int + Raw types.Log // Blockchain specific contextual infos } -// FilterDequeueTransaction is a free log retrieval operation binding the contract event 0xc77f792f838ae38399ac31acc3348389aeb110ce7bedf3cfdbdd5e6679267970. +// FilterDequeueTransaction is a free log retrieval operation binding the contract event 0x3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f26. // -// Solidity: event DequeueTransaction(uint256 startIndex, uint256 count, uint256 skippedBitmap) +// Solidity: event DequeueTransaction(uint256 startIndex, uint256 count) func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFilterer) FilterDequeueTransaction(opts *bind.FilterOpts) (*L1MessageQueueWithGasPriceOracleDequeueTransactionIterator, error) { logs, sub, err := _L1MessageQueueWithGasPriceOracle.contract.FilterLogs(opts, "DequeueTransaction") @@ -995,9 +963,9 @@ func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFiltere return &L1MessageQueueWithGasPriceOracleDequeueTransactionIterator{contract: _L1MessageQueueWithGasPriceOracle.contract, event: "DequeueTransaction", logs: logs, sub: sub}, nil } -// WatchDequeueTransaction is a free log subscription operation binding the contract event 0xc77f792f838ae38399ac31acc3348389aeb110ce7bedf3cfdbdd5e6679267970. +// WatchDequeueTransaction is a free log subscription operation binding the contract event 0x3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f26. // -// Solidity: event DequeueTransaction(uint256 startIndex, uint256 count, uint256 skippedBitmap) +// Solidity: event DequeueTransaction(uint256 startIndex, uint256 count) func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFilterer) WatchDequeueTransaction(opts *bind.WatchOpts, sink chan<- *L1MessageQueueWithGasPriceOracleDequeueTransaction) (event.Subscription, error) { logs, sub, err := _L1MessageQueueWithGasPriceOracle.contract.WatchLogs(opts, "DequeueTransaction") @@ -1032,9 +1000,9 @@ func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFiltere }), nil } -// ParseDequeueTransaction is a log parse operation binding the contract event 0xc77f792f838ae38399ac31acc3348389aeb110ce7bedf3cfdbdd5e6679267970. +// ParseDequeueTransaction is a log parse operation binding the contract event 0x3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f26. // -// Solidity: event DequeueTransaction(uint256 startIndex, uint256 count, uint256 skippedBitmap) +// Solidity: event DequeueTransaction(uint256 startIndex, uint256 count) func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFilterer) ParseDequeueTransaction(log types.Log) (*L1MessageQueueWithGasPriceOracleDequeueTransaction, error) { event := new(L1MessageQueueWithGasPriceOracleDequeueTransaction) if err := _L1MessageQueueWithGasPriceOracle.contract.UnpackLog(event, "DequeueTransaction", log); err != nil { diff --git a/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go b/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go index 761291539..a58058b80 100644 --- a/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go +++ b/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go @@ -9,11 +9,11 @@ import ( "morph-l2/bindings/solc" ) -const L1MessageQueueWithGasPriceOracleStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1013_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1012_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"l2BaseFee\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_uint256\"},{\"astId\":1006,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_bytes32)dyn_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"pendingQueueIndex\",\"offset\":0,\"slot\":\"103\",\"type\":\"t_uint256\"},{\"astId\":1008,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"maxGasLimit\",\"offset\":0,\"slot\":\"104\",\"type\":\"t_uint256\"},{\"astId\":1009,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"droppedMessageBitmap\",\"offset\":0,\"slot\":\"105\",\"type\":\"t_struct(BitMap)1014_storage\"},{\"astId\":1010,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"skippedMessageBitmap\",\"offset\":0,\"slot\":\"106\",\"type\":\"t_mapping(t_uint256,t_uint256)\"},{\"astId\":1011,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"whitelistChecker\",\"offset\":0,\"slot\":\"107\",\"type\":\"t_address\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_bytes32)dyn_storage\":{\"encoding\":\"dynamic_array\",\"label\":\"bytes32[]\",\"numberOfBytes\":\"32\"},\"t_array(t_uint256)1012_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1013_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_uint256,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_uint256\"},\"t_struct(BitMap)1014_storage\":{\"encoding\":\"inplace\",\"label\":\"struct BitMapsUpgradeable.BitMap\",\"numberOfBytes\":\"32\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" +const L1MessageQueueWithGasPriceOracleStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1013_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1012_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"l2BaseFee\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_uint256\"},{\"astId\":1006,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_bytes32)dyn_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"pendingQueueIndex\",\"offset\":0,\"slot\":\"103\",\"type\":\"t_uint256\"},{\"astId\":1008,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"maxGasLimit\",\"offset\":0,\"slot\":\"104\",\"type\":\"t_uint256\"},{\"astId\":1009,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"droppedMessageBitmap\",\"offset\":0,\"slot\":\"105\",\"type\":\"t_struct(BitMap)1014_storage\"},{\"astId\":1010,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__skippedMessageBitmap\",\"offset\":0,\"slot\":\"106\",\"type\":\"t_mapping(t_uint256,t_uint256)\"},{\"astId\":1011,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"whitelistChecker\",\"offset\":0,\"slot\":\"107\",\"type\":\"t_address\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_bytes32)dyn_storage\":{\"encoding\":\"dynamic_array\",\"label\":\"bytes32[]\",\"numberOfBytes\":\"32\"},\"t_array(t_uint256)1012_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1013_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_uint256,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_uint256\"},\"t_struct(BitMap)1014_storage\":{\"encoding\":\"inplace\",\"label\":\"struct BitMapsUpgradeable.BitMap\",\"numberOfBytes\":\"32\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" var L1MessageQueueWithGasPriceOracleStorageLayout = new(solc.StorageLayout) -var L1MessageQueueWithGasPriceOracleDeployedBin = "0x608060405234801561000f575f80fd5b50600436106101a5575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ca578063e3176bd5146103e4578063f2fde38b146103ed578063fd0ad31e14610400575f80fd5b8063d5ad4a9714610391578063d99bc80e146103a4578063da35a26f146103b7575f80fd5b8063bb7862ca116100c3578063bb7862ca14610337578063bdc6f0a014610357578063c27606771461036a575f80fd5b80639b15978214610308578063a85006ca1461031b578063ae453cd514610324575f80fd5b80635f9cd92e116101535780638770d7071161012e5780638770d707146102645780638da5cb5b146102b057806391652461146102ce578063927ede2d146102e1575f80fd5b80635f9cd92e14610236578063715018a6146102495780637d82191a14610251575f80fd5b806355f613ce1161018357806355f613ce146102055780635ad9945a1461021a5780635e45da231461022d575f80fd5b806329aa604b146101a95780633e4cbbe6146101cf5780633e6dada1146101e2575b5f80fd5b6101bc6101b73660046116d0565b610408565b6040519081526020015b60405180910390f35b6101bc6101dd36600461170a565b610427565b6101f56101f03660046116d0565b6104db565b60405190151581526020016101c6565b610218610213366004611732565b610521565b005b6101bc6102283660046117a0565b610763565b6101bc60685481565b61021861024436600461181c565b610953565b6102186109e8565b6101f561025f3660046116d0565b6109fb565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101c6565b60335473ffffffffffffffffffffffffffffffffffffffff1661028b565b6102186102dc3660046116d0565b610a2e565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b610218610316366004611835565b610cb5565b6101bc60675481565b6101bc6103323660046116d0565b610db1565b606b5461028b9073ffffffffffffffffffffffffffffffffffffffff1681565b61021861036536600461188b565b610e41565b61028b7f000000000000000000000000000000000000000000000000000000000000000081565b61021861039f3660046116d0565b610fa6565b6102186103b23660046116d0565b610ff4565b6102186103c53660046118fe565b61103a565b6101bc6103d8366004611928565b60100261520801919050565b6101bc60655481565b6102186103fb36600461181c565b611209565b6066546101bc565b60668181548110610417575f80fd5b5f91825260209091200154905081565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b99190611967565b156104c557505f6104d5565b6065546104d2908361198d565b90505b92915050565b600881901c5f908152606a6020526040812054600160ff84161b16151580156104d55750600882901c5f90815260696020526040902054600160ff84161b1615156104d5565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146105c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b610100821115610631576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f706f7020746f6f206d616e79206d65737361676573000000000000000000000060448201526064016105bc565b826067541461069c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f737461727420696e646578206d69736d6174636800000000000000000000000060448201526064016105bc565b600883901c5f818152606a6020526040902080546001851b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0193841660ff871681811b90921790925590929190610100818601111561071357600182015f908152606a6020526040902061010082900385901c90555b50505081830160675560408051848152602081018490529081018290527fc77f792f838ae38399ac31acc3348389aeb110ce7bedf3cfdbdd5e6679267970906060015b60405180910390a1505050565b5f607e8161080d565b5f8161077a57506001919050565b5b81156107905760089190911c9060010161077b565b919050565b8060808310600181146107cd576107ab8461076c565b60808101835360018301925084816020036008021b83528083019250506107ee565b84841516600181146107e1578483536107e6565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061082060018c83610795565b905061082e60018983610795565b905061083a89826107f6565b905061084860018b83610795565b905060018614600181146108b05760388710600181146108955761086b8861076c565b8060b701845360018401935088816020036008021b845280840193505087898437918701916108aa565b87608001835360018301925087898437918701915b506108c1565b6108be5f89355f1a84610795565b91505b506108cc8c826107f6565b90508181035f8060388310600181146108ff576108e88461076c565b60f78101600882021b85179350600101915061090a565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b61095b6112c0565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6109f06112c0565b6109f95f611341565b565b5f6067548210610a0c57505f919050565b600882901c5f908152606a6020526040902054600160ff84161b1615156104d5565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610af3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016105bc565b6067548110610b5e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d657373616765000000000060448201526064016105bc565b600881901c5f908152606a6020526040902054600160ff83161b16610bdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f64726f70206e6f6e2d736b6970706564206d657373616765000000000000000060448201526064016105bc565b600881901c5f90815260696020526040902054600160ff83161b1615610c61576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105bc565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610d7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016105bc565b610d858383836113b7565b3373111100000000000000000000000000000000111101610daa81865f8787876114e7565b5050505050565b6066545f908210610e1e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e676500000000000060448201526064016105bc565b60668281548110610e3157610e316119c9565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610f06576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f617465776179000000000000000000000000000000000000000000000000000060648201526084016105bc565b73ffffffffffffffffffffffffffffffffffffffff86163b15610f85576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f6f6e6c7920454f4100000000000000000000000000000000000000000000000060448201526064016105bc565b610f908383836113b7565b610f9e8686868686866114e7565b505050505050565b610fae6112c0565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c591015b60405180910390a15050565b610ffc6112c0565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead3663299101610fe8565b5f54610100900460ff161580801561105857505f54600160ff909116105b806110715750303b15801561107157505f5460ff166001145b6110fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105bc565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611159575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b611161611598565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015611204575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610756565b505050565b6112116112c0565b73ffffffffffffffffffffffffffffffffffffffff81166112b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105bc565b6112bd81611341565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146109f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105bc565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606854831115611449576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d697400000000000000000000000000000000000000000000000000000060648201526084016105bc565b6010810261520801808410156114e1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e736963206761730000000000000000000000000060648201526084016105bc565b50505050565b6066545f6114fa8883888a898989610763565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611586908a9087908b908b908b906119f6565b60405180910390a35050505050505050565b5f54610100900460ff1661162e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105bc565b6109f95f54610100900460ff166116c7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105bc565b6109f933611341565b5f602082840312156116e0575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610790575f80fd5b5f806040838503121561171b575f80fd5b611724836116e7565b946020939093013593505050565b5f805f60608486031215611744575f80fd5b505081359360208301359350604090920135919050565b5f8083601f84011261176b575f80fd5b50813567ffffffffffffffff811115611782575f80fd5b602083019150836020828501011115611799575f80fd5b9250929050565b5f805f805f805f60c0888a0312156117b6575f80fd5b6117bf886116e7565b965060208801359550604088013594506117db606089016116e7565b93506080880135925060a088013567ffffffffffffffff8111156117fd575f80fd5b6118098a828b0161175b565b989b979a50959850939692959293505050565b5f6020828403121561182c575f80fd5b6104d2826116e7565b5f805f8060608587031215611848575f80fd5b611851856116e7565b935060208501359250604085013567ffffffffffffffff811115611873575f80fd5b61187f8782880161175b565b95989497509550505050565b5f805f805f8060a087890312156118a0575f80fd5b6118a9876116e7565b95506118b7602088016116e7565b94506040870135935060608701359250608087013567ffffffffffffffff8111156118e0575f80fd5b6118ec89828a0161175b565b979a9699509497509295939492505050565b5f806040838503121561190f575f80fd5b8235915061191f602084016116e7565b90509250929050565b5f8060208385031215611939575f80fd5b823567ffffffffffffffff81111561194f575f80fd5b61195b8582860161175b565b90969095509350505050565b5f60208284031215611977575f80fd5b81518015158114611986575f80fd5b9392505050565b80820281158282048414176104d5577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a" +var L1MessageQueueWithGasPriceOracleDeployedBin = "0x608060405234801561000f575f80fd5b506004361061019a575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ac578063e3176bd5146103c6578063f2fde38b146103cf578063fd0ad31e146103e2575f80fd5b8063d5ad4a9714610373578063d99bc80e14610386578063da35a26f14610399575f80fd5b8063bb7862ca116100c3578063bb7862ca14610319578063bdc6f0a014610339578063c27606771461034c575f80fd5b80639b159782146102ea578063a85006ca146102fd578063ae453cd514610306575f80fd5b80635f9cd92e116101485780638da5cb5b116101235780638da5cb5b1461029257806391652461146102b0578063927ede2d146102c3575f80fd5b80635f9cd92e1461022b578063715018a61461023e5780638770d70714610246575f80fd5b80633e6dada1116101785780633e6dada1146101ec5780635ad9945a1461020f5780635e45da2314610222575f80fd5b806329aa604b1461019e5780633c7f5283146101c45780633e4cbbe6146101d9575b5f80fd5b6101b16101ac366004611553565b6103ea565b6040519081526020015b60405180910390f35b6101d76101d236600461156a565b610409565b005b6101b16101e73660046115ad565b6105c8565b6101ff6101fa366004611553565b61067c565b60405190151581526020016101bb565b6101b161021d36600461161a565b61069e565b6101b160685481565b6101d7610239366004611696565b61088e565b6101d7610923565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101bb565b60335473ffffffffffffffffffffffffffffffffffffffff1661026d565b6101d76102be366004611553565b610936565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d76102f83660046116af565b610b3c565b6101b160675481565b6101b1610314366004611553565b610c38565b606b5461026d9073ffffffffffffffffffffffffffffffffffffffff1681565b6101d7610347366004611705565b610cc8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d7610381366004611553565b610e2d565b6101d7610394366004611553565b610e73565b6101d76103a7366004611778565b610eb9565b6101b16103ba3660046117a2565b60100261520801919050565b6101b160655481565b6101d76103dd366004611696565b61108c565b6066546101b1565b606681815481106103f9575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b610100811115610519576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f706f7020746f6f206d616e79206d65737361676573000000000000000000000060448201526064016104a4565b8160675414610584576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f737461727420696e646578206d69736d6174636800000000000000000000000060448201526064016104a4565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa158015610636573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061065a91906117e1565b1561066657505f610676565b6065546106739083611807565b90505b92915050565b600881901c5f90815260696020526040812054600160ff84161b161515610676565b5f607e81610748565b5f816106b557506001919050565b5b81156106cb5760089190911c906001016106b6565b919050565b806080831060018114610708576106e6846106a7565b60808101835360018301925084816020036008021b8352808301925050610729565b848415166001811461071c57848353610721565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061075b60018c836106d0565b9050610769600189836106d0565b90506107758982610731565b905061078360018b836106d0565b905060018614600181146107eb5760388710600181146107d0576107a6886106a7565b8060b701845360018401935088816020036008021b845280840193505087898437918701916107e5565b87608001835360018301925087898437918701915b506107fc565b6107f95f89355f1a846106d0565b91505b506108078c82610731565b90508181035f80603883106001811461083a57610823846106a7565b60f78101600882021b851793506001019150610845565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b610896611143565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61092b611143565b6109345f6111c4565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016104a4565b6067548110610a66576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d657373616765000000000060448201526064016104a4565b600881901c5f90815260696020526040902054600160ff83161b1615610ae8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016104a4565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610c01576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016104a4565b610c0c83838361123a565b3373111100000000000000000000000000000000111101610c3181865f87878761136a565b5050505050565b6066545f908210610ca5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e676500000000000060448201526064016104a4565b60668281548110610cb857610cb8611843565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610d8d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f617465776179000000000000000000000000000000000000000000000000000060648201526084016104a4565b73ffffffffffffffffffffffffffffffffffffffff86163b15610e0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f6f6e6c7920454f4100000000000000000000000000000000000000000000000060448201526064016104a4565b610e1783838361123a565b610e2586868686868661136a565b505050505050565b610e35611143565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c591016105bc565b610e7b611143565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead36632991016105bc565b5f54610100900460ff1615808015610ed757505f54600160ff909116105b80610ef05750303b158015610ef057505f5460ff166001145b610f7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016104a4565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fd8575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610fe061141b565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015611087575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b611094611143565b73ffffffffffffffffffffffffffffffffffffffff8116611137576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016104a4565b611140816111c4565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610934576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016104a4565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156112cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d697400000000000000000000000000000000000000000000000000000060648201526084016104a4565b601081026152080180841015611364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e736963206761730000000000000000000000000060648201526084016104a4565b50505050565b6066545f61137d8883888a89898961069e565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611409908a9087908b908b908b90611870565b60405180910390a35050505050505050565b5f54610100900460ff166114b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016104a4565b6109345f54610100900460ff1661154a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016104a4565b610934336111c4565b5f60208284031215611563575f80fd5b5035919050565b5f806040838503121561157b575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff811681146106cb575f80fd5b5f80604083850312156115be575f80fd5b6115c78361158a565b946020939093013593505050565b5f8083601f8401126115e5575f80fd5b50813567ffffffffffffffff8111156115fc575f80fd5b602083019150836020828501011115611613575f80fd5b9250929050565b5f805f805f805f60c0888a031215611630575f80fd5b6116398861158a565b965060208801359550604088013594506116556060890161158a565b93506080880135925060a088013567ffffffffffffffff811115611677575f80fd5b6116838a828b016115d5565b989b979a50959850939692959293505050565b5f602082840312156116a6575f80fd5b6106738261158a565b5f805f80606085870312156116c2575f80fd5b6116cb8561158a565b935060208501359250604085013567ffffffffffffffff8111156116ed575f80fd5b6116f9878288016115d5565b95989497509550505050565b5f805f805f8060a0878903121561171a575f80fd5b6117238761158a565b95506117316020880161158a565b94506040870135935060608701359250608087013567ffffffffffffffff81111561175a575f80fd5b61176689828a016115d5565b979a9699509497509295939492505050565b5f8060408385031215611789575f80fd5b823591506117996020840161158a565b90509250929050565b5f80602083850312156117b3575f80fd5b823567ffffffffffffffff8111156117c9575f80fd5b6117d5858286016115d5565b90969095509350505050565b5f602082840312156117f1575f80fd5b81518015158114611800575f80fd5b9392505050565b8082028115828204841417610676577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L1MessageQueueWithGasPriceOracleStorageLayoutJSON), L1MessageQueueWithGasPriceOracleStorageLayout); err != nil { diff --git a/bindings/bindings/rollup.go b/bindings/bindings/rollup.go index 1f5814d07..755d06fc3 100644 --- a/bindings/bindings/rollup.go +++ b/bindings/bindings/rollup.go @@ -31,13 +31,12 @@ var ( // IRollupBatchDataInput is an auto generated low-level Go binding around an user-defined struct. type IRollupBatchDataInput struct { - Version uint8 - ParentBatchHeader []byte - BlockContexts []byte - SkippedL1MessageBitmap []byte - PrevStateRoot [32]byte - PostStateRoot [32]byte - WithdrawalRoot [32]byte + Version uint8 + ParentBatchHeader []byte + BlockContexts []byte + PrevStateRoot [32]byte + PostStateRoot [32]byte + WithdrawalRoot [32]byte } // IRollupBatchSignatureInput is an auto generated low-level Go binding around an user-defined struct. @@ -49,8 +48,8 @@ type IRollupBatchSignatureInput struct { // RollupMetaData contains all meta data concerning the Rollup contract. var RollupMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_prevStateRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", - Bin: "0x60a060405234801562000010575f80fd5b5060405162004b1e38038062004b1e83398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516149c06200015e5f395f81816105d901526138fd01526149c05ff3fe608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610917578063d279c1911461092c578063d63b35491461094b575f80fd5b8063b3e0a509146108c6578063bedb86fb146108e5578063cd4edc6914610904575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d314610873578063b348442514610888578063b35dac4e146108a7575f80fd5b8063a479265d14610814578063a4f209b014610829578063abc8d68d14610848575f80fd5b8063910129d41161016c578063910129d41461079657806397fc007c146107c7578063a415d8dc146107e6575f80fd5b806388b1ea09146106b05780638da5cb5b146106c95780638f1d3776146106e6575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d1461065e578063715018a61461067d578063728cdbca14610691575f80fd5b80635f77cf1d146105c8578063612672901461061457806368589dfa14610633575f80fd5b806357e0af6c1161022c57806357e0af6c146105325780635c975abb146105515780635ef7a94a14610568575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046142d3565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614305565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614363565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046142d3565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046143ab565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046142d3565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046142d3565b611324565b34801561047c575f80fd5b5061036961048b3660046142d3565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046142d3565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b34801561053d575f80fd5b5061039661054c3660046142d3565b611352565b34801561055c575f80fd5b5060655460ff1661033f565b348015610573575f80fd5b506105a86105823660046142d3565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105d3575f80fd5b506105fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b34801561061f575f80fd5b5061039661062e3660046142d3565b6113fd565b34801561063e575f80fd5b5061036961064d3660046142d3565b60ab6020525f908152604090205481565b348015610669575f80fd5b50610396610678366004614305565b611612565b348015610688575f80fd5b506103966116cf565b34801561069c575f80fd5b506103966106ab3660046143ea565b6116e2565b3480156106bb575f80fd5b5060a65461033f9060ff1681565b3480156106d4575f80fd5b506033546001600160a01b03166104e6565b3480156106f1575f80fd5b506107526107003660046142d3565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107a1575f80fd5b5061033f6107b03660046142d3565b5f90815260a4602052604090206003015460ff1690565b3480156107d2575f80fd5b506103966107e1366004614305565b611a25565b3480156107f1575f80fd5b5061033f610800366004614305565b609f6020525f908152604090205460ff1681565b34801561081f575f80fd5b5061036960995481565b348015610834575f80fd5b506103966108433660046142d3565b611b08565b348015610853575f80fd5b50610369610862366004614305565b60a56020525f908152604090205481565b34801561087e575f80fd5b5061036960a85481565b348015610893575f80fd5b506103966108a2366004614445565b611bb8565b3480156108b2575f80fd5b506103966108c1366004614305565b611dfd565b3480156108d1575f80fd5b506103966108e03660046143ab565b611e56565b3480156108f0575f80fd5b506103966108ff3660046144b9565b6121a6565b6103966109123660046144d4565b612301565b348015610922575f80fd5b5061036960985481565b348015610937575f80fd5b50610396610946366004614305565b6128cd565b61039661095936600461450a565b61298c565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046142d3565b6132b6565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046142d3565b613300565b3480156109db575f80fd5b506103966109ea366004614305565b6133a3565b3480156109fa575f80fd5b5061036960a95481565b610a0c613430565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade613430565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b39858561348a565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856145a4565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826145b7565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d07816132b6565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906145a4565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e876134a5565b5f80610e93848461348a565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611324565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f63816132b6565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856145b7565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f060f98401601185015160c01c600986015160c01c6134f8565b60a25f6111fe6001846145b7565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123790846145b7565b81526020019081526020015f205f905560a45f60018361125791906145b7565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611300866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134c57505f82815260a1602052604090205415155b92915050565b61135a613430565b5f8111801561136b57506099548114155b6113b75760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561141d57505f5460ff8083169116105b61148f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ca5f5460ff1690565b60ff1660021461151c5760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b8161158f5760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab60205260409020546115b857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020016113f1565b61161a613430565b6001600160a01b0381165f908152609f602052604090205460ff166116815760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b6116d7613430565b6116e05f6135c1565b565b5f54610100900460ff161580801561170057505f54600160ff909116105b806117195750303b15801561171957505f5460ff166001145b61178b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff1916600117905580156117c9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b03861615806117e657506001600160a01b038516155b1561181d576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166118735760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b61187b61362a565b6118836136ae565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611a1c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611a2d613430565b6001600160a01b03811615801590611a535750609c546001600160a01b03828116911614155b611a9f5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611b10613430565b5f81118015611b20575060648111155b8015611b2e575060a9548114155b611b7a5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b022391016113f1565b60a85415611c085760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611c106134a5565b5f80611c1c868661348a565b915091505f611c2f836001015160c01c90565b5f81815260a160205260409020549091508214611c8e5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b611c97816132b6565b611ce35760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291611d3c916145a4565b11611db2575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152611dad91839190613732565b611a1c565b611dbd83868661388e565b611a1c81336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613a41565b611e05613430565b60aa80545f909155611e178282613b0d565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d8791016113f1565b611e5e613430565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415611ed55760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f80611ee1848461348a565b915091505f611ef4836001015160c01c90565b90508015611f445760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f611f50846079015190565b905080611f9f5760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c15611ff45760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612000856019015190565b0361204d5760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612079856039015190565b146120c65760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6121ae613430565b80156122cf576121bc613bb8565b60a65460ff161561228e5760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a590925282208054919290916122109084906145a4565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b6122d7613c12565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336122b1565b50565b335f908152609f602052604090205460ff1661235f5760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a854156123af5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b6123b76134a5565b60a65460ff161561240a5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d54106124655760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a1602052604090205481146124cc5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6124df8267ffffffffffffffff16611324565b61252b5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b0316156125a65760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a2602052604090206001015442106126365760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612686573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126aa91906145ca565b3410156126f95760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161284b91815260200190565b60405180910390a35f609d54600161286391906145a4565b90505b609e5481116128bb578267ffffffffffffffff1681146128a9576099545f82815260a26020526040812060010180549091906128a39084906145a4565b90915550505b806128b3816145e1565b915050612866565b505060a6805460ff1916600117905550565b335f90815260a560205260408120549081900361292c5760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556129458282613b0d565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161298091815260200190565b60405180910390a25050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156129f8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a1c9190614618565b612a685760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a85415612ab85760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612ac06134a5565b612acd6020830183614633565b60ff1615612b1d5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f612b2b6040840184614653565b91505080612b7b5760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b6080830135612bcc5760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a0830135612c1d5760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f80612c34612c2f6020870187614653565b61348a565b915091505f612c47836001015160c01c90565b90505f60a181612c588460016145a4565b81526020019081526020015f205414612cb35760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e548114612d045760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a160205260409020548214612d605760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab6020526040902054608087013514612dc05760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f612dcf846011015160c01c90565b90505f8080612e2e612de460408c018c614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150612e29905060608f018f614653565b613c4b565b948501949384019392509050612e4760608b018b614653565b905061010060ff85010460200214612ea15760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b600194909401935f804915612eb7575f49612ed9565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f612ee960608d018d614653565b612ef5915060f96145a4565b90506040519850602081028901604052612f23898d5f016020810190612f1b9190614633565b60ff16613dcc565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a0152612f9089612f7160208e018e614653565b604051612f7f9291906146b4565b604051809103902060b99190910152565b60d98901889052612fad89612fa860608f018f614653565b613dd3565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156130135760a7545f90815260a460205260409020600201546099544291613006916145a4565b61301091906145b7565b90505b6040518060800160405280428152602001826098544261303391906145a4565b61303d91906145a4565b815260200161308e8f80604001906130559190614653565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613ddf92505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015613102573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061312691906145ca565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c359061318e90613188908f018f614653565b5f613e36565b5f8e806040019061319f9190614653565b6040518663ffffffff1660e01b81526004016131bf95949392919061470a565b602060405180830381865afa1580156131da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131fe9190614618565b6132705760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134c5750505f90815260a46020526040902060030154610100900460ff161590565b613308613430565b5f8111801561331957506098548114155b6133655760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a43791016113f1565b6133ab613430565b6001600160a01b0381166134275760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b6122fe816135c1565b6033546001600160a01b031633146116e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134978585613e8a565b812090969095509350505050565b60655460ff16156116e05760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361350457505050565b8082035f805b83811015610e275761010081850381111561352457508084035b8651609b546040517f55f613ce0000000000000000000000000000000000000000000000000000000081526004810187905260248101849052604481018390526020909901989194506001600160a01b0316906355f613ce906064015f604051808303815f87803b158015613597575f80fd5b505af11580156135a9573d5f803e3d5ffd5b5050505061010084019350506101008101905061350a565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166136a65760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613f61565b5f54610100900460ff1661372a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0613fe9565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af11580156137b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137da91906145ca565b5f86815260a460205260409020600101549091506137f99082906145a4565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906138389084906145a4565b909155505060405161384b90849061477d565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b806138db5760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f6138ea846001015160c01c90565b90505f6138f8856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613927876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a8486139e9885160f81c90565b858888866040518663ffffffff1660e01b8152600401613a0d9594939291906147a9565b5f6040518083038186803b158015613a23575f80fd5b505afa158015613a35573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613a6590846147da565b613a6f91906147f1565b9050613a7b81836145b7565b60aa5f828254613a8b91906145a4565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613ab79084906145a4565b9091555050604051613aca90849061477d565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613bb4575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613b5c576040519150601f19603f3d011682016040523d82523d5f602084013e613b61565b606091505b5050905080613bb25760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613bc06134a5565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613bf53390565b6040516001600160a01b03909116815260200160405180910390a1565b613c1a61406e565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613bf5565b60405185515f91829160208901919081908490613c699085906140c0565b90506002840193505f5b81811015613ced57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613cc3603c836147da565b613ccd90876145a4565b90505f613cde82603a015160f01c90565b97909701965050600101613c73565b506020850282016040525b8015613db8575f613d0d85603a015160f01c90565b9050613d1d83828d8d8d8d614155565b92505f613d2e866038015160f01c90565b905081811015613d805760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613cf8565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f613dfa8286516140c0565b90505f5b613e096001836145b7565b811015613e1f57603c9390930192600101613dfe565b505f613e2c845160c01c90565b9695505050505050565b60605f80808080613e49888a018a614916565b9550955095509550955050818710613e67579450613e839350505050565b838710613e7b578295505050505050613e83565b509293505050505b9392505050565b5f8160f9811015613edd5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040525f613efb836009015160c01c90565b905061010060ff82010460200260f9018214613f595760405162461bcd60e51b815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610a70565b509250929050565b5f54610100900460ff16613fdd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140655760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6116e0336135c1565b60655460ff166116e05760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f6140cc835160f01c90565b9050805f03614107576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614112603c826147da565b61411d9060026145a4565b821461134c576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614164575085613e2c565b609b546001600160a01b03165f80805b8981101561424a5760ff89169150600889901c811580614192575082155b156141a1578060200288013593505b600184841c165f03614239576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f906001600160a01b0387169063ae453cd590602401602060405180830381865afa15801561420b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061422f91906145ca565b8d52506020909b019a5b506001988901989788019701614174565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c600116156142c55760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610a70565b509798975050505050505050565b5f602082840312156142e3575f80fd5b5035919050565b80356001600160a01b0381168114614300575f80fd5b919050565b5f60208284031215614315575f80fd5b613e83826142ea565b5f8083601f84011261432e575f80fd5b50813567ffffffffffffffff811115614345575f80fd5b60208301915083602082850101111561435c575f80fd5b9250929050565b5f805f60408486031215614375575f80fd5b833567ffffffffffffffff81111561438b575f80fd5b6143978682870161431e565b909790965060209590950135949350505050565b5f80602083850312156143bc575f80fd5b823567ffffffffffffffff8111156143d2575f80fd5b6143de8582860161431e565b90969095509350505050565b5f805f805f8060c087890312156143ff575f80fd5b614408876142ea565b9550614416602088016142ea565b9450614424604088016142ea565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614458575f80fd5b843567ffffffffffffffff8082111561446f575f80fd5b61447b8883890161431e565b90965094506020870135915080821115614493575f80fd5b506144a08782880161431e565b95989497509550505050565b80151581146122fe575f80fd5b5f602082840312156144c9575f80fd5b8135613e83816144ac565b5f80604083850312156144e5575f80fd5b823567ffffffffffffffff811681146144fc575f80fd5b946020939093013593505050565b5f806040838503121561451b575f80fd5b823567ffffffffffffffff80821115614532575f80fd5b9084019060e08287031215614545575f80fd5b9092506020840135908082111561455a575f80fd5b5083016060818603121561456c575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134c5761134c614577565b8181038181111561134c5761134c614577565b5f602082840312156145da575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361461157614611614577565b5060010190565b5f60208284031215614628575f80fd5b8151613e83816144ac565b5f60208284031215614643575f80fd5b813560ff81168114613e83575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614686575f80fd5b83018035915067ffffffffffffffff8211156146a0575f80fd5b60200191503681900382131561435c575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156147545784516001600160a01b03168352938301939183019160010161472f565b5050876040860152848103606086015261476f8187896146c3565b9a9950505050505050505050565b5f82515f5b8181101561479c5760208186018101518583015201614782565b505f920191825250919050565b858152846020820152608060408201525f6147c86080830185876146c3565b90508260608301529695505050505050565b808202811582820484141761134c5761134c614577565b5f82614824577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112614865575f80fd5b8135602067ffffffffffffffff8083111561488257614882614829565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156148c5576148c5614829565b60405293845260208187018101949081019250878511156148e4575f80fd5b6020870191505b8482101561490b576148fc826142ea565b835291830191908301906148eb565b979650505050505050565b5f805f805f8060c0878903121561492b575f80fd5b86359550602087013567ffffffffffffffff80821115614949575f80fd5b6149558a838b01614856565b9650604089013595506060890135915080821115614971575f80fd5b61497d8a838b01614856565b94506080890135935060a0890135915080821115614999575f80fd5b506149a689828a01614856565b915050929550929550929556fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_prevStateRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", + Bin: "0x60a060405234801562000010575f80fd5b506040516200493f3803806200493f83398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516147e16200015e5f395f81816105ec0152613a7b01526147e15ff3fe608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063cd4edc69116100b7578063cd4edc6914610917578063ce5db8d61461092a578063d279c1911461093f575f80fd5b8063b35dac4e146108ba578063b3e0a509146108d9578063bedb86fb146108f8575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d1461085b578063b31a77d314610886578063b34844251461089b575f80fd5b8063a415d8dc146107f9578063a479265d14610827578063a4f209b01461083c575f80fd5b80638f1d37761161016c5780638f1d3776146106f9578063910129d4146107a957806397fc007c146107da575f80fd5b8063728cdbca146106a457806388b1ea09146106c35780638da5cb5b146106dc575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa146106465780636c578c1d14610671578063715018a614610690575f80fd5b80635ef7a94a1461057b5780635f77cf1d146105db5780636126729014610627575f80fd5b80634a8d544f1161022c5780634a8d544f1461053257806357e0af6c146105455780635c975abb14610564575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046140f4565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614126565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614184565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046140f4565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046141cc565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046140f4565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046140f4565b611326565b34801561047c575f80fd5b5061036961048b3660046140f4565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046140f4565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b61039661054036600461420b565b611354565b348015610550575f80fd5b5061039661055f3660046140f4565b611bd7565b34801561056f575f80fd5b5060655460ff1661033f565b348015610586575f80fd5b506105bb6105953660046140f4565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105e6575f80fd5b5061060e7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610632575f80fd5b506103966106413660046140f4565b611c82565b348015610651575f80fd5b506103696106603660046140f4565b60ab6020525f908152604090205481565b34801561067c575f80fd5b5061039661068b366004614126565b611e97565b34801561069b575f80fd5b50610396611f54565b3480156106af575f80fd5b506103966106be366004614278565b611f67565b3480156106ce575f80fd5b5060a65461033f9060ff1681565b3480156106e7575f80fd5b506033546001600160a01b03166104e6565b348015610704575f80fd5b506107656107133660046140f4565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107b4575f80fd5b5061033f6107c33660046140f4565b5f90815260a4602052604090206003015460ff1690565b3480156107e5575f80fd5b506103966107f4366004614126565b6122aa565b348015610804575f80fd5b5061033f610813366004614126565b609f6020525f908152604090205460ff1681565b348015610832575f80fd5b5061036960995481565b348015610847575f80fd5b506103966108563660046140f4565b61238d565b348015610866575f80fd5b50610369610875366004614126565b60a56020525f908152604090205481565b348015610891575f80fd5b5061036960a85481565b3480156108a6575f80fd5b506103966108b53660046142d3565b61243d565b3480156108c5575f80fd5b506103966108d4366004614126565b612682565b3480156108e4575f80fd5b506103966108f33660046141cc565b6126db565b348015610903575f80fd5b50610396610912366004614347565b612a2b565b610396610925366004614362565b612b86565b348015610935575f80fd5b5061036960985481565b34801561094a575f80fd5b50610396610959366004614126565b613152565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046140f4565b613211565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046140f4565b61325b565b3480156109db575f80fd5b506103966109ea366004614126565b6132fe565b3480156109fa575f80fd5b5061036960a95481565b610a0c61338b565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade61338b565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b3985856133e5565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856143c5565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826143d8565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d0781613211565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906143c5565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e87613400565b5f80610e9384846133e5565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611326565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f6381613211565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856143d8565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f26111e5846011015160c01c90565b600985015160c01c613453565b60a25f6112006001846143d8565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123990846143d8565b81526020019081526020015f205f905560a45f60018361125991906143d8565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611302866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134e57505f82815260a1602052604090205415155b92915050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156113c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e491906143eb565b6114305760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a854156114805760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611488613400565b6114956020830183614406565b60ff16156114e55760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f6114f36040840184614426565b915050806115435760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b60608301356115945760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60808301356115e55760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f806115fc6115f76020870187614426565b6133e5565b915091505f61160f836001015160c01c90565b90505f60a1816116208460016143c5565b81526020019081526020015f20541461167b5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e5481146116cc5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a1602052604090205482146117285760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab60205260409020546060870135146117885760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f611797846011015160c01c90565b90505f80806117e96117ac60408c018c614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508792508891506135109050565b600196909601959485019493840193925090505f80491561180b575f4961182d565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b60408051611f2081019091529850905060f96118588961185060208f018f614406565b60ff1661368d565b60c087811b60018b015285811b60098b015286901b60118a01526019890183905260608c013560598a015260808c013560798a015260a08c013560998a01526118c7896118a860208e018e614426565b6040516118b6929190614487565b604051809103902060b99190910152565b60d98901889052603989018290528089205f88815260a1602090815260408083209390935560ab905290812060808e0135905560a65460ff16156119345760a7545f90815260a460205260409020600201546099544291611927916143c5565b61193191906143d8565b90505b6040518060800160405280428152602001826098544261195491906143c5565b61195e91906143c5565b81526020016119af8f80604001906119769190614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061369492505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015611a23573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a479190614496565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590611aaf90611aa9908f018f614426565b5f6136eb565b5f8e8060400190611ac09190614426565b6040518663ffffffff1660e01b8152600401611ae09594939291906144f4565b602060405180830381865afa158015611afb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b1f91906143eb565b611b915760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b611bdf61338b565b5f81118015611bf057506099548114155b611c3c5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff16158015611ca257505f5460ff8083169116105b611d145760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611d4f5f5460ff1690565b60ff16600214611da15760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b81611e145760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab6020526040902054611e3d57609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611c76565b611e9f61338b565b6001600160a01b0381165f908152609f602052604090205460ff16611f065760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b611f5c61338b565b611f655f61373f565b565b5f54610100900460ff1615808015611f8557505f54600160ff909116105b80611f9e5750303b158015611f9e57505f5460ff166001145b6120105760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff19166001179055801561204e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061206b57506001600160a01b038516155b156120a2576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166120f85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b6121006137a8565b61210861382c565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156122a1575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6122b261338b565b6001600160a01b038116158015906122d85750609c546001600160a01b03828116911614155b6123245760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61239561338b565b5f811180156123a5575060648111155b80156123b3575060a9548114155b6123ff5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611c76565b60a8541561248d5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612495613400565b5f806124a186866133e5565b915091505f6124b4836001015160c01c90565b5f81815260a1602052604090205490915082146125135760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b61251c81613211565b6125685760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff1916905560995460029091015442916125c1916143c5565b11612637575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152612632918391906138b0565b6122a1565b612642838686613a0c565b6122a181336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613bbf565b61268a61338b565b60aa80545f90915561269c8282613c8b565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611c76565b6126e361338b565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea541561275a5760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f8061276684846133e5565b915091505f612779836001015160c01c90565b905080156127c95760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f6127d5846079015190565b9050806128245760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c156128795760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612885856019015190565b036128d25760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440146128fe856039015190565b1461294b5760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b612a3361338b565b8015612b5457612a41613d36565b60a65460ff1615612b135760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091612a959084906143c5565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612b5c613d90565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612b36565b50565b335f908152609f602052604090205460ff16612be45760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a85415612c345760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612c3c613400565b60a65460ff1615612c8f5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d5410612cea5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a160205260409020548114612d515760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b612d648267ffffffffffffffff16611326565b612db05760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b031615612e2b5760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a260205260409020600101544210612ebb5760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f0b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f2f9190614496565b341015612f7e5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516130d091815260200190565b60405180910390a35f609d5460016130e891906143c5565b90505b609e548111613140578267ffffffffffffffff16811461312e576099545f82815260a26020526040812060010180549091906131289084906143c5565b90915550505b8061313881614567565b9150506130eb565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036131b15760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556131ca8282613c8b565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161320591815260200190565b60405180910390a25050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134e5750505f90815260a46020526040902060030154610100900460ff161590565b61326361338b565b5f8111801561327457506098548114155b6132c05760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611c76565b61330661338b565b6001600160a01b0381166133825760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b612b838161373f565b6033546001600160a01b03163314611f655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6133f28585613dc9565b812090969095509350505050565b60655460ff1615611f655760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361345e575050565b8082035f5b8281101561350a5761010081840381111561347d57508083035b609b546040517f3c7f528300000000000000000000000000000000000000000000000000000000815260048101859052602481018390526001600160a01b0390911690633c7f5283906044015f604051808303815f87803b1580156134e0575f80fd5b505af11580156134f2573d5f803e3d5ffd5b50505050610100830192505061010081019050613463565b50505050565b60405183515f9182916020870191908190849061352e908590613e32565b90506002840193505f5b818110156135b257603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613588603c8361459e565b61359290876143c5565b90505f6135a382603a015160f01c90565b97909701965050600101613538565b506020850282016040525b801561367b575f6135d285603a015160f01c90565b90506135e083828b8b613ec7565b92505f6135f1866038015160f01c90565b9050818110156136435760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50978801979690960195603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016135bd565b50819003902096919550909350505050565b8082535050565b5f805f6020840190506002810191505f6136af828651613e32565b90505f5b6136be6001836143d8565b8110156136d457603c93909301926001016136b3565b505f6136e1845160c01c90565b9695505050505050565b60605f808080806136fe888a018a6146a2565b955095509550955095505081871061371c5794506137389350505050565b838710613730578295505050505050613738565b509293505050505b9392505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166138245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f65613f95565b5f54610100900460ff166138a85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f6561401d565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613934573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139589190614496565b5f86815260a460205260409020600101549091506139779082906143c5565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906139b69084906143c5565b90915550506040516139c990849061473f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613a595760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f613a68846001015160c01c90565b90505f613a76856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613aa5876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a848613b67885160f81c90565b858888866040518663ffffffff1660e01b8152600401613b8b95949392919061476b565b5f6040518083038186803b158015613ba1575f80fd5b505afa158015613bb3573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613be3908461459e565b613bed919061479c565b9050613bf981836143d8565b60aa5f828254613c0991906143c5565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613c359084906143c5565b9091555050604051613c4890849061473f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613d32575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613cda576040519150601f19603f3d011682016040523d82523d5f602084013e613cdf565b606091505b5050905080613d305760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613d3e613400565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613d733390565b6040516001600160a01b03909116815260200160405180910390a1565b613d986140a2565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613d73565b5f8160f9811015613e1c5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040529250929050565b5f613e3e835160f01c90565b9050805f03613e79576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e84603c8261459e565b613e8f9060026143c5565b821461134e576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f03613ed6575083613f8d565b609b546001600160a01b03165f5b85811015613f87576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f906001600160a01b0384169063ae453cd590602401602060405180830381865afa158015613f4a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f6e9190614496565b8852506020909601956001948501949384019301613ee4565b50859150505b949350505050565b5f54610100900460ff166140115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140995760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f653361373f565b60655460ff16611f655760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f60208284031215614104575f80fd5b5035919050565b80356001600160a01b0381168114614121575f80fd5b919050565b5f60208284031215614136575f80fd5b6137388261410b565b5f8083601f84011261414f575f80fd5b50813567ffffffffffffffff811115614166575f80fd5b60208301915083602082850101111561417d575f80fd5b9250929050565b5f805f60408486031215614196575f80fd5b833567ffffffffffffffff8111156141ac575f80fd5b6141b88682870161413f565b909790965060209590950135949350505050565b5f80602083850312156141dd575f80fd5b823567ffffffffffffffff8111156141f3575f80fd5b6141ff8582860161413f565b90969095509350505050565b5f806040838503121561421c575f80fd5b823567ffffffffffffffff80821115614233575f80fd5b9084019060c08287031215614246575f80fd5b9092506020840135908082111561425b575f80fd5b5083016060818603121561426d575f80fd5b809150509250929050565b5f805f805f8060c0878903121561428d575f80fd5b6142968761410b565b95506142a46020880161410b565b94506142b26040880161410b565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156142e6575f80fd5b843567ffffffffffffffff808211156142fd575f80fd5b6143098883890161413f565b90965094506020870135915080821115614321575f80fd5b5061432e8782880161413f565b95989497509550505050565b8015158114612b83575f80fd5b5f60208284031215614357575f80fd5b81356137388161433a565b5f8060408385031215614373575f80fd5b823567ffffffffffffffff8116811461438a575f80fd5b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134e5761134e614398565b8181038181111561134e5761134e614398565b5f602082840312156143fb575f80fd5b81516137388161433a565b5f60208284031215614416575f80fd5b813560ff81168114613738575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614459575f80fd5b83018035915067ffffffffffffffff821115614473575f80fd5b60200191503681900382131561417d575f80fd5b818382375f9101908152919050565b5f602082840312156144a6575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b8181101561453e5784516001600160a01b031683529383019391830191600101614519565b505087604086015284810360608601526145598187896144ad565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361459757614597614398565b5060010190565b808202811582820484141761134e5761134e614398565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145f1575f80fd5b8135602067ffffffffffffffff8083111561460e5761460e6145b5565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614651576146516145b5565b6040529384526020818701810194908101925087851115614670575f80fd5b6020870191505b84821015614697576146888261410b565b83529183019190830190614677565b979650505050505050565b5f805f805f8060c087890312156146b7575f80fd5b86359550602087013567ffffffffffffffff808211156146d5575f80fd5b6146e18a838b016145e2565b96506040890135955060608901359150808211156146fd575f80fd5b6147098a838b016145e2565b94506080890135935060a0890135915080821115614725575f80fd5b5061473289828a016145e2565b9150509295509295509295565b5f82515f5b8181101561475e5760208186018101518583015201614744565b505f920191825250919050565b858152846020820152608060408201525f61478a6080830185876144ad565b90508260608301529695505050505050565b5f826147cf577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea164736f6c6343000818000a", } // RollupABI is the input ABI used to generate the binding from. @@ -1261,23 +1260,23 @@ func (_Rollup *RollupTransactorSession) ClaimReward(receiver common.Address) (*t return _Rollup.Contract.ClaimReward(&_Rollup.TransactOpts, receiver) } -// CommitBatch is a paid mutator transaction binding the contract method 0xd63b3549. +// CommitBatch is a paid mutator transaction binding the contract method 0x4a8d544f. // -// Solidity: function commitBatch((uint8,bytes,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() +// Solidity: function commitBatch((uint8,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() func (_Rollup *RollupTransactor) CommitBatch(opts *bind.TransactOpts, batchDataInput IRollupBatchDataInput, batchSignatureInput IRollupBatchSignatureInput) (*types.Transaction, error) { return _Rollup.contract.Transact(opts, "commitBatch", batchDataInput, batchSignatureInput) } -// CommitBatch is a paid mutator transaction binding the contract method 0xd63b3549. +// CommitBatch is a paid mutator transaction binding the contract method 0x4a8d544f. // -// Solidity: function commitBatch((uint8,bytes,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() +// Solidity: function commitBatch((uint8,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() func (_Rollup *RollupSession) CommitBatch(batchDataInput IRollupBatchDataInput, batchSignatureInput IRollupBatchSignatureInput) (*types.Transaction, error) { return _Rollup.Contract.CommitBatch(&_Rollup.TransactOpts, batchDataInput, batchSignatureInput) } -// CommitBatch is a paid mutator transaction binding the contract method 0xd63b3549. +// CommitBatch is a paid mutator transaction binding the contract method 0x4a8d544f. // -// Solidity: function commitBatch((uint8,bytes,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() +// Solidity: function commitBatch((uint8,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() func (_Rollup *RollupTransactorSession) CommitBatch(batchDataInput IRollupBatchDataInput, batchSignatureInput IRollupBatchSignatureInput) (*types.Transaction, error) { return _Rollup.Contract.CommitBatch(&_Rollup.TransactOpts, batchDataInput, batchSignatureInput) } diff --git a/bindings/bindings/rollup_more.go b/bindings/bindings/rollup_more.go index 1003e5872..3581703c1 100644 --- a/bindings/bindings/rollup_more.go +++ b/bindings/bindings/rollup_more.go @@ -13,7 +13,7 @@ const RollupStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"co var RollupStorageLayout = new(solc.StorageLayout) -var RollupDeployedBin = "0x608060405260043610610306575f3560e01c806388b1ea0911610191578063b3e0a509116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610a0c578063f2fde38b14610a2b578063fb1e8b0414610a4a575f80fd5b8063ddd8a3dc146109ac578063de8b3035146109d8578063dff7827e146109f7575f80fd5b8063ce5db8d6116100b7578063ce5db8d614610965578063d279c1911461097a578063d63b354914610999575f80fd5b8063b3e0a50914610914578063bedb86fb14610933578063cd4edc6914610952575f80fd5b8063a479265d1161013c578063b31a77d311610117578063b31a77d3146108c1578063b3484425146108d6578063b35dac4e146108f5575f80fd5b8063a479265d14610862578063a4f209b014610877578063abc8d68d14610896575f80fd5b8063910129d41161016c578063910129d4146107e457806397fc007c14610815578063a415d8dc14610834575f80fd5b806388b1ea09146106d75780638da5cb5b146106f05780638f1d37761461071a575f80fd5b80632b7ac3f3116102515780635f77cf1d116101fc5780636c578c1d116101d75780636c578c1d14610685578063715018a6146106a4578063728cdbca146106b8575f80fd5b80635f77cf1d146105ef578063612672901461063b57806368589dfa1461065a575f80fd5b806357e0af6c1161022c57806357e0af6c146105595780635c975abb146105785780635ef7a94a1461058f575f80fd5b80632b7ac3f3146104c75780633b70c18a146105185780633e001b6614610544575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614dad565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614dec565b610a5f565b005b3480156103a3575f80fd5b506103966103b2366004614e4a565b610b83565b3480156103c2575f80fd5b5061033f6103d1366004614dad565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b50610396610408366004614e92565b610f6f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614dad565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614dad565b61156c565b34801561047c575f80fd5b5061036961048b366004614dad565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614dad565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161034b565b348015610523575f80fd5b50609b546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b34801561054f575f80fd5b5061036960aa5481565b348015610564575f80fd5b50610396610573366004614dad565b61159a565b348015610583575f80fd5b5060655460ff1661033f565b34801561059a575f80fd5b506105cf6105a9366004614dad565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105fa575f80fd5b506106227f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610646575f80fd5b50610396610655366004614dad565b61165f565b348015610665575f80fd5b50610369610674366004614dad565b60ab6020525f908152604090205481565b348015610690575f80fd5b5061039661069f366004614dec565b6118c2565b3480156106af575f80fd5b506103966119d1565b3480156106c3575f80fd5b506103966106d2366004614ed1565b6119e4565b3480156106e2575f80fd5b5060a65461033f9060ff1681565b3480156106fb575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104f3565b348015610725575f80fd5b50610793610734366004614dad565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107ef575f80fd5b5061033f6107fe366004614dad565b5f90815260a4602052604090206003015460ff1690565b348015610820575f80fd5b5061039661082f366004614dec565b611dad565b34801561083f575f80fd5b5061033f61084e366004614dec565b609f6020525f908152604090205460ff1681565b34801561086d575f80fd5b5061036960995481565b348015610882575f80fd5b50610396610891366004614dad565b611ed1565b3480156108a1575f80fd5b506103696108b0366004614dec565b60a56020525f908152604090205481565b3480156108cc575f80fd5b5061036960a85481565b3480156108e1575f80fd5b506103966108f0366004614f2c565b611f9b565b348015610900575f80fd5b5061039661090f366004614dec565b61226a565b34801561091f575f80fd5b5061039661092e366004614e92565b6122d0565b34801561093e575f80fd5b5061039661094d366004614fa0565b6126bc565b610396610960366004614fbb565b61284f565b348015610970575f80fd5b5061036960985481565b348015610985575f80fd5b50610396610994366004614dec565b612f64565b6103966109a7366004614ff1565b61304a565b3480156109b7575f80fd5b506097546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109e3575f80fd5b5061033f6109f2366004614dad565b613aed565b348015610a02575f80fd5b50610369609a5481565b348015610a17575f80fd5b50610396610a26366004614dad565b613b44565b348015610a36575f80fd5b50610396610a45366004614dec565b613c01565b348015610a55575f80fd5b5061036960a95481565b610a67613cb5565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610afb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b8b613cb5565b5f8111610bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610af2565b5f80610c008585613d36565b915091505f610c13836001015160c01c90565b5f81815260a160205260409020549091508214610c8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b5f60a181610c9a878561508b565b81526020019081526020015f205414610d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610af2565b609d548111610dc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b610dd060018261509e565b609e555b8315610f6757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610e1c81613aed565b15610ea2575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e7490849061508b565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610f1f575060a85481145b15610f29575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610dd4575b505050505050565b60a85415610fd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b610fe1613d51565b5f80610fed8484613d36565b915091505f611000836001015160c01c90565b5f81815260a160205260409020549091508214611079576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6110828161156c565b6110e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b6110f181613aed565b15611158576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003015460ff16156111d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610af2565b5f81815260a2602052604090206001015442101561124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610af2565b605983015160a05f61126060018561509e565b81526020019081526020015f2054146112d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f81815260a060205260409020541561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610af2565b80609d54600101146113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b609d819055600160a35f6113cd866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561143860f98401601185015160c01c600986015160c01c613dbe565b60a25f61144660018461509e565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061147f908461509e565b81526020019081526020015f205f905560a45f60018361149f919061509e565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611548866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061159457505f82815260a1602052604090205415155b92915050565b6115a2613cb5565b5f811180156115b357506099548114155b611619576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610af2565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561167f57505f5460ff8083169116105b61170b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556117465f5460ff1690565b60ff166002146117b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610af2565b8161183f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610af2565b609e545f90815260ab602052604090205461186857609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611653565b6118ca613cb5565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff16611958576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610af2565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b78565b6119d9613cb5565b6119e25f613e94565b565b5f54610100900460ff1615808015611a0257505f54600160ff909116105b80611a1b5750303b158015611a1b57505f5460ff166001145b611aa7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611b03575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff86161580611b3a575073ffffffffffffffffffffffffffffffffffffffff8516155b15611b71576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8716611bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610af2565b611bf6613f0a565b611bfe613fa8565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015611da4575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611db5613cb5565b73ffffffffffffffffffffffffffffffffffffffff811615801590611df55750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b611e5b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610af2565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b611ed9613cb5565b5f81118015611ee9575060648111155b8015611ef7575060a9548114155b611f5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610af2565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611653565b60a85415612005576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61200d613d51565b5f806120198686613d36565b915091505f61202c836001015160c01c90565b5f81815260a1602052604090205490915082146120a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6120ae81613aed565b612114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055609954600290910154429161218b9161508b565b1161221f575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f7574000000000000000000000000000000000000000000000000009183019190915261221a91839190614046565b611da4565b61222a8386866141c9565b611da481336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506143a3565b612272613cb5565b60aa80545f9091556122848282614489565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611653565b6122d8613cb5565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415612369576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610af2565b5f806123758484613d36565b915091505f612388836001015160c01c90565b905080156123f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610af2565b5f6123fe846079015190565b905080612467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610af2565b600984015160c01c156124d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610af2565b5f6124e2856019015190565b03612549576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610af2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612575856039015190565b146125dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610af2565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6126c4613cb5565b801561281d576126d261455b565b60a65460ff16156127cf5760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a5909252822080549192909161273390849061508b565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6128256145e0565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336127f2565b50565b335f908152609f602052604090205460ff166128c7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610af2565b60a85415612931576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b612939613d51565b60a65460ff16156129a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610af2565b8167ffffffffffffffff16609d5410612a1b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a160205260409020548114612a9c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b612aaf8267ffffffffffffffff1661156c565b612b15576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1615612bb7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a260205260409020600101544210612c61576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610af2565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612cef91906150b1565b341015612d58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b997634604051612ec491815260200190565b60405180910390a35f609d546001612edc919061508b565b90505b609e548111612f34578267ffffffffffffffff168114612f22576099545f82815260a2602052604081206001018054909190612f1c90849061508b565b90915550505b80612f2c816150c8565b915050612edf565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003612fdd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610af2565b335f90815260a56020526040812055612ff68282614489565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161303e91815260200190565b60405180910390a25050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa1580156130d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130f491906150ff565b61315a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610af2565b60a854156131c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b6131cc613d51565b6131d9602083018361511a565b60ff1615613243576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610af2565b5f613251604084018461513a565b915050806132bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610af2565b6080830135613326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610af2565b60a0830135613391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610af2565b5f806133a86133a3602087018761513a565b613d36565b915091505f6133bb836001015160c01c90565b90505f60a1816133cc84600161508b565b81526020019081526020015f205414613441576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610af2565b609e5481146134ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b5f81815260a160205260409020548214613522576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610af2565b5f81815260ab602052604090205460808701351461359c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f6135ab846011015160c01c90565b90505f808061360a6135c060408c018c61513a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613605905060608f018f61513a565b614637565b94850194938401939250905061362360608b018b61513a565b905061010060ff85010460200214613697576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610af2565b600194909401935f8049156136ad575f496136cf565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b90505f6136df60608d018d61513a565b6136eb915060f961508b565b90506040519850602081028901604052613719898d5f016020810190613711919061511a565b60ff166147d2565b60c087811b60018b015285811b60098b015286811b60118b015260198a0184905260808d013560598b015260a08d013560798b01528c013560998a01526137868961376760208e018e61513a565b60405161377592919061519b565b604051809103902060b99190910152565b60d989018890526137a38961379e60608f018f61513a565b6147d9565b603989018290528089205f88815260a1602090815260408083209390935560ab905290812060a08e0135905560a65460ff16156138095760a7545f90815260a4602052604090206002015460995442916137fc9161508b565b613806919061509e565b90505b60405180608001604052804281526020018260985442613829919061508b565b613833919061508b565b81526020016138848f806040019061384b919061513a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506147e592505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015613912573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061393691906150b1565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c35906139ab906139a5908f018f61513a565b5f61483c565b5f8e80604001906139bc919061513a565b6040518663ffffffff1660e01b81526004016139dc9594939291906151f1565b602060405180830381865afa1580156139f7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a1b91906150ff565b613aa7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16158015906115945750505f90815260a46020526040902060030154610100900460ff161590565b613b4c613cb5565b5f81118015613b5d57506098548114155b613bc3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610af2565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611653565b613c09613cb5565b73ffffffffffffffffffffffffffffffffffffffff8116613cac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610af2565b61284c81613e94565b60335473ffffffffffffffffffffffffffffffffffffffff1633146119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610af2565b5f805f613d438585614890565b812090969095509350505050565b60655460ff16156119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610af2565b805f03613dca57505050565b8082035f805b83811015610f6757610100818503811115613dea57508084035b8651609b546040517f55f613ce00000000000000000000000000000000000000000000000000000000815260048101879052602481018490526044810183905260209099019891945073ffffffffffffffffffffffffffffffffffffffff16906355f613ce906064015f604051808303815f87803b158015613e6a575f80fd5b505af1158015613e7c573d5f803e3d5ffd5b50505050610100840193505061010081019050613dd0565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613fa0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e261499b565b5f54610100900460ff1661403e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e2614a5b565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af11580156140d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906140fb91906150b1565b5f86815260a4602052604090206001015490915061411a90829061508b565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a59091528120805490919061416690849061508b565b9091555050604051614179908490615271565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80614230576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610af2565b5f61423f846001015160c01c90565b90505f61424d856039015190565b90505f7f000000000000000000000000000000000000000000000000000000000000000061427c876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a84861434b885160f81c90565b858888866040518663ffffffff1660e01b815260040161436f95949392919061529d565b5f6040518083038186803b158015614385575f80fd5b505afa158015614397573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906143c790846152ce565b6143d191906152e5565b90506143dd818361509e565b60aa5f8282546143ed919061508b565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a560205260408120805483929061442690849061508b565b9091555050604051614439908490615271565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015614557575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f81146144e5576040519150601f19603f3d011682016040523d82523d5f602084013e6144ea565b606091505b5050905080614555576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610af2565b505b5050565b614563613d51565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586145b63390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6145e8614afa565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336145b6565b60405185515f91829160208901919081908490614655908590614b66565b90506002840193505f5b818110156146d957603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f6146af603c836152ce565b6146b9908761508b565b90505f6146ca82603a015160f01c90565b9790970196505060010161465f565b506020850282016040525b80156147be575f6146f985603a015160f01c90565b905061470983828d8d8d8d614bfb565b92505f61471a866038015160f01c90565b905081811015614786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610af2565b50998a01999890980197603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016146e4565b508190039020989197509095505050505050565b8082535050565b808260f9850137505050565b5f805f6020840190506002810191505f614800828651614b66565b90505f5b61480f60018361509e565b81101561482557603c9390930192600101614804565b505f614832845160c01c90565b9695505050505050565b60605f8080808061484f888a018a61540a565b955095509550955095505081871061486d5794506148899350505050565b838710614881578295505050505050614889565b509293505050505b9392505050565b5f8160f98110156148fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610af2565b6040519150808483378082016040525f61491b836009015160c01c90565b905061010060ff82010460200260f9018214614993576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206269746d6170206c656e677468000000000000000000000000006044820152606401610af2565b509250929050565b5f54610100900460ff16614a31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff16614af1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6119e233613e94565b60655460ff166119e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610af2565b5f614b72835160f01c90565b9050805f03614bad576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614bb8603c826152ce565b614bc390600261508b565b8214611594576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f855f03614c0a575085614832565b609b5473ffffffffffffffffffffffffffffffffffffffff165f80805b89811015614d0a5760ff89169150600889901c811580614c45575082155b15614c54578060200288013593505b600184841c165f03614cf9576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018a90525f9073ffffffffffffffffffffffffffffffffffffffff87169063ae453cd590602401602060405180830381865afa158015614ccb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614cef91906150b1565b8d52506020909b019a5b506001988901989788019701614c27565b505060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88011681811c60011615614d9f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f7420736b6970206c617374204c31206d65737361676500000000006044820152606401610af2565b509798975050505050505050565b5f60208284031215614dbd575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614de7575f80fd5b919050565b5f60208284031215614dfc575f80fd5b61488982614dc4565b5f8083601f840112614e15575f80fd5b50813567ffffffffffffffff811115614e2c575f80fd5b602083019150836020828501011115614e43575f80fd5b9250929050565b5f805f60408486031215614e5c575f80fd5b833567ffffffffffffffff811115614e72575f80fd5b614e7e86828701614e05565b909790965060209590950135949350505050565b5f8060208385031215614ea3575f80fd5b823567ffffffffffffffff811115614eb9575f80fd5b614ec585828601614e05565b90969095509350505050565b5f805f805f8060c08789031215614ee6575f80fd5b614eef87614dc4565b9550614efd60208801614dc4565b9450614f0b60408801614dc4565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614f3f575f80fd5b843567ffffffffffffffff80821115614f56575f80fd5b614f6288838901614e05565b90965094506020870135915080821115614f7a575f80fd5b50614f8787828801614e05565b95989497509550505050565b801515811461284c575f80fd5b5f60208284031215614fb0575f80fd5b813561488981614f93565b5f8060408385031215614fcc575f80fd5b823567ffffffffffffffff81168114614fe3575f80fd5b946020939093013593505050565b5f8060408385031215615002575f80fd5b823567ffffffffffffffff80821115615019575f80fd5b9084019060e0828703121561502c575f80fd5b90925060208401359080821115615041575f80fd5b50830160608186031215615053575f80fd5b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808201808211156115945761159461505e565b818103818111156115945761159461505e565b5f602082840312156150c1575f80fd5b5051919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036150f8576150f861505e565b5060010190565b5f6020828403121561510f575f80fd5b815161488981614f93565b5f6020828403121561512a575f80fd5b813560ff81168114614889575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261516d575f80fd5b83018035915067ffffffffffffffff821115615187575f80fd5b602001915036819003821315614e43575f80fd5b818382375f9101908152919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b8181101561524857845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101615216565b505087604086015284810360608601526152638187896151aa565b9a9950505050505050505050565b5f82515f5b818110156152905760208186018101518583015201615276565b505f920191825250919050565b858152846020820152608060408201525f6152bc6080830185876151aa565b90508260608301529695505050505050565b80820281158282048414176115945761159461505e565b5f82615318577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112615359575f80fd5b8135602067ffffffffffffffff808311156153765761537661531d565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156153b9576153b961531d565b60405293845260208187018101949081019250878511156153d8575f80fd5b6020870191505b848210156153ff576153f082614dc4565b835291830191908301906153df565b979650505050505050565b5f805f805f8060c0878903121561541f575f80fd5b86359550602087013567ffffffffffffffff8082111561543d575f80fd5b6154498a838b0161534a565b9650604089013595506060890135915080821115615465575f80fd5b6154718a838b0161534a565b94506080890135935060a089013591508082111561548d575f80fd5b5061549a89828a0161534a565b915050929550929550929556fea164736f6c6343000818000a" +var RollupDeployedBin = "0x608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610a0c578063f2fde38b14610a2b578063fb1e8b0414610a4a575f80fd5b8063ddd8a3dc146109ac578063de8b3035146109d8578063dff7827e146109f7575f80fd5b8063cd4edc69116100b7578063cd4edc6914610965578063ce5db8d614610978578063d279c1911461098d575f80fd5b8063b35dac4e14610908578063b3e0a50914610927578063bedb86fb14610946575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d146108a9578063b31a77d3146108d4578063b3484425146108e9575f80fd5b8063a415d8dc14610847578063a479265d14610875578063a4f209b01461088a575f80fd5b80638f1d37761161016c5780638f1d37761461072d578063910129d4146107f757806397fc007c14610828575f80fd5b8063728cdbca146106cb57806388b1ea09146106ea5780638da5cb5b14610703575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa1461066d5780636c578c1d14610698578063715018a6146106b7575f80fd5b80635ef7a94a146105a25780635f77cf1d14610602578063612672901461064e575f80fd5b80634a8d544f1161022c5780634a8d544f1461055957806357e0af6c1461056c5780635c975abb1461058b575f80fd5b80632b7ac3f3146104c75780633b70c18a146105185780633e001b6614610544575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614b80565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614bbf565b610a5f565b005b3480156103a3575f80fd5b506103966103b2366004614c1d565b610b83565b3480156103c2575f80fd5b5061033f6103d1366004614b80565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b50610396610408366004614c65565b610f6f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614b80565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614b80565b61156e565b34801561047c575f80fd5b5061036961048b366004614b80565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614b80565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161034b565b348015610523575f80fd5b50609b546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b34801561054f575f80fd5b5061036960aa5481565b610396610567366004614ca4565b61159c565b348015610577575f80fd5b50610396610586366004614b80565b611f7e565b348015610596575f80fd5b5060655460ff1661033f565b3480156105ad575f80fd5b506105e26105bc366004614b80565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b34801561060d575f80fd5b506106357f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610659575f80fd5b50610396610668366004614b80565b612043565b348015610678575f80fd5b50610369610687366004614b80565b60ab6020525f908152604090205481565b3480156106a3575f80fd5b506103966106b2366004614bbf565b6122a6565b3480156106c2575f80fd5b506103966123b5565b3480156106d6575f80fd5b506103966106e5366004614d11565b6123c8565b3480156106f5575f80fd5b5060a65461033f9060ff1681565b34801561070e575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104f3565b348015610738575f80fd5b506107a6610747366004614b80565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b348015610802575f80fd5b5061033f610811366004614b80565b5f90815260a4602052604090206003015460ff1690565b348015610833575f80fd5b50610396610842366004614bbf565b612791565b348015610852575f80fd5b5061033f610861366004614bbf565b609f6020525f908152604090205460ff1681565b348015610880575f80fd5b5061036960995481565b348015610895575f80fd5b506103966108a4366004614b80565b6128b5565b3480156108b4575f80fd5b506103696108c3366004614bbf565b60a56020525f908152604090205481565b3480156108df575f80fd5b5061036960a85481565b3480156108f4575f80fd5b50610396610903366004614d6c565b61297f565b348015610913575f80fd5b50610396610922366004614bbf565b612c4e565b348015610932575f80fd5b50610396610941366004614c65565b612cb4565b348015610951575f80fd5b50610396610960366004614de0565b6130a0565b610396610973366004614dfb565b613233565b348015610983575f80fd5b5061036960985481565b348015610998575f80fd5b506103966109a7366004614bbf565b613948565b3480156109b7575f80fd5b506097546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109e3575f80fd5b5061033f6109f2366004614b80565b613a2e565b348015610a02575f80fd5b50610369609a5481565b348015610a17575f80fd5b50610396610a26366004614b80565b613a85565b348015610a36575f80fd5b50610396610a45366004614bbf565b613b42565b348015610a55575f80fd5b5061036960a95481565b610a67613bf6565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610afb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b8b613bf6565b5f8111610bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610af2565b5f80610c008585613c77565b915091505f610c13836001015160c01c90565b5f81815260a160205260409020549091508214610c8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b5f60a181610c9a8785614e5e565b81526020019081526020015f205414610d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610af2565b609d548111610dc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b610dd0600182614e71565b609e555b8315610f6757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610e1c81613a2e565b15610ea2575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e74908490614e5e565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610f1f575060a85481145b15610f29575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610dd4575b505050505050565b60a85415610fd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b610fe1613c92565b5f80610fed8484613c77565b915091505f611000836001015160c01c90565b5f81815260a160205260409020549091508214611079576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6110828161156e565b6110e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b6110f181613a2e565b15611158576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003015460ff16156111d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610af2565b5f81815260a2602052604090206001015442101561124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610af2565b605983015160a05f611260600185614e71565b81526020019081526020015f2054146112d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f81815260a060205260409020541561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610af2565b80609d54600101146113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b609d819055600160a35f6113cd866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561143a61142d846011015160c01c90565b600985015160c01c613cff565b60a25f611448600184614e71565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906114819084614e71565b81526020019081526020015f205f905560a45f6001836114a19190614e71565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d61154a866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061159657505f82815260a1602052604090205415155b92915050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015611622573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116469190614e84565b6116ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610af2565b60a85415611716576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61171e613c92565b61172b6020830183614e9f565b60ff1615611795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610af2565b5f6117a36040840184614ebf565b9150508061180d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610af2565b6060830135611878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610af2565b60808301356118e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610af2565b5f806118fa6118f56020870187614ebf565b613c77565b915091505f61190d836001015160c01c90565b90505f60a18161191e846001614e5e565b81526020019081526020015f205414611993576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610af2565b609e5481146119fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b5f81815260a160205260409020548214611a74576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610af2565b5f81815260ab6020526040902054606087013514611aee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f611afd846011015160c01c90565b90505f8080611b4f611b1260408c018c614ebf565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613dc99050565b600196909601959485019493840193925090505f804915611b71575f49611b93565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b60408051611f2081019091529850905060f9611bbe89611bb660208f018f614e9f565b60ff16613f60565b60c087811b60018b015285811b60098b015286901b60118a01526019890183905260608c013560598a015260808c013560798a015260a08c013560998a0152611c2d89611c0e60208e018e614ebf565b604051611c1c929190614f20565b604051809103902060b99190910152565b60d98901889052603989018290528089205f88815260a1602090815260408083209390935560ab905290812060808e0135905560a65460ff1615611c9a5760a7545f90815260a460205260409020600201546099544291611c8d91614e5e565b611c979190614e71565b90505b60405180608001604052804281526020018260985442611cba9190614e5e565b611cc49190614e5e565b8152602001611d158f8060400190611cdc9190614ebf565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613f6792505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015611da3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dc79190614f2f565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c3590611e3c90611e36908f018f614ebf565b5f613fbe565b5f8e8060400190611e4d9190614ebf565b6040518663ffffffff1660e01b8152600401611e6d959493929190614f8d565b602060405180830381865afa158015611e88573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611eac9190614e84565b611f38576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b611f86613bf6565b5f81118015611f9757506099548114155b611ffd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610af2565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561206357505f5460ff8083169116105b6120ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff83161761010017905561212a5f5460ff1690565b60ff16600214612196576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610af2565b81612223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610af2565b609e545f90815260ab602052604090205461224c57609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001612037565b6122ae613bf6565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1661233c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610af2565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b78565b6123bd613bf6565b6123c65f614012565b565b5f54610100900460ff16158080156123e657505f54600160ff909116105b806123ff5750303b1580156123ff57505f5460ff166001145b61248b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156124e7575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8616158061251e575073ffffffffffffffffffffffffffffffffffffffff8516155b15612555576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff87166125d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610af2565b6125da614088565b6125e2614126565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015612788575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b612799613bf6565b73ffffffffffffffffffffffffffffffffffffffff8116158015906127d95750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b61283f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610af2565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6128bd613bf6565b5f811180156128cd575060648111155b80156128db575060a9548114155b612941576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610af2565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101612037565b60a854156129e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b6129f1613c92565b5f806129fd8686613c77565b915091505f612a10836001015160c01c90565b5f81815260a160205260409020549091508214612a89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b612a9281613a2e565b612af8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556099546002909101544291612b6f91614e5e565b11612c03575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152612bfe918391906141c4565b612788565b612c0e838686614347565b61278881336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250614521565b612c56613bf6565b60aa80545f909155612c688282614607565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101612037565b612cbc613bf6565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415612d4d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610af2565b5f80612d598484613c77565b915091505f612d6c836001015160c01c90565b90508015612dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610af2565b5f612de2846079015190565b905080612e4b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610af2565b600984015160c01c15612eba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610af2565b5f612ec6856019015190565b03612f2d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610af2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612f59856039015190565b14612fc0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610af2565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6130a8613bf6565b8015613201576130b66146d9565b60a65460ff16156131b35760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091613117908490614e5e565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b61320961475e565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336131d6565b50565b335f908152609f602052604090205460ff166132ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610af2565b60a85415613315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61331d613c92565b60a65460ff161561338a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610af2565b8167ffffffffffffffff16609d54106133ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a160205260409020548114613480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6134938267ffffffffffffffff1661156e565b6134f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff161561359b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a260205260409020600101544210613645576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610af2565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156136af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136d39190614f2f565b34101561373c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516138a891815260200190565b60405180910390a35f609d5460016138c09190614e5e565b90505b609e548111613918578267ffffffffffffffff168114613906576099545f82815260a2602052604081206001018054909190613900908490614e5e565b90915550505b806139108161500d565b9150506138c3565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a56020526040812054908190036139c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610af2565b335f90815260a560205260408120556139da8282614607565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051613a2291815260200190565b60405180910390a25050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16158015906115965750505f90815260a46020526040902060030154610100900460ff161590565b613a8d613bf6565b5f81118015613a9e57506098548114155b613b04576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610af2565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101612037565b613b4a613bf6565b73ffffffffffffffffffffffffffffffffffffffff8116613bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610af2565b61323081614012565b60335473ffffffffffffffffffffffffffffffffffffffff1633146123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610af2565b5f805f613c8485856147b5565b812090969095509350505050565b60655460ff16156123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610af2565b805f03613d0a575050565b8082035f5b82811015613dc357610100818403811115613d2957508083035b609b546040517f3c7f5283000000000000000000000000000000000000000000000000000000008152600481018590526024810183905273ffffffffffffffffffffffffffffffffffffffff90911690633c7f5283906044015f604051808303815f87803b158015613d99575f80fd5b505af1158015613dab573d5f803e3d5ffd5b50505050610100830192505061010081019050613d0f565b50505050565b60405183515f91829160208701919081908490613de7908590614838565b90506002840193505f5b81811015613e6b57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613e41603c83615044565b613e4b9087614e5e565b90505f613e5c82603a015160f01c90565b97909701965050600101613df1565b506020850282016040525b8015613f4e575f613e8b85603a015160f01c90565b9050613e9983828b8b6148cd565b92505f613eaa866038015160f01c90565b905081811015613f16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610af2565b50978801979690960195603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613e76565b50819003902096919550909350505050565b8082535050565b5f805f6020840190506002810191505f613f82828651614838565b90505f5b613f91600183614e71565b811015613fa757603c9390930192600101613f86565b505f613fb4845160c01c90565b9695505050505050565b60605f80808080613fd1888a018a615148565b9550955095509550955050818710613fef57945061400b9350505050565b83871061400357829550505050505061400b565b509293505050505b9392505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff1661411e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6123c66149b5565b5f54610100900460ff166141bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6123c6614a75565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af1158015614255573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142799190614f2f565b5f86815260a46020526040902060010154909150614298908290614e5e565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a5909152812080549091906142e4908490614e5e565b90915550506040516142f79084906151e5565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b806143ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610af2565b5f6143bd846001015160c01c90565b90505f6143cb856039015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006143fa876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a8486144c9885160f81c90565b858888866040518663ffffffff1660e01b81526004016144ed959493929190615211565b5f6040518083038186803b158015614503575f80fd5b505afa158015614515573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906145459084615044565b61454f9190615242565b905061455b8183614e71565b60aa5f82825461456b9190614e5e565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a56020526040812080548392906145a4908490614e5e565b90915550506040516145b79084906151e5565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80156146d5575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f8114614663576040519150601f19603f3d011682016040523d82523d5f602084013e614668565b606091505b50509050806146d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610af2565b505b5050565b6146e1613c92565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586147343390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b614766614b14565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33614734565b5f8160f9811015614822576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610af2565b6040519150808483378082016040529250929050565b5f614844835160f01c90565b9050805f0361487f576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61488a603c82615044565b614895906002614e5e565b8214611596576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f036148dc5750836149ad565b609b5473ffffffffffffffffffffffffffffffffffffffff165f5b858110156149a7576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f9073ffffffffffffffffffffffffffffffffffffffff84169063ae453cd590602401602060405180830381865afa15801561496a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061498e9190614f2f565b88525060209096019560019485019493840193016148f7565b50859150505b949350505050565b5f54610100900460ff16614a4b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff16614b0b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6123c633614012565b60655460ff166123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610af2565b5f60208284031215614b90575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614bba575f80fd5b919050565b5f60208284031215614bcf575f80fd5b61400b82614b97565b5f8083601f840112614be8575f80fd5b50813567ffffffffffffffff811115614bff575f80fd5b602083019150836020828501011115614c16575f80fd5b9250929050565b5f805f60408486031215614c2f575f80fd5b833567ffffffffffffffff811115614c45575f80fd5b614c5186828701614bd8565b909790965060209590950135949350505050565b5f8060208385031215614c76575f80fd5b823567ffffffffffffffff811115614c8c575f80fd5b614c9885828601614bd8565b90969095509350505050565b5f8060408385031215614cb5575f80fd5b823567ffffffffffffffff80821115614ccc575f80fd5b9084019060c08287031215614cdf575f80fd5b90925060208401359080821115614cf4575f80fd5b50830160608186031215614d06575f80fd5b809150509250929050565b5f805f805f8060c08789031215614d26575f80fd5b614d2f87614b97565b9550614d3d60208801614b97565b9450614d4b60408801614b97565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614d7f575f80fd5b843567ffffffffffffffff80821115614d96575f80fd5b614da288838901614bd8565b90965094506020870135915080821115614dba575f80fd5b50614dc787828801614bd8565b95989497509550505050565b8015158114613230575f80fd5b5f60208284031215614df0575f80fd5b813561400b81614dd3565b5f8060408385031215614e0c575f80fd5b823567ffffffffffffffff81168114614e23575f80fd5b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561159657611596614e31565b8181038181111561159657611596614e31565b5f60208284031215614e94575f80fd5b815161400b81614dd3565b5f60208284031215614eaf575f80fd5b813560ff8116811461400b575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614ef2575f80fd5b83018035915067ffffffffffffffff821115614f0c575f80fd5b602001915036819003821315614c16575f80fd5b818382375f9101908152919050565b5f60208284031215614f3f575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b81811015614fe457845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101614fb2565b50508760408601528481036060860152614fff818789614f46565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361503d5761503d614e31565b5060010190565b808202811582820484141761159657611596614e31565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112615097575f80fd5b8135602067ffffffffffffffff808311156150b4576150b461505b565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156150f7576150f761505b565b6040529384526020818701810194908101925087851115615116575f80fd5b6020870191505b8482101561513d5761512e82614b97565b8352918301919083019061511d565b979650505050505050565b5f805f805f8060c0878903121561515d575f80fd5b86359550602087013567ffffffffffffffff8082111561517b575f80fd5b6151878a838b01615088565b96506040890135955060608901359150808211156151a3575f80fd5b6151af8a838b01615088565b94506080890135935060a08901359150808211156151cb575f80fd5b506151d889828a01615088565b9150509295509295509295565b5f82515f5b8181101561520457602081860181015185830152016151ea565b505f920191825250919050565b858152846020820152608060408201525f615230608083018587614f46565b90508260608301529695505050505050565b5f82615275577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(RollupStorageLayoutJSON), RollupStorageLayout); err != nil { diff --git a/bindings/go.mod b/bindings/go.mod index 9bddb269e..27f5875bd 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -4,7 +4,7 @@ go 1.22 replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 -require github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 +require github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e require ( github.com/VictoriaMetrics/fastcache v1.12.2 // indirect diff --git a/bindings/go.sum b/bindings/go.sum index d6e55c303..6c525f26a 100644 --- a/bindings/go.sum +++ b/bindings/go.sum @@ -109,8 +109,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 h1:4+cbRSS4lacSIC81RXxvA04UHhGVC4SHVn+bKeqhPSM= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= diff --git a/contracts/contracts/l1/rollup/IL1MessageQueue.sol b/contracts/contracts/l1/rollup/IL1MessageQueue.sol index 96b1e0006..3e9a4734b 100644 --- a/contracts/contracts/l1/rollup/IL1MessageQueue.sol +++ b/contracts/contracts/l1/rollup/IL1MessageQueue.sol @@ -33,8 +33,7 @@ interface IL1MessageQueue { /// @notice Emitted when some L1 => L2 transactions are included in L1. /// @param startIndex The start index of messages popped. /// @param count The number of messages popped. - /// @param skippedBitmap A bitmap indicates whether a message is skipped. - event DequeueTransaction(uint256 startIndex, uint256 count, uint256 skippedBitmap); + event DequeueTransaction(uint256 startIndex, uint256 count); /// @notice Emitted when a message is dropped from L1. /// @param index The index of message dropped. @@ -96,10 +95,6 @@ interface IL1MessageQueue { bytes calldata data ) external view returns (bytes32); - /// @notice Return whether the message is skipped. - /// @param queueIndex The queue index of the message to check. - function isMessageSkipped(uint256 queueIndex) external view returns (bool); - /// @notice Return whether the message is dropped. /// @param queueIndex The queue index of the message to check. function isMessageDropped(uint256 queueIndex) external view returns (bool); @@ -136,8 +131,7 @@ interface IL1MessageQueue { /// /// @param startIndex The start index to pop. /// @param count The number of messages to pop. - /// @param skippedBitmap A bitmap indicates whether a message is skipped. - function popCrossDomainMessage(uint256 startIndex, uint256 count, uint256 skippedBitmap) external; + function popCrossDomainMessage(uint256 startIndex, uint256 count) external; /// @notice Drop a skipped message from the queue. function dropCrossDomainMessage(uint256 index) external; diff --git a/contracts/contracts/l1/rollup/IRollup.sol b/contracts/contracts/l1/rollup/IRollup.sol index e27e9564c..680a550d1 100644 --- a/contracts/contracts/l1/rollup/IRollup.sol +++ b/contracts/contracts/l1/rollup/IRollup.sol @@ -9,7 +9,6 @@ interface IRollup { /// @param version The version of current batch. /// @param parentBatchHeader The header of parent batch, see the comments of `BatchHeaderV0Codec`. /// @param blockContexts The block contexts of current batch. - /// @param skippedL1MessageBitmap The bitmap indicates whether each L1 message is skipped or not. /// @param prevStateRoot The state root of parent batch. /// @param postStateRoot The state root of current batch. /// @param withdrawalRoot The withdraw trie root of current batch. @@ -17,7 +16,6 @@ interface IRollup { uint8 version; bytes parentBatchHeader; bytes blockContexts; - bytes skippedL1MessageBitmap; bytes32 prevStateRoot; bytes32 postStateRoot; bytes32 withdrawalRoot; diff --git a/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol b/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol index fdc9d25c4..de353fe91 100644 --- a/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol +++ b/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol @@ -51,8 +51,8 @@ contract L1MessageQueueWithGasPriceOracle is OwnableUpgradeable, IL1MessageQueue /// @dev The bitmap for dropped messages, where `droppedMessageBitmap[i]` keeps the bits from `[i*256, (i+1)*256)`. BitMapsUpgradeable.BitMap private droppedMessageBitmap; - /// @dev The bitmap for skipped messages, where `skippedMessageBitmap[i]` keeps the bits from `[i*256, (i+1)*256)`. - mapping(uint256 => uint256) private skippedMessageBitmap; + /// @dev The bitmap for skipped messages, where `skippedMessageBitmap[i]` keeps the bits from `[i*256, (i+1)*256)`. Deprecated. + mapping(uint256 => uint256) private __skippedMessageBitmap; /// @inheritdoc IL1MessageQueueWithGasPriceOracle address public whitelistChecker; @@ -260,17 +260,9 @@ contract L1MessageQueueWithGasPriceOracle is OwnableUpgradeable, IL1MessageQueue return hash; } - /// @inheritdoc IL1MessageQueue - function isMessageSkipped(uint256 _queueIndex) external view returns (bool) { - if (_queueIndex >= pendingQueueIndex) return false; - - return _isMessageSkipped(_queueIndex); - } - /// @inheritdoc IL1MessageQueue function isMessageDropped(uint256 _queueIndex) external view returns (bool) { - // it should be a skipped message first. - return _isMessageSkipped(_queueIndex) && droppedMessageBitmap.get(_queueIndex); + return droppedMessageBitmap.get(_queueIndex); } /***************************** @@ -320,35 +312,23 @@ contract L1MessageQueueWithGasPriceOracle is OwnableUpgradeable, IL1MessageQueue } /// @inheritdoc IL1MessageQueue - function popCrossDomainMessage(uint256 _startIndex, uint256 _count, uint256 _skippedBitmap) external { + function popCrossDomainMessage(uint256 _startIndex, uint256 _count) external { require(_msgSender() == ROLLUP_CONTRACT, "Only callable by the rollup"); require(_count <= 256, "pop too many messages"); require(pendingQueueIndex == _startIndex, "start index mismatch"); unchecked { - // clear extra bits in `_skippedBitmap`, and if _count = 256, it's designed to overflow. - uint256 mask = (1 << _count) - 1; - _skippedBitmap &= mask; - - uint256 bucket = _startIndex >> 8; - uint256 offset = _startIndex & 0xff; - skippedMessageBitmap[bucket] |= _skippedBitmap << offset; - if (offset + _count > 256) { - skippedMessageBitmap[bucket + 1] = _skippedBitmap >> (256 - offset); - } - pendingQueueIndex = _startIndex + _count; } - emit DequeueTransaction(_startIndex, _count, _skippedBitmap); + emit DequeueTransaction(_startIndex, _count); } /// @inheritdoc IL1MessageQueue function dropCrossDomainMessage(uint256 _index) external onlyMessenger { require(_index < pendingQueueIndex, "cannot drop pending message"); - require(_isMessageSkipped(_index), "drop non-skipped message"); require(!droppedMessageBitmap.get(_index), "message already dropped"); droppedMessageBitmap.set(_index); @@ -409,11 +389,4 @@ contract L1MessageQueueWithGasPriceOracle is OwnableUpgradeable, IL1MessageQueue uint256 intrinsicGas = calculateIntrinsicGasFee(_calldata); require(_gasLimit >= intrinsicGas, "Insufficient gas limit, must be above intrinsic gas"); } - - /// @dev Returns whether the bit at `index` is set. - function _isMessageSkipped(uint256 index) internal view returns (bool) { - uint256 bucket = index >> 8; - uint256 mask = 1 << (index & 0xff); - return skippedMessageBitmap[bucket] & mask != 0; - } } diff --git a/contracts/contracts/l1/rollup/Rollup.sol b/contracts/contracts/l1/rollup/Rollup.sol index b9ca1afd2..905913f94 100644 --- a/contracts/contracts/l1/rollup/Rollup.sol +++ b/contracts/contracts/l1/rollup/Rollup.sol @@ -254,28 +254,19 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { (dataHash, _totalNumL1Messages) = _commitBatch( batchDataInput.blockContexts, _totalL1MessagesPoppedInBatch, - _totalL1MessagesPoppedOverall, - batchDataInput.skippedL1MessageBitmap + _totalL1MessagesPoppedOverall ); unchecked { _totalL1MessagesPoppedInBatch += _totalNumL1Messages; _totalL1MessagesPoppedOverall += _totalNumL1Messages; } - // check the length of bitmap - unchecked { - require( - ((_totalL1MessagesPoppedInBatch + 255) / 256) * 32 == batchDataInput.skippedL1MessageBitmap.length, - "wrong bitmap length" - ); - } assembly { _batchIndex := add(_batchIndex, 1) // increase batch index } bytes32 _blobVersionedHash = (blobhash(0) == bytes32(0)) ? ZERO_VERSIONED_HASH : blobhash(0); { - uint256 _headerLength = BatchHeaderCodecV0.BATCH_HEADER_FIXED_LENGTH + - batchDataInput.skippedL1MessageBitmap.length; + uint256 _headerLength = BatchHeaderCodecV0.BATCH_HEADER_LENGTH; assembly { _batchPtr := mload(0x40) mstore(0x40, add(_batchPtr, mul(_headerLength, 32))) @@ -291,7 +282,6 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { BatchHeaderCodecV0.storeWithdrawRootHash(_batchPtr, batchDataInput.withdrawalRoot); BatchHeaderCodecV0.storeSequencerSetVerifyHash(_batchPtr, keccak256(batchSignatureInput.sequencerSets)); BatchHeaderCodecV0.storeParentBatchHash(_batchPtr, _parentBatchHash); - BatchHeaderCodecV0.storeSkippedBitmap(_batchPtr, batchDataInput.skippedL1MessageBitmap); BatchHeaderCodecV0.storeBlobVersionedHash(_batchPtr, _blobVersionedHash); committedBatches[_batchIndex] = BatchHeaderCodecV0.computeBatchHash(_batchPtr, _headerLength); committedStateRoots[_batchIndex] = batchDataInput.postStateRoot; @@ -540,7 +530,6 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { // Pop finalized and non-skipped message from L1MessageQueue. _popL1Messages( - BatchHeaderCodecV0.getSkippedBitmapPtr(memPtr), BatchHeaderCodecV0.getTotalL1MessagePopped(memPtr), BatchHeaderCodecV0.getL1MessagePopped(memPtr) ); @@ -605,25 +594,19 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { **********************/ /// @dev Internal function to pop finalized l1 messages. - /// @param bitmapPtr The memory offset of `skippedL1MessageBitmap`. /// @param totalL1MessagePopped The total number of L1 messages popped in all batches including current batch. /// @param l1MessagePopped The number of L1 messages popped in current batch. - function _popL1Messages(uint256 bitmapPtr, uint256 totalL1MessagePopped, uint256 l1MessagePopped) internal { + function _popL1Messages(uint256 totalL1MessagePopped, uint256 l1MessagePopped) internal { if (l1MessagePopped == 0) return; unchecked { uint256 startIndex = totalL1MessagePopped - l1MessagePopped; - uint256 bitmap; for (uint256 i = 0; i < l1MessagePopped; i += 256) { uint256 _count = 256; if (l1MessagePopped - i < _count) { _count = l1MessagePopped - i; } - assembly { - bitmap := mload(bitmapPtr) - bitmapPtr := add(bitmapPtr, 0x20) - } - IL1MessageQueue(messageQueue).popCrossDomainMessage(startIndex, _count, bitmap); + IL1MessageQueue(messageQueue).popCrossDomainMessage(startIndex, _count); startIndex += 256; } } @@ -758,14 +741,12 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { /// @param _blockContexts The encoded block contexts to commit. /// @param _totalL1MessagesPoppedInBatch The total number of L1 messages popped in current batch. /// @param _totalL1MessagesPoppedOverall The total number of L1 messages popped in all batches including current batch. - /// @param _skippedL1MessageBitmap The bitmap indicates whether each L1 message is skipped or not. /// @return _dataHash The computed data hash for this batch. /// @return _totalNumL1MessagesInBatch The total number of L1 message popped in current batch function _commitBatch( bytes memory _blockContexts, uint256 _totalL1MessagesPoppedInBatch, - uint256 _totalL1MessagesPoppedOverall, - bytes calldata _skippedL1MessageBitmap + uint256 _totalL1MessagesPoppedOverall ) internal view returns (bytes32 _dataHash, uint256 _totalNumL1MessagesInBatch) { uint256 batchPtr; uint256 startDataPtr; @@ -802,8 +783,7 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { dataPtr, _numL1MessagesInBlock, _totalL1MessagesPoppedInBatch, - _totalL1MessagesPoppedOverall, - _skippedL1MessageBitmap + _totalL1MessagesPoppedOverall ); uint256 _numTransactionsInBlock = BatchCodecV0.getNumTransactions(batchPtr); require(_numTransactionsInBlock >= _numL1MessagesInBlock, "num txs less than num L1 msgs"); @@ -827,14 +807,12 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { /// @param _numL1Messages The number of L1 messages to load. /// @param _totalL1MessagesPoppedInBatch The total number of L1 messages popped in current batch. /// @param _totalL1MessagesPoppedOverall The total number of L1 messages popped in all batches including current batch. - /// @param _skippedL1MessageBitmap The bitmap indicates whether each L1 message is skipped or not. /// @return uint256 The new memory offset after loading. function _loadL1MessageHashes( uint256 _ptr, uint256 _numL1Messages, uint256 _totalL1MessagesPoppedInBatch, - uint256 _totalL1MessagesPoppedOverall, - bytes calldata _skippedL1MessageBitmap + uint256 _totalL1MessagesPoppedOverall ) internal view returns (uint256) { if (_numL1Messages == 0) { return _ptr; @@ -842,34 +820,16 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { IL1MessageQueue _messageQueue = IL1MessageQueue(messageQueue); unchecked { - uint256 _bitmap; - uint256 rem; for (uint256 i = 0; i < _numL1Messages; i++) { - uint256 quo = _totalL1MessagesPoppedInBatch >> 8; - rem = _totalL1MessagesPoppedInBatch & 0xff; - - // load bitmap every 256 bits - if (i == 0 || rem == 0) { - assembly { - _bitmap := calldataload(add(_skippedL1MessageBitmap.offset, mul(0x20, quo))) - } - } - if (((_bitmap >> rem) & 1) == 0) { - // message not skipped - bytes32 _hash = _messageQueue.getCrossDomainMessage(_totalL1MessagesPoppedOverall); - assembly { - mstore(_ptr, _hash) - _ptr := add(_ptr, 0x20) - } + bytes32 _hash = _messageQueue.getCrossDomainMessage(_totalL1MessagesPoppedOverall); + assembly { + mstore(_ptr, _hash) + _ptr := add(_ptr, 0x20) } _totalL1MessagesPoppedInBatch += 1; _totalL1MessagesPoppedOverall += 1; } - - // check last L1 message is not skipped, _totalL1MessagesPoppedInBatch must > 0 - rem = (_totalL1MessagesPoppedInBatch - 1) & 0xff; - require(((_bitmap >> rem) & 1) == 0, "cannot skip last L1 message"); } return _ptr; diff --git a/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol b/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol index de79c7737..1c80a4b25 100644 --- a/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol +++ b/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol @@ -18,11 +18,10 @@ pragma solidity ^0.8.24; /// * withdrawRootHash 32 bytes32 153 L2 withdrawal tree root hash /// * sequencerSetVerifyHash 32 bytes32 185 L2 sequencers set verify hash /// * parentBatchHash 32 bytes32 217 The parent batch hash -/// * skippedL1MessageBitmap dynamic uint256[] 249 A bitmap to indicate which L1 messages are skipped in the batch /// ``` library BatchHeaderCodecV0 { /// @dev The length of fixed parts of the batch header. - uint256 internal constant BATCH_HEADER_FIXED_LENGTH = 249; + uint256 internal constant BATCH_HEADER_LENGTH = 249; /// @notice Load batch header in calldata to memory. /// @param _batchHeader The encoded batch header bytes in calldata. @@ -30,20 +29,13 @@ library BatchHeaderCodecV0 { /// @return length The length in bytes of the batch header. function loadAndValidate(bytes calldata _batchHeader) internal pure returns (uint256 batchPtr, uint256 length) { length = _batchHeader.length; - require(length >= BATCH_HEADER_FIXED_LENGTH, "batch header length too small"); + require(length >= BATCH_HEADER_LENGTH, "batch header length too small"); // copy batch header to memory. assembly { batchPtr := mload(0x40) calldatacopy(batchPtr, _batchHeader.offset, length) mstore(0x40, add(batchPtr, length)) } - - // check batch header length - uint256 _l1MessagePopped = getL1MessagePopped(batchPtr); - - unchecked { - require(length == BATCH_HEADER_FIXED_LENGTH + ((_l1MessagePopped + 255) / 256) * 32, "wrong bitmap length"); - } } /// @notice Get the version of the batch header. @@ -133,26 +125,6 @@ library BatchHeaderCodecV0 { } } - /// @notice Get the start memory offset for skipped L1 messages bitmap. - /// @param batchPtr The start memory offset of the batch header in memory. - /// @return _bitmapPtr the start memory offset for skipped L1 messages bitmap. - function getSkippedBitmapPtr(uint256 batchPtr) internal pure returns (uint256 _bitmapPtr) { - assembly { - _bitmapPtr := add(batchPtr, BATCH_HEADER_FIXED_LENGTH) - } - } - - /// @notice Get the skipped L1 messages bitmap. - /// @param batchPtr The start memory offset of the batch header in memory. - /// @param index The index of bitmap to load. - /// @return _bitmap The bitmap from bits `index * 256` to `index * 256 + 255`. - function getSkippedBitmap(uint256 batchPtr, uint256 index) internal pure returns (uint256 _bitmap) { - assembly { - batchPtr := add(batchPtr, BATCH_HEADER_FIXED_LENGTH) - _bitmap := mload(add(batchPtr, mul(index, 32))) - } - } - /// @notice Store the version of batch header. /// @param batchPtr The start memory offset of the batch header in memory. /// @param _version The version of batch header. @@ -258,19 +230,6 @@ library BatchHeaderCodecV0 { } } - /// @notice Store the skipped L1 message bitmap of batch header. - /// @param batchPtr The start memory offset of the batch header in memory. - /// @param _skippedL1MessageBitmap The skipped L1 message bitmap. - function storeSkippedBitmap(uint256 batchPtr, bytes calldata _skippedL1MessageBitmap) internal pure { - assembly { - calldatacopy( - add(batchPtr, BATCH_HEADER_FIXED_LENGTH), - _skippedL1MessageBitmap.offset, - _skippedL1MessageBitmap.length - ) - } - } - /// @notice Compute the batch hash. /// @dev Caller should make sure that the encoded batch header is correct. /// diff --git a/contracts/contracts/libraries/verifier/ISP1Verifier.sol b/contracts/contracts/libraries/verifier/ISP1Verifier.sol index 328089f27..d2f99aec4 100644 --- a/contracts/contracts/libraries/verifier/ISP1Verifier.sol +++ b/contracts/contracts/libraries/verifier/ISP1Verifier.sol @@ -16,4 +16,4 @@ interface ISP1Verifier { interface ISP1VerifierWithHash is ISP1Verifier { /// @notice Returns the hash of the verifier. function VERIFIER_HASH() external pure returns (bytes32); -} \ No newline at end of file +} diff --git a/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol b/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol index d63fb5cfe..7fd8f3ee2 100644 --- a/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol +++ b/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol @@ -23,9 +23,7 @@ contract SP1Verifier is PlonkVerifier, ISP1VerifierWithHash { /// @notice Hashes the public values to a field elements inside Bn254. /// @param publicValues The public values. - function hashPublicValues( - bytes calldata publicValues - ) public pure returns (bytes32) { + function hashPublicValues(bytes calldata publicValues) public pure returns (bytes32) { return sha256(publicValues) & bytes32(uint256((1 << 253) - 1)); } @@ -33,11 +31,7 @@ contract SP1Verifier is PlonkVerifier, ISP1VerifierWithHash { /// @param programVKey The verification key for the RISC-V program. /// @param publicValues The public values encoded as bytes. /// @param proofBytes The proof of the program execution the SP1 zkVM encoded as bytes. - function verifyProof( - bytes32 programVKey, - bytes calldata publicValues, - bytes calldata proofBytes - ) external view { + function verifyProof(bytes32 programVKey, bytes calldata publicValues, bytes calldata proofBytes) external view { bytes4 receivedSelector = bytes4(proofBytes[:4]); bytes4 expectedSelector = bytes4(VERIFIER_HASH()); if (receivedSelector != expectedSelector) { @@ -53,4 +47,4 @@ contract SP1Verifier is PlonkVerifier, ISP1VerifierWithHash { revert InvalidProof(); } } -} \ No newline at end of file +} diff --git a/contracts/contracts/libraries/verifier/ZkEvmVerifierV1.sol b/contracts/contracts/libraries/verifier/ZkEvmVerifierV1.sol index 2bae6e303..52da6a8c0 100644 --- a/contracts/contracts/libraries/verifier/ZkEvmVerifierV1.sol +++ b/contracts/contracts/libraries/verifier/ZkEvmVerifierV1.sol @@ -7,7 +7,6 @@ import {SP1Verifier} from "./SP1VerifierPlonk.sol"; // solhint-disable no-inline-assembly contract ZkEvmVerifierV1 is IZkEvmVerifier, SP1Verifier { - /// @notice The verification key for the morph executor program. bytes32 public programVkey; diff --git a/contracts/contracts/lido/L1LidoGateway.sol b/contracts/contracts/lido/L1LidoGateway.sol index 444a01ff4..f39618612 100644 --- a/contracts/contracts/lido/L1LidoGateway.sol +++ b/contracts/contracts/lido/L1LidoGateway.sol @@ -128,7 +128,7 @@ contract L1LidoGateway is L1ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag uint256 nonce = IL1CrossDomainMessenger(messenger).messageNonce(); - // 3. Send message to L1CrossDomainMessenger. + // 3. Send message to L1CrossDomainMessenger. IL1CrossDomainMessenger(messenger).sendMessage{value: msg.value}(counterpart, 0, _message, _gasLimit, _from); emit DepositERC20(_token, l2Token, _from, _to, _amount, _data, nonce); diff --git a/contracts/contracts/mock/BatchHeaderCodecTest.sol b/contracts/contracts/mock/BatchHeaderCodecTest.sol index 6bd6ea019..9b6206c8d 100644 --- a/contracts/contracts/mock/BatchHeaderCodecTest.sol +++ b/contracts/contracts/mock/BatchHeaderCodecTest.sol @@ -111,7 +111,6 @@ contract BatchHeaderCodecTest { BatchHeaderCodecV0.storeWithdrawRootHash(_batchPtr, data.withdrawRootHash); BatchHeaderCodecV0.storeSequencerSetVerifyHash(_batchPtr, data.sequencerSetVerifyHash); BatchHeaderCodecV0.storeParentBatchHash(_batchPtr, data.parentBatchHash); - BatchHeaderCodecV0.storeSkippedBitmap(_batchPtr, data.skipMap); - return BatchHeaderCodecV0.computeBatchHash(_batchPtr, BatchHeaderCodecV0.BATCH_HEADER_FIXED_LENGTH); + return BatchHeaderCodecV0.computeBatchHash(_batchPtr, BatchHeaderCodecV0.BATCH_HEADER_LENGTH); } } diff --git a/contracts/contracts/test/L1CrossDomainMessenger.t.sol b/contracts/contracts/test/L1CrossDomainMessenger.t.sol index a3de0826c..47af5645e 100644 --- a/contracts/contracts/test/L1CrossDomainMessenger.t.sol +++ b/contracts/contracts/test/L1CrossDomainMessenger.t.sol @@ -451,9 +451,9 @@ contract L1CrossDomainMessengerTest is L1GatewayBaseTest { l1ETHGateway.depositETHAndCall{value: amount}(recipient, amount, dataToCall, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); @@ -473,9 +473,9 @@ contract L1CrossDomainMessengerTest is L1GatewayBaseTest { l1ETHGateway.depositETHAndCall{value: amount}(recipient, amount, dataToCall, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); diff --git a/contracts/contracts/test/L1CustomERC20Gateway.t.sol b/contracts/contracts/test/L1CustomERC20Gateway.t.sol index 1ac3f5742..8ac88ce0c 100644 --- a/contracts/contracts/test/L1CustomERC20Gateway.t.sol +++ b/contracts/contracts/test/L1CustomERC20Gateway.t.sol @@ -192,9 +192,9 @@ contract L1CustomERC20GatewayTest is L1GatewayBaseTest { ); gateway.depositERC20AndCall(address(l1Token), recipient, amount, dataToCall, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); diff --git a/contracts/contracts/test/L1ERC1155Gateway.t.sol b/contracts/contracts/test/L1ERC1155Gateway.t.sol index 7d383d388..b81e92702 100644 --- a/contracts/contracts/test/L1ERC1155Gateway.t.sol +++ b/contracts/contracts/test/L1ERC1155Gateway.t.sol @@ -168,9 +168,9 @@ contract L1ERC1155GatewayTest is L1GatewayBaseTest, ERC1155TokenReceiver { ); gateway.depositERC1155(address(l1Token), tokenId, amount, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); @@ -201,9 +201,9 @@ contract L1ERC1155GatewayTest is L1GatewayBaseTest, ERC1155TokenReceiver { ); gateway.batchDepositERC1155(address(l1Token), _tokenIds, _amounts, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); diff --git a/contracts/contracts/test/L1ERC721Gateway.t.sol b/contracts/contracts/test/L1ERC721Gateway.t.sol index a6ba3b694..17db63c8c 100644 --- a/contracts/contracts/test/L1ERC721Gateway.t.sol +++ b/contracts/contracts/test/L1ERC721Gateway.t.sol @@ -184,9 +184,9 @@ contract L1ERC721GatewayTest is L1GatewayBaseTest, ERC721TokenReceiver { ); gateway.depositERC721(address(l1Token), tokenId, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); @@ -214,9 +214,9 @@ contract L1ERC721GatewayTest is L1GatewayBaseTest, ERC721TokenReceiver { ); gateway.batchDepositERC721(address(l1Token), _tokenIds, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); diff --git a/contracts/contracts/test/L1ETHGateway.t.sol b/contracts/contracts/test/L1ETHGateway.t.sol index c5d0caf44..488e2777c 100644 --- a/contracts/contracts/test/L1ETHGateway.t.sol +++ b/contracts/contracts/test/L1ETHGateway.t.sol @@ -175,9 +175,9 @@ contract L1ETHGatewayTest is L1GatewayBaseTest { ); l1ETHGateway.depositETHAndCall{value: amount}(recipient, amount, dataToCall, defaultGasLimit); - // skip message 0 + // pop message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); diff --git a/contracts/contracts/test/L1MessageQueue.t.sol b/contracts/contracts/test/L1MessageQueue.t.sol index 3e027e96e..2620f2e65 100644 --- a/contracts/contracts/test/L1MessageQueue.t.sol +++ b/contracts/contracts/test/L1MessageQueue.t.sol @@ -215,7 +215,7 @@ contract L1MessageQueueTest is L1MessageBaseTest { l1MessageQueue.appendCrossDomainMessage(alice, gasLimit, _calldata); hevm.prank(bob); hevm.expectRevert("Only callable by the rollup"); - l1MessageQueue.popCrossDomainMessage(0, 1, 0x3ff); + l1MessageQueue.popCrossDomainMessage(0, 1); } function test_popCrossDomainMessage_tooManyMessages_reverts() external { @@ -225,7 +225,7 @@ contract L1MessageQueueTest is L1MessageBaseTest { // Expect revert when _count > 256. hevm.prank(alice); hevm.expectRevert("pop too many messages"); - l1MessageQueue.popCrossDomainMessage(0, 257, 0x3ff); + l1MessageQueue.popCrossDomainMessage(0, 257); } function test_popCrossDomainMessage_startIndexMismatch_reverts() external { @@ -235,7 +235,7 @@ contract L1MessageQueueTest is L1MessageBaseTest { // Expect revert when pendingQueueIndex != _startIndex. hevm.prank(alice); hevm.expectRevert("start index mismatch"); - l1MessageQueue.popCrossDomainMessage(1, 2, 0x3ff); + l1MessageQueue.popCrossDomainMessage(1, 2); } function test_dropCrossDomainMessage_cannotDropPending_reverts() external { @@ -268,13 +268,11 @@ contract L1MessageQueueTest is L1MessageBaseTest { // Verify the event QueueTransaction is emitted successfully. hevm.expectEmit(false, false, false, true); - emit IL1MessageQueue.DequeueTransaction(0, 10, 0x3ff); + emit IL1MessageQueue.DequeueTransaction(0, 10); // pop all 10 message - l1MessageQueue.popCrossDomainMessage(0, 10, 0x3ff); - for (uint64 i = 0; i < 10; i++) { - assertTrue(l1MessageQueue.isMessageSkipped(i)); - } + l1MessageQueue.popCrossDomainMessage(0, 10); + // drop all 10 message for (uint64 i = 0; i < 10; i++) { l1MessageQueue.dropCrossDomainMessage(i); @@ -297,10 +295,8 @@ contract L1MessageQueueTest is L1MessageBaseTest { } // pop all 10 message - l1MessageQueue.popCrossDomainMessage(0, 10, 0x3ff); - for (uint64 i = 0; i < 10; i++) { - assertTrue(l1MessageQueue.isMessageSkipped(i)); - } + l1MessageQueue.popCrossDomainMessage(0, 10); + // drop all 10 message for (uint64 i = 0; i < 10; i++) { l1MessageQueue.dropCrossDomainMessage(i); diff --git a/contracts/contracts/test/L1StandardERC20Gateway.t.sol b/contracts/contracts/test/L1StandardERC20Gateway.t.sol index 86883d53b..00bbe5e65 100644 --- a/contracts/contracts/test/L1StandardERC20Gateway.t.sol +++ b/contracts/contracts/test/L1StandardERC20Gateway.t.sol @@ -306,9 +306,9 @@ contract L1StandardERC20GatewayTest is L1GatewayBaseTest { l1StandardERC20Gateway.depositERC20AndCall(address(l1Token), recipient, amount, dataToCall, defaultGasLimit); l1StandardERC20Gateway.depositERC20AndCall(address(l1Token), recipient, amount, dataToCall, defaultGasLimit); - // skip message 0 and 1 + // pop message 0 and 1 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 2, 0x3); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 2); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 2); hevm.stopPrank(); diff --git a/contracts/contracts/test/L1WETHGateway.t.sol b/contracts/contracts/test/L1WETHGateway.t.sol index bc0bf6813..f4de6bac1 100644 --- a/contracts/contracts/test/L1WETHGateway.t.sol +++ b/contracts/contracts/test/L1WETHGateway.t.sol @@ -207,7 +207,7 @@ contract L1WETHGatewayTest is L1GatewayBaseTest { // skip message 0 hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1, 0x1); + l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); hevm.stopPrank(); diff --git a/contracts/contracts/test/L2CustomERC20Gateway.t.sol b/contracts/contracts/test/L2CustomERC20Gateway.t.sol index c5cf4b211..0edf44cbc 100644 --- a/contracts/contracts/test/L2CustomERC20Gateway.t.sol +++ b/contracts/contracts/test/L2CustomERC20Gateway.t.sol @@ -66,7 +66,7 @@ contract L2CustomERC20GatewayTest is L2GatewayBaseTest { ); // Deploy a new L2CustomERC20Gateway contract. L2CustomERC20Gateway l2CustomERC20GatewayImplTemp = new L2CustomERC20Gateway(); - + // Expect revert due to zero router address. hevm.expectRevert("zero router address"); ITransparentUpgradeableProxy(address(l2CustomERC20GatewayProxyTemp)).upgradeToAndCall( @@ -80,7 +80,7 @@ contract L2CustomERC20GatewayTest is L2GatewayBaseTest { ) ) ); - + // Expect revert due to zero counterpart address. hevm.expectRevert("zero counterpart address"); ITransparentUpgradeableProxy(address(l2CustomERC20GatewayProxyTemp)).upgradeToAndCall( @@ -134,7 +134,7 @@ contract L2CustomERC20GatewayTest is L2GatewayBaseTest { // Cast the proxy contract address to the L2CustomERC20Gateway contract type to call its methods. L2CustomERC20Gateway l2CustomERC20GatewayTemp = L2CustomERC20Gateway((address(l2CustomERC20GatewayProxyTemp))); hevm.stopPrank(); - + // Verify the counterpart, router and messenger are initialized successfully. assertEq(l2CustomERC20GatewayTemp.counterpart(), address(NON_ZERO_ADDRESS)); assertEq(l2CustomERC20GatewayTemp.router(), address(l2GatewayRouter)); @@ -155,7 +155,7 @@ contract L2CustomERC20GatewayTest is L2GatewayBaseTest { function test_updateTokenMapping_succeeds(address token1, address token2) public { hevm.assume(token1 != address(0)); - + // Expect the UpdateTokenMapping event to be emitted successfully. hevm.expectEmit(true, true, true, true); emit L2CustomERC20Gateway.UpdateTokenMapping(token2, address(0), token1); diff --git a/contracts/contracts/test/L2ERC1155Gateway.t.sol b/contracts/contracts/test/L2ERC1155Gateway.t.sol index 1a6bae769..6757de9f5 100644 --- a/contracts/contracts/test/L2ERC1155Gateway.t.sol +++ b/contracts/contracts/test/L2ERC1155Gateway.t.sol @@ -70,7 +70,7 @@ contract L2ERC1155GatewayTest is L2GatewayBaseTest, ERC1155TokenReceiver { ) ) ); - + // Expect revert due to zero messenger address. hevm.expectRevert("zero messenger address"); ITransparentUpgradeableProxy(address(l2ERC1155GatewayProxy)).upgradeToAndCall( @@ -109,7 +109,7 @@ contract L2ERC1155GatewayTest is L2GatewayBaseTest, ERC1155TokenReceiver { // Cast the proxy contract address to the L2ERC1155Gateway contract type to call its methods. L2ERC1155Gateway l2ERC1155GatewayTemp = L2ERC1155Gateway(address(l2ERC1155GatewayProxyTemp)); hevm.stopPrank(); - + // Verify the counterpart and messenger are initialized successfully. assertEq(l2ERC1155GatewayTemp.counterpart(), address(NON_ZERO_ADDRESS)); assertEq(l2ERC1155GatewayTemp.messenger(), address(l2CrossDomainMessenger)); @@ -166,7 +166,14 @@ contract L2ERC1155GatewayTest is L2GatewayBaseTest, ERC1155TokenReceiver { // Expect WithdrawERC1155 event to be emitted. hevm.expectEmit(true, true, true, true); - emit IL2ERC1155Gateway.WithdrawERC1155(address(token), address(token), address(this), address(this), tokenId, amount); + emit IL2ERC1155Gateway.WithdrawERC1155( + address(token), + address(token), + address(this), + address(this), + tokenId, + amount + ); gateway.withdrawERC1155(address(token), tokenId, amount, 0); assertEq(token.balanceOf(address(gateway), tokenId), 0); @@ -240,7 +247,14 @@ contract L2ERC1155GatewayTest is L2GatewayBaseTest, ERC1155TokenReceiver { // Expect BatchWithdrawERC1155 event to be emitted. hevm.expectEmit(true, true, true, true); - emit IL2ERC1155Gateway.BatchWithdrawERC1155(address(token), address(token), address(this), address(this), _tokenIds, _amounts); + emit IL2ERC1155Gateway.BatchWithdrawERC1155( + address(token), + address(token), + address(this), + address(this), + _tokenIds, + _amounts + ); gateway.batchWithdrawERC1155(address(token), _tokenIds, _amounts, 0); for (uint256 i = 0; i < count; i++) { @@ -264,7 +278,14 @@ contract L2ERC1155GatewayTest is L2GatewayBaseTest, ERC1155TokenReceiver { // Expect BatchWithdrawERC1155 event to be emitted. hevm.expectEmit(true, true, true, true); - emit IL2ERC1155Gateway.BatchWithdrawERC1155(address(token), address(token), address(this), to, _tokenIds, _amounts); + emit IL2ERC1155Gateway.BatchWithdrawERC1155( + address(token), + address(token), + address(this), + to, + _tokenIds, + _amounts + ); gateway.batchWithdrawERC1155(address(token), to, _tokenIds, _amounts, 0); for (uint256 i = 0; i < count; i++) { @@ -386,7 +407,14 @@ contract L2ERC1155GatewayTest is L2GatewayBaseTest, ERC1155TokenReceiver { // Expect the FinalizeDepositERC1155 event can be emitted successfully. hevm.expectEmit(true, true, true, true); - emit IL2ERC1155Gateway.FinalizeBatchDepositERC1155(address(token), address(token), from, to, _tokenIds, _amounts); + emit IL2ERC1155Gateway.FinalizeBatchDepositERC1155( + address(token), + address(token), + from, + to, + _tokenIds, + _amounts + ); messenger.callTarget( address(gateway), diff --git a/contracts/contracts/test/L2ERC721Gateway.t.sol b/contracts/contracts/test/L2ERC721Gateway.t.sol index 74aebe1bc..44ec84c3a 100644 --- a/contracts/contracts/test/L2ERC721Gateway.t.sol +++ b/contracts/contracts/test/L2ERC721Gateway.t.sol @@ -70,7 +70,7 @@ contract L2ERC721GatewayTest is L2GatewayBaseTest { ) ) ); - + // Expect revert due to zero messenger address. hevm.expectRevert("zero messenger address"); ITransparentUpgradeableProxy(address(l2ERC721GatewayProxy)).upgradeToAndCall( @@ -109,7 +109,7 @@ contract L2ERC721GatewayTest is L2GatewayBaseTest { // Cast the proxy contract address to the L2ERC721Gateway contract type to call its methods. L2ERC721Gateway l2ERC721GatewayTemp = L2ERC721Gateway(address(l2ERC721GatewayProxyTemp)); hevm.stopPrank(); - + // Verify the counterpart and messenger are initialized successfully. assertEq(l2ERC721GatewayTemp.counterpart(), address(NON_ZERO_ADDRESS)); assertEq(l2ERC721GatewayTemp.messenger(), address(l2CrossDomainMessenger)); @@ -231,7 +231,13 @@ contract L2ERC721GatewayTest is L2GatewayBaseTest { // Expect BatchWithdrawERC721 event to be emitted. hevm.expectEmit(true, true, true, true); - emit IL2ERC721Gateway.BatchWithdrawERC721(address(token), address(token), address(this), address(this), _tokenIds); + emit IL2ERC721Gateway.BatchWithdrawERC721( + address(token), + address(token), + address(this), + address(this), + _tokenIds + ); gateway.batchWithdrawERC721(address(token), _tokenIds, 0); for (uint256 i = 0; i < count; i++) { diff --git a/contracts/contracts/test/L2GatewayRouter.t.sol b/contracts/contracts/test/L2GatewayRouter.t.sol index 5a4b6076b..5d8ca28c8 100644 --- a/contracts/contracts/test/L2GatewayRouter.t.sol +++ b/contracts/contracts/test/L2GatewayRouter.t.sol @@ -48,20 +48,16 @@ contract L2GatewayRouterTest is L2GatewayBaseTest { hevm.startPrank(multisig); // Deploy a proxy contract for the L2GatewayRouter. TransparentUpgradeableProxy l2GatewayRouterProxyTempA = new TransparentUpgradeableProxy( - address(emptyContract), - address(multisig), - new bytes(0) + address(emptyContract), + address(multisig), + new bytes(0) ); // Deploy a new L2GatewayRouter contract. L2GatewayRouter l2GatewayRouterImplTempA = new L2GatewayRouter(); // Initialize the proxy with the new implementation. - ITransparentUpgradeableProxy(address(l2GatewayRouterProxyTempA)) - .upgradeToAndCall( - address(l2GatewayRouterImplTempA), - abi.encodeCall( - L2GatewayRouter.initialize, - (address(0), address(0)) - ) + ITransparentUpgradeableProxy(address(l2GatewayRouterProxyTempA)).upgradeToAndCall( + address(l2GatewayRouterImplTempA), + abi.encodeCall(L2GatewayRouter.initialize, (address(0), address(0))) ); // Cast the proxy address to the L2GatewayRouter contract type to call its methods. L2GatewayRouter l2GatewayRouterTempA = L2GatewayRouter(address(l2GatewayRouterProxyTempA)); @@ -72,33 +68,29 @@ contract L2GatewayRouterTest is L2GatewayBaseTest { hevm.startPrank(multisig); // Deploy another proxy contract for the L2GatewayRouter. TransparentUpgradeableProxy l2GatewayRouterProxyTempB = new TransparentUpgradeableProxy( - address(emptyContract), - address(multisig), - new bytes(0) + address(emptyContract), + address(multisig), + new bytes(0) ); // Deploy a new L2GatewayRouter contract. L2GatewayRouter l2GatewayRouterImplTempB = new L2GatewayRouter(); - + // Expect the SetDefaultERC20Gateway event to be emitted successfully. hevm.expectEmit(true, true, false, true); emit IL2GatewayRouter.SetDefaultERC20Gateway(address(0), address(2)); - + // Expect the SetETHGateway event to be emitted successfully. hevm.expectEmit(true, true, false, true); emit IL2GatewayRouter.SetETHGateway(address(0), address(1)); // Initialize the proxy with the new implementation. - ITransparentUpgradeableProxy(address(l2GatewayRouterProxyTempB)) - .upgradeToAndCall( - address(l2GatewayRouterImplTempB), - abi.encodeCall( - L2GatewayRouter.initialize, - (address(1), address(2)) - ) + ITransparentUpgradeableProxy(address(l2GatewayRouterProxyTempB)).upgradeToAndCall( + address(l2GatewayRouterImplTempB), + abi.encodeCall(L2GatewayRouter.initialize, (address(1), address(2))) ); // Cast the proxy address to the L2GatewayRouter contract type to call its methods. L2GatewayRouter l2GatewayRouterTempB = L2GatewayRouter(address(l2GatewayRouterProxyTempB)); hevm.stopPrank(); - + // Verify that the ethGateway and defaultERC20Gateway are initialized correctly. assertEq(l2GatewayRouterTempB.ethGateway(), address(1)); assertEq(l2GatewayRouterTempB.defaultERC20Gateway(), address(2)); diff --git a/contracts/contracts/test/Rollup.t.sol b/contracts/contracts/test/Rollup.t.sol index 05a9c46ed..8f093c673 100644 --- a/contracts/contracts/test/Rollup.t.sol +++ b/contracts/contracts/test/Rollup.t.sol @@ -56,7 +56,6 @@ contract RollupCommitBatchTest is L1MessageBaseTest { rollup.importGenesisBatch(batchHeader0); bytes32 batchHash0 = rollup.committedBatches(0); - bytes memory bitmap; bytes memory batch; // commit batch1, one batch with one block, 1 tx, 1 L1 message, no skip @@ -76,7 +75,7 @@ contract RollupCommitBatchTest is L1MessageBaseTest { // f1f58308e98844ec99e2990d88bfb36e1a30f0e6591e62af90ae6f8498a1b067 // => hash for parent batch header // 00847173b29b238cf319cde79512b7c213e5a8b4138daa7051914c4592b6dfc7 - bytes memory batchHeader1 = new bytes(249 + 32); + bytes memory batchHeader1 = new bytes(249); assembly { mstore(add(batchHeader1, 0x20), 0) // version mstore(add(batchHeader1, add(0x20, 1)), shl(192, 1)) // batchIndex = 1 @@ -92,7 +91,6 @@ contract RollupCommitBatchTest is L1MessageBaseTest { 0xf1f58308e98844ec99e2990d88bfb36e1a30f0e6591e62af90ae6f8498a1b067 ) // sequencerSetVerifyHash mstore(add(batchHeader1, add(0x20, 217)), batchHash0) // parentBatchHash - mstore(add(batchHeader1, add(0x20, 249)), 0) // bitmap0 } batch = new bytes(2 + 60); assembly { @@ -100,7 +98,6 @@ contract RollupCommitBatchTest is L1MessageBaseTest { mstore(add(batch, add(0x22, 56)), shl(240, 1)) // numTransactions = 1 mstore(add(batch, add(0x22, 58)), shl(240, 1)) // numL1Messages = 1 } - bitmap = new bytes(32); hevm.mockCall( address(rollup.l1StakingContract()), abi.encodeCall(IL1Staking.isActiveStaker, (address(0))), @@ -113,14 +110,14 @@ contract RollupCommitBatchTest is L1MessageBaseTest { ); hevm.startPrank(address(0)); hevm.expectEmit(true, true, false, true); - emit IRollup.CommitBatch(1, bytes32(0x135ab7153517794b38566492dee2a60426285da9764f8ad07da93cf7dd560a59)); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, bitmap, bytesData1, bytesData1, bytesData3); + emit IRollup.CommitBatch(1, bytes32(0x7764891041982c1f3abd964616bf5c777e752e327779f980a0881ef2bc994324)); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, bytesData1, bytesData1, bytesData3); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assertFalse(rollup.isBatchFinalized(1)); bytes32 batchHash1 = rollup.committedBatches(1); - assertEq(batchHash1, bytes32(0x135ab7153517794b38566492dee2a60426285da9764f8ad07da93cf7dd560a59)); + assertEq(batchHash1, bytes32(0x7764891041982c1f3abd964616bf5c777e752e327779f980a0881ef2bc994324)); bytes32 stateRoot1 = rollup.committedStateRoots(1); assertEq(stateRoot1, bytesData1); @@ -132,7 +129,6 @@ contract RollupCommitBatchTest is L1MessageBaseTest { assertEq(rollup.finalizedStateRoots(1), bytesData1); assertTrue(rollup.withdrawalRoots(bytes32(uint256(3)))); assertEq(rollup.lastFinalizedBatchIndex(), 1); - assertFalse(l1MessageQueueWithGasPriceOracle.isMessageSkipped(0)); assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); // check deleted values assertFalse(rollup.batchExist(0)); @@ -143,13 +139,13 @@ contract RollupCommitBatchTest is L1MessageBaseTest { // 2. block1 has 5 tx, 3 L1 messages, no skips // 3. block2 has 10 tx, 5 L1 messages, even is skipped, last is not skipped // 4. block3 has 300 tx, 256 L1 messages, odd position is skipped, last is not skipped - bytes memory batchHeader2 = new bytes(249 + 32 + 32); + bytes memory batchHeader2 = new bytes(249); assembly { mstore(add(batchHeader2, 0x20), 0) // version mstore(add(batchHeader2, add(0x20, 1)), shl(192, 2)) // batchIndex = 2 mstore(add(batchHeader2, add(0x20, 9)), shl(192, 264)) // l1MessagePopped = 264 mstore(add(batchHeader2, add(0x20, 17)), shl(192, 265)) // totalL1MessagePopped = 265 - mstore(add(batchHeader2, add(0x20, 25)), 0xc67045fcf768071021f5acec08a921553fdae4c33a675d38e4c4a25589c91120) // dataHash + mstore(add(batchHeader2, add(0x20, 25)), 0x81e7e4ffa69f7496f9377a1e4140fbb16fcc81d8086b44a1316fc77cc2b9a63b) // dataHash mstore(add(batchHeader2, add(0x20, 57)), 0x010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014) // l2 tx blob versioned hash mstore(add(batchHeader2, add(0x20, 89)), bytesData1) // prevStateHash mstore(add(batchHeader2, add(0x20, 121)), bytesData1) // postStateHash @@ -159,11 +155,6 @@ contract RollupCommitBatchTest is L1MessageBaseTest { 0xf1f58308e98844ec99e2990d88bfb36e1a30f0e6591e62af90ae6f8498a1b067 ) // sequencerSetVerifyHash mstore(add(batchHeader2, add(0x20, 217)), batchHash1) // parentBatchHash - mstore( - add(batchHeader2, add(0x20, 249)), - 77194726158210796949047323339125271902179989777093709359638389338608753093160 - ) // bitmap0 - mstore(add(batchHeader2, add(0x20, 281)), 42) // bitmap1 } batch = new bytes(2 + 60 * 4); assembly { @@ -178,15 +169,6 @@ contract RollupCommitBatchTest is L1MessageBaseTest { mstore(add(batch, add(214, 58)), shl(240, 256)) // block3.numL1Messages = 256 } - bitmap = new bytes(64); - assembly { - mstore( - add(bitmap, add(0x20, 0)), - 77194726158210796949047323339125271902179989777093709359638389338608753093160 - ) // bitmap0 - mstore(add(bitmap, add(0x20, 32)), 42) // bitmap1 - } - hevm.prank(multisig); hevm.mockCall( address(rollup.l1StakingContract()), @@ -200,15 +182,15 @@ contract RollupCommitBatchTest is L1MessageBaseTest { ); hevm.startPrank(address(0)); hevm.expectEmit(true, true, false, true); - emit IRollup.CommitBatch(2, bytes32(0x71259c7573b1db248381cef917270058e2ca20620c6eae975a1aa76b9858392a)); + emit IRollup.CommitBatch(2, bytes32(0x0389812d59b1230ba183f27cbe53955d98a1bce20512048a9b9e062b71403c94)); - batchDataInput = IRollup.BatchDataInput(0, batchHeader1, batch, bitmap, bytesData1, bytesData1, bytesData4); + batchDataInput = IRollup.BatchDataInput(0, batchHeader1, batch, bytesData1, bytesData1, bytesData4); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assertFalse(rollup.isBatchFinalized(2)); bytes32 batchHash2 = rollup.committedBatches(2); - assertEq(batchHash2, bytes32(0x71259c7573b1db248381cef917270058e2ca20620c6eae975a1aa76b9858392a)); + assertEq(batchHash2, bytes32(0x0389812d59b1230ba183f27cbe53955d98a1bce20512048a9b9e062b71403c94)); bytes32 stateRoot2 = rollup.committedStateRoots(2); assertEq(stateRoot2, bytesData1); @@ -227,27 +209,6 @@ contract RollupCommitBatchTest is L1MessageBaseTest { // check deleted values assertFalse(rollup.batchExist(1)); assertEq(rollup.committedStateRoots(1), 0); - - // 1 ~ 4, zero - for (uint256 i = 1; i < 4; i++) { - assertFalse(l1MessageQueueWithGasPriceOracle.isMessageSkipped(i)); - } - // 4 ~ 9, even is nonzero, odd is zero - for (uint256 i = 4; i < 9; i++) { - if (i % 2 == 1 || i == 8) { - assertFalse(l1MessageQueueWithGasPriceOracle.isMessageSkipped(i)); - } else { - assertTrue(l1MessageQueueWithGasPriceOracle.isMessageSkipped(i)); - } - } - // 9 ~ 265, even is nonzero, odd is zero - for (uint256 i = 9; i < 265; i++) { - if (i % 2 == 1 || i == 264) { - assertFalse(l1MessageQueueWithGasPriceOracle.isMessageSkipped(i)); - } else { - assertTrue(l1MessageQueueWithGasPriceOracle.isMessageSkipped(i)); - } - } } } @@ -309,60 +270,28 @@ contract RollupTest is L1MessageBaseTest { // only active staker allowed, revert hevm.startPrank(address(0)); hevm.expectRevert("only active staker allowed"); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - new bytes(0), - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(0), stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); // invalid version, revert hevm.startPrank(alice); hevm.expectRevert("invalid version"); - batchDataInput = IRollup.BatchDataInput( - 1, - batchHeader0, - new bytes(0), - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(1, batchHeader0, new bytes(0), stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); // batch is empty, revert hevm.startPrank(alice); hevm.expectRevert("batch is empty"); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - new bytes(0), - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(0), stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); - // batch header length too small, revert + // batch header length incorrect, revert hevm.startPrank(alice); hevm.expectRevert("batch header length too small"); - batchDataInput = IRollup.BatchDataInput( - 0, - new bytes(120), - new bytes(1), - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, new bytes(120), new bytes(1), stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -372,15 +301,7 @@ contract RollupTest is L1MessageBaseTest { } hevm.startPrank(alice); hevm.expectRevert("incorrect batch index"); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - new bytes(1), - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(1), stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assembly { @@ -393,15 +314,7 @@ contract RollupTest is L1MessageBaseTest { } hevm.startPrank(alice); hevm.expectRevert("incorrect parent batch hash"); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - new bytes(1), - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(1), stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assembly { @@ -416,7 +329,6 @@ contract RollupTest is L1MessageBaseTest { 0, batchHeader0, new bytes(1), - new bytes(0), bytes32(uint256(2)), stateRoot, getTreeRoot() @@ -424,18 +336,10 @@ contract RollupTest is L1MessageBaseTest { rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); - // wrong bitmap length, revert + // incorrect batch header length, revert hevm.startPrank(alice); - hevm.expectRevert("wrong bitmap length"); - batchDataInput = IRollup.BatchDataInput( - 0, - new bytes(250), - new bytes(1), - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + hevm.expectRevert("batch header length too small"); + batchDataInput = IRollup.BatchDataInput(0, new bytes(248), new bytes(1), stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -443,15 +347,7 @@ contract RollupTest is L1MessageBaseTest { bytes memory batch = new bytes(2); hevm.startPrank(alice); hevm.expectRevert(BatchCodecV0.ErrorNoBlockInBatch.selector); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - batch, - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -460,41 +356,18 @@ contract RollupTest is L1MessageBaseTest { batch[1] = bytes1(uint8(1)); // one block in this batch hevm.startPrank(alice); hevm.expectRevert(BatchCodecV0.ErrorIncorrectBatchLength.selector); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - batch, - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); - rollup.commitBatch(batchDataInput, batchSignatureInput); - hevm.stopPrank(); - - // cannot skip last L1 message, revert - batch = new bytes(2 + 60); - bytes memory bitmap = new bytes(32); - batch[1] = bytes1(uint8(1)); // one block in this batch - batch[59] = bytes1(uint8(1)); // numTransactions = 1 - batch[61] = bytes1(uint8(1)); // numL1Messages = 1 - bitmap[31] = bytes1(uint8(1)); - hevm.startPrank(alice); - hevm.expectRevert("cannot skip last L1 message"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, bitmap, stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); // num txs less than num L1 msgs, revert batch = new bytes(2 + 60); - bitmap = new bytes(32); batch[1] = bytes1(uint8(1)); // one block in this batch batch[59] = bytes1(uint8(1)); // numTransactions = 1 batch[61] = bytes1(uint8(3)); // numL1Messages = 3 - bitmap[31] = bytes1(uint8(3)); hevm.startPrank(alice); hevm.expectRevert("num txs less than num L1 msgs"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, bitmap, stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -503,15 +376,7 @@ contract RollupTest is L1MessageBaseTest { batch[1] = bytes1(uint8(1)); // one block in this batch hevm.startPrank(alice); hevm.expectRevert(BatchCodecV0.ErrorIncorrectBatchLength.selector); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - batch, - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -519,15 +384,7 @@ contract RollupTest is L1MessageBaseTest { batch = new bytes(2 + 60); batch[1] = bytes1(uint8(1)); // one block in this batch hevm.startPrank(alice); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - batch, - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); hevm.deal(address(0), 10 ether); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -536,15 +393,7 @@ contract RollupTest is L1MessageBaseTest { // batch is already committed, revert hevm.startPrank(alice); hevm.expectRevert("batch already committed"); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - batch, - new bytes(0), - stateRoot, - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); } @@ -574,15 +423,7 @@ contract RollupTest is L1MessageBaseTest { bytes memory batch = new bytes(2 + 60); batch[1] = bytes1(uint8(1)); // one block in this batch hevm.startPrank(alice); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - batch, - new bytes(0), - stateRoot, - stateRoot, - bytes32(uint256(4)) - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, bytes32(uint256(4))); rollup.commitBatch(batchDataInput, batchSignatureInput); // first chunk with too many txs hevm.stopPrank(); assertEq(rollup.committedBatches(1), 0xb7cb76cf9e9f5878136c1d14e095f5d5b435fe8252cad6eb100e51110033b6ed); @@ -607,15 +448,7 @@ contract RollupTest is L1MessageBaseTest { // commit another batch hevm.startPrank(alice); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader1, - batch, - new bytes(0), - stateRoot, - stateRoot, - bytes32(uint256(4)) - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader1, batch, stateRoot, stateRoot, bytes32(uint256(4))); rollup.commitBatch(batchDataInput, batchSignatureInput); // first chunk with too many txs hevm.stopPrank(); @@ -675,7 +508,6 @@ contract RollupTest is L1MessageBaseTest { 0, new bytes(0), new bytes(0), - new bytes(0), stateRoot, stateRoot, bytes32(uint256(4)) @@ -729,7 +561,7 @@ contract RollupTest is L1MessageBaseTest { hevm.prank(multisig); rollup.importGenesisBatch(batchHeader); - // batch header length too small, revert + // batch header length incorrect, revert batchHeader = new bytes(248); assembly { mstore(add(batchHeader, add(0x20, 121)), bytesData1) // stateRootHsash @@ -738,17 +570,8 @@ contract RollupTest is L1MessageBaseTest { hevm.prank(multisig); rollup.importGenesisBatch(batchHeader); - // wrong bitmap length, revert - batchHeader = new bytes(250); - assembly { - mstore(add(batchHeader, add(0x20, 121)), bytesData1) // stateRootHsash - } - hevm.expectRevert("wrong bitmap length"); - hevm.prank(multisig); - rollup.importGenesisBatch(batchHeader); - // not all fields are zero, revert - batchHeader = new bytes(249 + 32); + batchHeader = new bytes(249); assembly { mstore(add(batchHeader, add(0x20, 9)), shl(192, 1)) // l1MessagePopped not zero mstore(add(batchHeader, add(0x20, 121)), bytesData1) // stateRootHsash diff --git a/contracts/contracts/test/ZkEvmVerifierV1.t.sol b/contracts/contracts/test/ZkEvmVerifierV1.t.sol index 47f4be4dc..7891058e8 100644 --- a/contracts/contracts/test/ZkEvmVerifierV1.t.sol +++ b/contracts/contracts/test/ZkEvmVerifierV1.t.sol @@ -45,4 +45,4 @@ contract EvmTest is Test { fixture.proof[31] = 0x00; evm.verifyPlonk(fixture.proof, fixture.publicValues); } -} \ No newline at end of file +} diff --git a/contracts/contracts/test/base/BatchHeaderCodeV0.t.sol b/contracts/contracts/test/base/BatchHeaderCodeV0.t.sol index d7533aa8d..9ecabccdb 100644 --- a/contracts/contracts/test/base/BatchHeaderCodeV0.t.sol +++ b/contracts/contracts/test/base/BatchHeaderCodeV0.t.sol @@ -17,7 +17,7 @@ contract BatchHeaderCodeV0Test is DSTestPlus { } function test_btach_decode() public { - bytes memory batchHeader0 = new bytes(249 + 32); + bytes memory batchHeader0 = new bytes(249); assembly { mstore(add(batchHeader0, 0x20), shl(248, 1)) // version mstore(add(batchHeader0, add(0x20, 1)), shl(192, 1)) // batchIndex = 1 @@ -30,7 +30,6 @@ contract BatchHeaderCodeV0Test is DSTestPlus { mstore(add(batchHeader0, add(0x20, 153)), ZERO_VERSIONED_HASH) // withdrawRootHash mstore(add(batchHeader0, add(0x20, 185)), ZERO_VERSIONED_HASH) // sequencerSetVerifyHash mstore(add(batchHeader0, add(0x20, 217)), ZERO_VERSIONED_HASH) // parentBatchHash - mstore(add(batchHeader0, add(0x20, 249)), 0) // bitmap0 } uint256 version = codecTest.getVersion(batchHeader0); @@ -78,7 +77,6 @@ contract BatchHeaderCodeV0Test is DSTestPlus { add(batchHeader0, add(0x20, 217)), 0x5db199130d0c9334530358520a66d09c98c62325011a3665cf3efcc93e77623c ) // parentBatchHash - mstore(add(batchHeader0, add(0x20, 249)), 0) // bitmap0 } { uint256 version = codecTest.getVersion(batchHeader0); diff --git a/contracts/go.mod b/contracts/go.mod index 614343366..783504b76 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -6,7 +6,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/iden3/go-iden3-crypto v0.0.16 - github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 + github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e github.com/stretchr/testify v1.9.0 ) diff --git a/contracts/go.sum b/contracts/go.sum index 8f4a20fa4..71bfe5ece 100644 --- a/contracts/go.sum +++ b/contracts/go.sum @@ -25,8 +25,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 h1:4+cbRSS4lacSIC81RXxvA04UHhGVC4SHVn+bKeqhPSM= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= diff --git a/go-ethereum b/go-ethereum index 0ff2a10a9..5c7f1bb70 160000 --- a/go-ethereum +++ b/go-ethereum @@ -1 +1 @@ -Subproject commit 0ff2a10a9625e38b5d2189ad713d104192c1ae16 +Subproject commit 5c7f1bb7073ef2c88ea52d00e217b60d34ff221f diff --git a/go.work.sum b/go.work.sum index f675befb5..af83c40f3 100644 --- a/go.work.sum +++ b/go.work.sum @@ -761,6 +761,8 @@ github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/morph-l2/go-ethereum v0.5.0/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/go-ethereum v0.6.0/go.mod h1:Z8nCRf+BHV5GwFKpVamy6yur7LrKkzqaPfQcwYnq0bE= +github.com/morph-l2/go-ethereum v1.10.14-0.20241028101924-8c247ffe3315 h1:egBq7X488cY3PMSecpyf34H6zqwix0WwcDzcCOeKlYU= +github.com/morph-l2/go-ethereum v1.10.14-0.20241028101924-8c247ffe3315/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mschoch/smat v0.0.0-20160514031455-90eadee771ae/go.mod h1:qAyveg+e4CE+eKJXWVjKXM4ck2QobLqTDytGJbLLhJg= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f h1:KUppIJq7/+SVif2QVs3tOP0zanoHgBEVAwHxUSIzRqU= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/node/core/batch.go b/node/core/batch.go index e463f5f4a..2ecb561ba 100644 --- a/node/core/batch.go +++ b/node/core/batch.go @@ -7,6 +7,8 @@ import ( "fmt" "math/big" + "morph-l2/node/types" + "github.com/morph-l2/go-ethereum/accounts/abi/bind" "github.com/morph-l2/go-ethereum/common" eth "github.com/morph-l2/go-ethereum/core/types" @@ -14,8 +16,6 @@ import ( "github.com/morph-l2/go-ethereum/crypto/bls12381" "github.com/tendermint/tendermint/l2node" tmtypes "github.com/tendermint/tendermint/types" - - "morph-l2/node/types" ) type BatchingCache struct { @@ -25,7 +25,6 @@ type BatchingCache struct { // accumulated batch data batchData *types.BatchData totalL1MessagePopped uint64 - skippedBitmap []*big.Int postStateRoot common.Hash withdrawRoot common.Hash @@ -39,7 +38,6 @@ type BatchingCache struct { currentTxs tmtypes.Txs currentL1TxsHashes []common.Hash totalL1MessagePoppedAfterCurBlock uint64 - skippedBitmapAfterCurBlock []*big.Int currentStateRoot common.Hash currentWithdrawRoot common.Hash currentBlockBytes []byte @@ -65,7 +63,6 @@ func (bc *BatchingCache) ClearCurrent() { bc.currentTxs = nil bc.currentL1TxsHashes = nil bc.currentBlockContext = nil - bc.skippedBitmapAfterCurBlock = nil bc.totalL1MessagePoppedAfterCurBlock = 0 bc.currentStateRoot = common.Hash{} bc.currentWithdrawRoot = common.Hash{} @@ -103,8 +100,6 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre } } - // skipped L1 message bitmap, an array of 256-bit bitmaps - var skippedBitmap []*big.Int var txsPayload []byte var l1TxHashes []common.Hash var totalL1MessagePopped = parentBatchHeader.TotalL1MessagePopped @@ -129,7 +124,7 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre } totalL1MessagePoppedBefore := totalL1MessagePopped - txsPayload, l1TxHashes, totalL1MessagePopped, skippedBitmap, l2TxNum, err = ParsingTxs(transactions[i], parentBatchHeader.TotalL1MessagePopped, totalL1MessagePoppedBefore, skippedBitmap) + txsPayload, l1TxHashes, totalL1MessagePopped, l2TxNum, err = ParsingTxs(transactions[i], totalL1MessagePoppedBefore) if err != nil { return false, err } @@ -151,7 +146,6 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre } e.batchingCache.parentBatchHeader = parentBatchHeader - e.batchingCache.skippedBitmap = skippedBitmap header, err := e.l2Client.HeaderByNumber(context.Background(), big.NewInt(int64(lastHeightBeforeCurrentBatch))) if err != nil { return false, err @@ -194,14 +188,6 @@ func (e *Executor) SealBatch() ([]byte, []byte, error) { return nil, nil, errors.New("failed to seal batch. No data found in batch cache") } - // compute skipped bitmap - skippedL1MessageBitmapBytes := make([]byte, len(e.batchingCache.skippedBitmap)*32) - for ii, num := range e.batchingCache.skippedBitmap { - bz := num.Bytes() - padding := 32 - len(bz) - copy(skippedL1MessageBitmapBytes[32*ii+padding:], bz) - } - sidecar, err := types.EncodeTxsPayloadToBlob(e.batchingCache.batchData.TxsPayload()) if err != nil { return nil, nil, err @@ -216,10 +202,23 @@ func (e *Executor) SealBatch() ([]byte, []byte, error) { return nil, nil, fmt.Errorf("failed to get sequencerSetVerifyHash, err: %w", err) } + block, err := wrappedBlockFromBytes(e.batchingCache.currentBlockBytes) + if err != nil { + return nil, nil, err + } + l1MessagePopped := e.batchingCache.totalL1MessagePopped - e.batchingCache.parentBatchHeader.TotalL1MessagePopped + var skippedL1MessageBitmap []byte + if block.Timestamp < e.UpgradeBatchTime { + e.logger.Info("waiting upgrade batch time", "upgradeBatchTime", e.UpgradeBatchTime, "current block time", block.Timestamp, "remaining seconds", e.UpgradeBatchTime-block.Timestamp) + if l1MessagePopped > 0 { // 32 zero bytes when before upgrading and has L1 message in batch + skippedL1MessageBitmap = make([]byte, 32) + } + } + batchHeader := types.BatchHeader{ Version: 0, BatchIndex: e.batchingCache.parentBatchHeader.BatchIndex + 1, - L1MessagePopped: e.batchingCache.totalL1MessagePopped - e.batchingCache.parentBatchHeader.TotalL1MessagePopped, + L1MessagePopped: l1MessagePopped, TotalL1MessagePopped: e.batchingCache.totalL1MessagePopped, DataHash: e.batchingCache.batchData.DataHash(), BlobVersionedHash: blobHashes[0], // currently we only have one blob @@ -228,20 +227,20 @@ func (e *Executor) SealBatch() ([]byte, []byte, error) { WithdrawalRoot: e.batchingCache.withdrawRoot, SequencerSetVerifyHash: sequencerSetVerifyHash, ParentBatchHash: e.batchingCache.parentBatchHeader.Hash(), - SkippedL1MessageBitmap: skippedL1MessageBitmapBytes, + SkippedL1MessageBitmap: skippedL1MessageBitmap, } e.batchingCache.sealedBatchHeader = &batchHeader e.batchingCache.sealedSidecar = sidecar batchHash := e.batchingCache.sealedBatchHeader.Hash() e.logger.Info("Sealed batch header", "batchHash", batchHash.Hex()) - e.logger.Info(fmt.Sprintf("===batchIndex: %d \n===L1MessagePopped: %d \n===TotalL1MessagePopped: %d \n===dataHash: %x \n===blockNum: %d \n===ParentBatchHash: %x \n===SkippedL1MessageBitmap: %x \n", + e.logger.Info(fmt.Sprintf("===batchIndex: %d \n===L1MessagePopped: %d \n===TotalL1MessagePopped: %d \n===dataHash: %x \n===blockNum: %d \n===SkippedL1MessageBitmap: %s \n===ParentBatchHash: %x \n", batchHeader.BatchIndex, batchHeader.L1MessagePopped, batchHeader.TotalL1MessagePopped, batchHeader.DataHash, e.batchingCache.batchData.BlockNum(), - batchHeader.ParentBatchHash, - batchHeader.SkippedL1MessageBitmap)) + batchHeader.SkippedL1MessageBitmap, + batchHeader.ParentBatchHash)) blockContexts, _ := e.batchingCache.batchData.Encode() e.logger.Info(fmt.Sprintf("===blockContexts: %x \n", blockContexts)) @@ -320,12 +319,11 @@ func (e *Executor) CommitBatch(currentBlockBytes []byte, currentTxs tmtypes.Txs, e.batchingCache.sealedBatchHeader = nil e.batchingCache.sealedSidecar = nil - _, _, totalL1MessagePopped, skippedBitmap, _, err := ParsingTxs(e.batchingCache.currentTxs, e.batchingCache.totalL1MessagePopped, e.batchingCache.totalL1MessagePopped, nil) + _, _, totalL1MessagePopped, _, err := ParsingTxs(e.batchingCache.currentTxs, e.batchingCache.totalL1MessagePopped) if err != nil { return err } e.batchingCache.totalL1MessagePopped = totalL1MessagePopped - e.batchingCache.skippedBitmap = skippedBitmap e.batchingCache.postStateRoot = e.batchingCache.currentStateRoot e.batchingCache.withdrawRoot = e.batchingCache.currentWithdrawRoot e.batchingCache.lastPackedBlockHeight = curHeight @@ -376,7 +374,6 @@ func (e *Executor) PackCurrentBlock(currentBlockBytes []byte, currentTxs tmtypes e.batchingCache.batchData = types.NewBatchData() } e.batchingCache.batchData.Append(e.batchingCache.currentBlockContext, e.batchingCache.currentTxsPayload, e.batchingCache.currentL1TxsHashes) - e.batchingCache.skippedBitmap = e.batchingCache.skippedBitmapAfterCurBlock e.batchingCache.totalL1MessagePopped = e.batchingCache.totalL1MessagePoppedAfterCurBlock e.batchingCache.withdrawRoot = e.batchingCache.currentWithdrawRoot e.batchingCache.postStateRoot = e.batchingCache.currentStateRoot @@ -392,7 +389,7 @@ func (e *Executor) BatchHash(batchHeaderBytes []byte) ([]byte, error) { } func (e *Executor) setCurrentBlock(currentBlockBytes []byte, currentTxs tmtypes.Txs) error { - currentTxsPayload, curL1TxsHashes, totalL1MessagePopped, skippedBitmap, l2TxNum, err := ParsingTxs(currentTxs, e.batchingCache.parentBatchHeader.TotalL1MessagePopped, e.batchingCache.totalL1MessagePopped, e.batchingCache.skippedBitmap) + currentTxsPayload, curL1TxsHashes, totalL1MessagePopped, l2TxNum, err := ParsingTxs(currentTxs, e.batchingCache.totalL1MessagePopped) if err != nil { return err } @@ -408,7 +405,6 @@ func (e *Executor) setCurrentBlock(currentBlockBytes []byte, currentTxs tmtypes. e.batchingCache.currentTxs = currentTxs e.batchingCache.currentL1TxsHashes = curL1TxsHashes e.batchingCache.totalL1MessagePoppedAfterCurBlock = totalL1MessagePopped - e.batchingCache.skippedBitmapAfterCurBlock = skippedBitmap e.batchingCache.currentStateRoot = curBlock.StateRoot e.batchingCache.currentWithdrawRoot = curBlock.WithdrawTrieRoot e.batchingCache.currentBlockBytes = currentBlockBytes @@ -416,21 +412,14 @@ func (e *Executor) setCurrentBlock(currentBlockBytes []byte, currentTxs tmtypes. return nil } -func ParsingTxs(transactions tmtypes.Txs, totalL1MessagePoppedBeforeTheBatch, totalL1MessagePoppedBefore uint64, skippedBitmapBefore []*big.Int) (txsPayload []byte, l1TxHashes []common.Hash, totalL1MessagePopped uint64, skippedBitmap []*big.Int, l2TxNum int, err error) { - // the first queue index that belongs to this batch - baseIndex := totalL1MessagePoppedBeforeTheBatch +func ParsingTxs(transactions tmtypes.Txs, totalL1MessagePoppedBefore uint64) (txsPayload []byte, l1TxHashes []common.Hash, totalL1MessagePopped uint64, l2TxNum int, err error) { // the next queue index that we need to process nextIndex := totalL1MessagePoppedBefore - skippedBitmap = make([]*big.Int, len(skippedBitmapBefore)) - for i, bm := range skippedBitmapBefore { - skippedBitmap[i] = new(big.Int).SetBytes(bm.Bytes()) - } - for i, txBz := range transactions { var tx eth.Transaction if err = tx.UnmarshalBinary(txBz); err != nil { - return nil, nil, 0, nil, 0, fmt.Errorf("transaction %d is not valid: %v", i, err) + return nil, nil, 0, 0, fmt.Errorf("transaction %d is not valid: %v", i, err) } if isL1MessageTxType(txBz) { @@ -439,25 +428,7 @@ func ParsingTxs(transactions tmtypes.Txs, totalL1MessagePoppedBeforeTheBatch, to currentIndex := tx.L1MessageQueueIndex() if currentIndex < nextIndex { - return nil, nil, 0, nil, 0, fmt.Errorf("unexpected batch payload, expected queue index: %d, got: %d. transaction hash: %v", nextIndex, currentIndex, tx.Hash()) - } - - // mark skipped messages - for skippedIndex := nextIndex; skippedIndex < currentIndex; skippedIndex++ { - quo := int((skippedIndex - baseIndex) / 256) - rem := int((skippedIndex - baseIndex) % 256) - for len(skippedBitmap) <= quo { - bitmap := big.NewInt(0) - skippedBitmap = append(skippedBitmap, bitmap) - } - skippedBitmap[quo].SetBit(skippedBitmap[quo], rem, 1) - } - - // process included message - quo := int((currentIndex - baseIndex) / 256) - for len(skippedBitmap) <= quo { - bitmap := big.NewInt(0) - skippedBitmap = append(skippedBitmap, bitmap) + return nil, nil, 0, 0, fmt.Errorf("unexpected batch payload, expected queue index: %d, got: %d. transaction hash: %v", nextIndex, currentIndex, tx.Hash()) } nextIndex = currentIndex + 1 @@ -524,9 +495,17 @@ func (e *Executor) ConvertBlsData(blsData l2node.BlsData) (*eth.BatchSignature, return &bs, nil } -func heightFromBCBytes(blockBytes []byte) (uint64, error) { +func wrappedBlockFromBytes(blockBytes []byte) (*types.WrappedBlock, error) { var curBlock = new(types.WrappedBlock) if err := curBlock.UnmarshalBinary(blockBytes); err != nil { + return nil, err + } + return curBlock, nil +} + +func heightFromBCBytes(blockBytes []byte) (uint64, error) { + curBlock, err := wrappedBlockFromBytes(blockBytes) + if err != nil { return 0, err } return curBlock.Number, nil diff --git a/node/core/config.go b/node/core/config.go index 5457b2986..f14d66488 100644 --- a/node/core/config.go +++ b/node/core/config.go @@ -22,6 +22,11 @@ import ( "morph-l2/node/types" ) +var ( + MainnetUpgradeBatchTime uint64 = 2000 + HoleskyUpgradeBatchTime uint64 = 350000 +) + type Config struct { L2 *types.L2Config `json:"l2"` L2CrossDomainMessengerAddress common.Address `json:"cross_domain_messenger_address"` @@ -29,6 +34,7 @@ type Config struct { GovAddress common.Address `json:"gov_address"` L2StakingAddress common.Address `json:"l2staking_address"` MaxL1MessageNumPerBlock uint64 `json:"max_l1_message_num_per_block"` + UpgradeBatchTime uint64 `json:"upgrade_batch_time"` DevSequencer bool `json:"dev_sequencer"` Logger tmlog.Logger `json:"logger"` } @@ -151,5 +157,16 @@ func (c *Config) SetCliContext(ctx *cli.Context) error { c.DevSequencer = ctx.GlobalBool(flags.DevSequencer.Name) } + // setup batch upgrade index + switch { + case ctx.GlobalIsSet(flags.MainnetFlag.Name): + c.UpgradeBatchTime = MainnetUpgradeBatchTime + case ctx.GlobalIsSet(flags.HoleskyFlag.Name): + c.UpgradeBatchTime = HoleskyUpgradeBatchTime + case ctx.GlobalIsSet(flags.UpgradeBatchTime.Name): + c.UpgradeBatchTime = ctx.GlobalUint64(flags.UpgradeBatchTime.Name) + logger.Info("set UpgradeBatchTime: ", ctx.GlobalUint64(flags.UpgradeBatchTime.Name)) + } + return nil } diff --git a/node/core/executor.go b/node/core/executor.go index 27fad5423..90f97e253 100644 --- a/node/core/executor.go +++ b/node/core/executor.go @@ -51,8 +51,9 @@ type Executor struct { isSequencer bool devSequencer bool - rollupABI *abi.ABI - batchingCache *BatchingCache + UpgradeBatchTime uint64 + rollupABI *abi.ABI + batchingCache *BatchingCache logger tmlog.Logger metrics *Metrics @@ -119,6 +120,7 @@ func NewExecutor(newSyncFunc NewSyncerFunc, config *Config, tmPubKey crypto.PubK devSequencer: config.DevSequencer, rollupABI: rollupAbi, batchingCache: NewBatchingCache(), + UpgradeBatchTime: config.UpgradeBatchTime, logger: logger, metrics: PrometheusMetrics("morphnode"), } @@ -195,7 +197,6 @@ func (e *Executor) RequestBlockData(height int64) (txs [][]byte, blockMeta []byt NextL1MessageIndex: l2Block.NextL1MessageIndex, Hash: l2Block.Hash, CollectedL1TxHashes: collectedL1TxHashes, - SkippedL1Txs: l2Block.SkippedTxs, } blockMeta, err = wb.MarshalBinary() txs = l2Block.Transactions @@ -239,7 +240,6 @@ func (e *Executor) CheckBlockData(txs [][]byte, metaData []byte) (valid bool, er WithdrawTrieRoot: wrappedBlock.WithdrawTrieRoot, NextL1MessageIndex: wrappedBlock.NextL1MessageIndex, Hash: wrappedBlock.Hash, - SkippedTxs: wrappedBlock.SkippedL1Txs, Transactions: txs, } @@ -306,7 +306,6 @@ func (e *Executor) DeliverBlock(txs [][]byte, metaData []byte, consensusData l2n LogsBloom: wrappedBlock.LogsBloom, WithdrawTrieRoot: wrappedBlock.WithdrawTrieRoot, NextL1MessageIndex: wrappedBlock.NextL1MessageIndex, - SkippedTxs: wrappedBlock.SkippedL1Txs, Hash: wrappedBlock.Hash, Transactions: txs, diff --git a/node/core/l1_message.go b/node/core/l1_message.go index 207f3dfaf..83a7ec7c1 100644 --- a/node/core/l1_message.go +++ b/node/core/l1_message.go @@ -19,11 +19,10 @@ func (e *Executor) updateNextL1MessageIndex(l2Block *catalyst.ExecutableL2Data) // validateL1Messages has the constraints // 1. all the collected L1 messages belonged to the given L1TxHash are exist. // 2. the collected L1 messages belonged to the given L1TxHash are sequenced correctly. -// 3. the L1 messages from the block.Transactions are sorted correctly(queueIndex increases but does not have to be continuous). +// 3. the L1 messages from the block.Transactions are sorted correctly. // 4. the L1 message from the block.Transactions must be one of the collected L1Messages. // 5. all the L1 messages from the block.Transactions must precede other normal L2 transactions. -// 6. the block.NextL1MessageIndex MUST be greater the queue index of the last involved L1Message in the block. -// 7. the skipped transactions from ExecutableL2Data extracted Must be the same as the ones from Layer1. +// 6. the block.NextL1MessageIndex MUST be equal to the queue index of the last involved L1Message in the block. func (e *Executor) validateL1Messages(block *catalyst.ExecutableL2Data, collectedL1TxHashes []common.Hash) error { nextExpectedIndex := e.nextL1MsgIndex @@ -54,7 +53,6 @@ func (e *Executor) validateL1Messages(block *catalyst.ExecutableL2Data, collecte nextExpectedIndex = e.nextL1MsgIndex L1SectionOver := false - var skipped eth.Transactions // check the L1 messages from block.Transactions for i, txBz := range block.Transactions { if !isL1MessageTxType(txBz) { @@ -74,7 +72,7 @@ func (e *Executor) validateL1Messages(block *catalyst.ExecutableL2Data, collecte currentTxQueueIndex := tx.L1MessageQueueIndex() // constraints 3 - if currentTxQueueIndex < nextExpectedIndex { + if currentTxQueueIndex != nextExpectedIndex { return types.ErrInvalidL1MessageOrder } @@ -96,44 +94,17 @@ func (e *Executor) validateL1Messages(block *catalyst.ExecutableL2Data, collecte e.logger.Error("wrong L1Message content", "index", currentTxQueueIndex) return types.ErrUnknownL1Message } - for queueIndex := nextExpectedIndex; queueIndex < currentTxQueueIndex; queueIndex++ { - skippedTx, ok := cache[queueIndex] - if !ok { - e.logger.Error("lost skipped L1Message collected", "queueIndex", queueIndex) - return types.ErrInvalidSkippedL1Message - } - skipped = append(skipped, skippedTx) - } nextExpectedIndex = currentTxQueueIndex + 1 } // constraints 6 - if block.NextL1MessageIndex < nextExpectedIndex { + if block.NextL1MessageIndex != nextExpectedIndex { e.logger.Error("wrong NextL1MessageIndex in the block", "indexOfLastInvolvedL1Tx", nextExpectedIndex-1, "block.NextL1MessageIndex", block.NextL1MessageIndex) return types.ErrWrongNextL1MessageIndex } - for queueIndex := nextExpectedIndex; queueIndex < block.NextL1MessageIndex; queueIndex++ { - skippedTx, ok := cache[queueIndex] - if !ok { - e.logger.Error("lost skipped L1Message collected", "queueIndex", queueIndex) - return types.ErrInvalidL1Message - } - skipped = append(skipped, skippedTx) - } - // constraints 7 - if len(skipped) != len(block.SkippedTxs) { - e.logger.Error("found wrong number of skipped txs", "expected skippedTx num", len(skipped), "actual", len(block.SkippedTxs)) - return types.ErrInvalidSkippedL1Message - } - for i, skippedTx := range skipped { - if skippedTx.Hash() != block.SkippedTxs[i].Tx.Hash() { - e.logger.Error("found wrong skipped tx hash", "expected skippedTx hash", skippedTx.Hash().Hex(), "actual", block.SkippedTxs[i].Tx.Hash()) - return types.ErrInvalidSkippedL1Message - } - } return nil } diff --git a/node/core/l1_message_test.go b/node/core/l1_message_test.go index cd4ae9a13..d425dbe1e 100644 --- a/node/core/l1_message_test.go +++ b/node/core/l1_message_test.go @@ -164,86 +164,26 @@ func TestValidateL1Messages(t *testing.T) { }) t.Run("constraint 6: testing block.NextL1MessageIndex", func(t *testing.T) { - to := common.BigToAddress(big.NewInt(1)) - skippedL1WithIndex10 := eth.L1MessageTx{ - QueueIndex: uint64(10), - Gas: 21000, - To: &to, - Value: big.NewInt(100), - Sender: common.BigToAddress(big.NewInt(int64(10))), - } - l1Message10 := types.L1Message{ - L1TxHash: common.BigToHash(big.NewInt(int64(10))), - L1MessageTx: skippedL1WithIndex10, - } - thisL1Reader := l1Reader.copy() - thisL1Reader.addL1Message(l1Message10) executor := Executor{ nextL1MsgIndex: 0, - l1MsgReader: thisL1Reader, + l1MsgReader: &l1Reader, logger: tmlog.NewTMLogger(tmlog.NewSyncWriter(os.Stdout)), } block := &catalyst.ExecutableL2Data{ - NextL1MessageIndex: 11, + NextL1MessageIndex: 10, Transactions: l1TxBytes, - SkippedTxs: []*eth.SkippedTransaction{ - {Tx: eth.NewTx(&skippedL1WithIndex10)}, - }, } - collectedL1TxHashesCopy := append(collectedL1TxHashes, common.BigToHash(big.NewInt(int64(10)))) - err := executor.validateL1Messages(block, collectedL1TxHashesCopy) + err := executor.validateL1Messages(block, collectedL1TxHashes) require.NoError(t, err) block = &catalyst.ExecutableL2Data{ - NextL1MessageIndex: 9, + NextL1MessageIndex: 11, Transactions: l1TxBytes, } err = executor.validateL1Messages(block, collectedL1TxHashes) require.ErrorIs(t, err, types.ErrWrongNextL1MessageIndex) }) - t.Run("constraint 7: invalid skipped L1 messages", func(t *testing.T) { - executor := Executor{ - nextL1MsgIndex: 0, - l1MsgReader: &l1Reader, - logger: tmlog.NewTMLogger(tmlog.NewSyncWriter(os.Stdout)), - } - - originTxs := block.Transactions[:] - l1TxBytes := make([][]byte, 0) - l1TxBytes = append(append(l1TxBytes, originTxs[:2]...), originTxs[3:]...) - - thisBlock := &catalyst.ExecutableL2Data{ - NextL1MessageIndex: 10, - Transactions: l1TxBytes, - } - - err := executor.validateL1Messages(thisBlock, collectedL1TxHashes) - require.EqualError(t, err, types.ErrInvalidSkippedL1Message.Error()) - - skippedTx := new(eth.Transaction) - err = skippedTx.UnmarshalBinary(originTxs[2]) - require.NoError(t, err) - thisBlock = &catalyst.ExecutableL2Data{ - NextL1MessageIndex: 10, - Transactions: l1TxBytes, - SkippedTxs: []*eth.SkippedTransaction{ - {Tx: skippedTx}, - }, - } - err = executor.validateL1Messages(thisBlock, collectedL1TxHashes) - require.NoError(t, err) - - thisBlock = &catalyst.ExecutableL2Data{ - NextL1MessageIndex: 10, - Transactions: l1TxBytes, - SkippedTxs: []*eth.SkippedTransaction{ - {Tx: skippedTx}, - }, - } - err = executor.validateL1Messages(thisBlock, collectedL1TxHashes) - require.NoError(t, err) - }) } var _ types.L1MessageReader = (*testL1MsgReader)(nil) diff --git a/node/derivation/batch_info.go b/node/derivation/batch_info.go index 8b55ed92b..17d4fe88a 100644 --- a/node/derivation/batch_info.go +++ b/node/derivation/batch_info.go @@ -78,7 +78,10 @@ func (bi *BatchInfo) TxNum() uint64 { func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { bi.root = batch.PostStateRoot bi.withdrawalRoot = batch.WithdrawRoot - bi.skippedL1MessageBitmap = new(big.Int).SetBytes(batch.SkippedL1MessageBitmap[:]) + // If skipMap is zero value, there are no msgs that can be skipped + if len(batch.SkippedL1MessageBitmap[:]) != 0 { + bi.skippedL1MessageBitmap = new(big.Int).SetBytes(batch.SkippedL1MessageBitmap[:]) + } bi.version = uint64(batch.Version) tq := newTxQueue() for _, blob := range batch.Sidecar.Blobs { diff --git a/node/derivation/derivation.go b/node/derivation/derivation.go index ae0beb7ac..5fe76e292 100644 --- a/node/derivation/derivation.go +++ b/node/derivation/derivation.go @@ -10,6 +10,7 @@ import ( "time" "github.com/morph-l2/go-ethereum" + "github.com/morph-l2/go-ethereum/accounts/abi" "github.com/morph-l2/go-ethereum/accounts/abi/bind" "github.com/morph-l2/go-ethereum/common" eth "github.com/morph-l2/go-ethereum/core/types" @@ -46,6 +47,9 @@ type Derivation struct { l1BeaconClient *L1BeaconClient L2ToL1MessagePasser *bindings.L2ToL1MessagePasser + rollupABI *abi.ABI + legacyRollupABI *abi.ABI // before remove skipMap + db Database cancel context.CancelFunc @@ -81,6 +85,14 @@ func NewDerivationClient(ctx context.Context, cfg *Config, syncer *sync.Syncer, if err != nil { return nil, err } + rollupAbi, err := bindings.RollupMetaData.GetAbi() + if err != nil { + return nil, err + } + legacyRollupAbi, err := types.LegacyRollupMetaData.GetAbi() + if err != nil { + return nil, err + } ctx, cancel := context.WithCancel(ctx) logger = logger.With("module", "derivation") metrics := PrometheusMetrics("morphnode") @@ -102,6 +114,8 @@ func NewDerivationClient(ctx context.Context, cfg *Config, syncer *sync.Syncer, syncer: syncer, validator: validator, rollup: rollup, + rollupABI: rollupAbi, + legacyRollupABI: legacyRollupAbi, logger: logger, RollupContractAddress: cfg.RollupContractAddress, confirmations: cfg.L1.Confirmations, @@ -263,28 +277,10 @@ func (d *Derivation) fetchRollupDataByTxHash(txHash common.Hash, blockNumber uin if pending { return nil, errors.New("pending transaction") } - abi, err := bindings.RollupMetaData.GetAbi() + batch, err := d.UnPackData(tx.Data()) if err != nil { return nil, err } - if !bytes.Equal(abi.Methods["commitBatch"].ID, tx.Data()[:4]) { - return nil, types.ErrNotCommitBatchTx - } - args, err := abi.Methods["commitBatch"].Inputs.Unpack(tx.Data()[4:]) - if err != nil { - return nil, fmt.Errorf("submitBatches Unpack error:%v", err) - } - - rollupBatchData := args[0].(struct { - Version uint8 "json:\"version\"" - ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" - BlockContexts []uint8 "json:\"blockContexts\"" - SkippedL1MessageBitmap []uint8 "json:\"skippedL1MessageBitmap\"" - PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" - PostStateRoot [32]uint8 "json:\"postStateRoot\"" - WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" - }) - // query blob block, err := d.l1Client.BlockByNumber(d.ctx, big.NewInt(int64(blockNumber))) if err != nil { @@ -304,18 +300,7 @@ func (d *Derivation) fetchRollupDataByTxHash(txHash common.Hash, blockNumber uin return nil, fmt.Errorf("getBlockSidecar error:%v", err) } } - - batch := geth.RPCRollupBatch{ - Version: uint(rollupBatchData.Version), - ParentBatchHeader: rollupBatchData.ParentBatchHeader, - BlockContexts: rollupBatchData.BlockContexts, - SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, - PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), - PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), - WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), - Sidecar: bts, - } - + batch.Sidecar = bts rollupData, err := d.parseBatch(batch) if err != nil { d.logger.Error("parse batch failed", "txNonce", tx.Nonce(), "txHash", txHash, @@ -328,6 +313,58 @@ func (d *Derivation) fetchRollupDataByTxHash(txHash common.Hash, blockNumber uin return rollupData, nil } +func (d *Derivation) UnPackData(data []byte) (geth.RPCRollupBatch, error) { + var batch geth.RPCRollupBatch + if bytes.Equal(d.rollupABI.Methods["commitBatch"].ID, data[:4]) { + args, err := d.rollupABI.Methods["commitBatch"].Inputs.Unpack(data[4:]) + if err != nil { + return batch, fmt.Errorf("submitBatches Unpack error:%v", err) + } + rollupBatchData := args[0].(struct { + Version uint8 "json:\"version\"" + ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" + BlockContexts []uint8 "json:\"blockContexts\"" + PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" + PostStateRoot [32]uint8 "json:\"postStateRoot\"" + WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" + }) + batch = geth.RPCRollupBatch{ + Version: uint(rollupBatchData.Version), + ParentBatchHeader: rollupBatchData.ParentBatchHeader, + BlockContexts: rollupBatchData.BlockContexts, + PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), + PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), + WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + } + } else if bytes.Equal(d.legacyRollupABI.Methods["commitBatch"].ID, data[:4]) { + args, err := d.legacyRollupABI.Methods["commitBatch"].Inputs.Unpack(data[4:]) + if err != nil { + return batch, fmt.Errorf("submitBatches Unpack error:%v", err) + } + rollupBatchData := args[0].(struct { + Version uint8 "json:\"version\"" + ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" + BlockContexts []uint8 "json:\"blockContexts\"" + SkippedL1MessageBitmap []uint8 "json:\"skippedL1MessageBitmap\"" + PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" + PostStateRoot [32]uint8 "json:\"postStateRoot\"" + WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" + }) + batch = geth.RPCRollupBatch{ + Version: uint(rollupBatchData.Version), + ParentBatchHeader: rollupBatchData.ParentBatchHeader, + BlockContexts: rollupBatchData.BlockContexts, + SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, + PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), + PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), + WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + } + } else { + return batch, types.ErrNotCommitBatchTx + } + return batch, nil +} + func (d *Derivation) parseBatch(batch geth.RPCRollupBatch) (*BatchInfo, error) { parentBatchHeader, err := types.DecodeBatchHeader(batch.ParentBatchHeader) if err != nil { @@ -355,7 +392,7 @@ func (d *Derivation) handleL1Message(rollupData *BatchInfo, parentTotalL1Message totalL1MessagePopped += uint64(block.l1MsgNum) if len(l1Messages) > 0 { for _, l1Message := range l1Messages { - if rollupData.skippedL1MessageBitmap.Bit(int(l1Message.QueueIndex)-int(parentTotalL1MessagePopped)) == 1 { + if rollupData.skippedL1MessageBitmap != nil && rollupData.skippedL1MessageBitmap.Bit(int(l1Message.QueueIndex)-int(parentTotalL1MessagePopped)) == 1 { continue } transaction := eth.NewTx(&l1Message.L1MessageTx) diff --git a/node/derivation/derivation_test.go b/node/derivation/derivation_test.go index e54a76543..6d16c0a0c 100644 --- a/node/derivation/derivation_test.go +++ b/node/derivation/derivation_test.go @@ -2,36 +2,45 @@ package derivation import ( "testing" + + "github.com/morph-l2/go-ethereum/common/hexutil" + "github.com/stretchr/testify/require" + + "morph-l2/bindings/bindings" + "morph-l2/node/types" +) + +var ( + errorData = "0x92f65af30000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008e0000000000000000000000000000000000000000000000000000000000000098000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000006a02b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b620322b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b6203227ae5ba08d7291c96c8cbddcc148bf48a6d68c7974b94356f53754ef6171d75700000000000000000000000000000000000000000000000000000000000006c00000000000000000000000000000000000000000000000000000000000000059000000000000000127000000000000000000000000000000006a5279896e0503ca805ecdb9208afa1ae78e214ceae183cf59fba3a8788e4598b0cd5e7bf4073160681199a5f107e15ec96c350840ebedb522a79c73615037b9000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004b11400000000000015520000000065e43bfb000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015530000000065e43c02000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015540000000065e43c08000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015550000000065e43c0f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015560000000065e43c15000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015570000000065e43c1c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015580000000065e43c22000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015590000000065e43c280000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155a0000000065e43c2f0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155b0000000065e43c350000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155c0000000065e43c3c0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155d0000000065e43c420000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155e0000000065e43c490000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155f0000000065e43c4f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015600000000065e43c56000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015610000000065e43c5c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015620000000065e43c62000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015630000000065e43c69000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015640000000065e43c6f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015650000000065e43c7600000000000000000000000000000000000000000000000000000000000000000000000000989680000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e" + legacyData = "0xd63b3549000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000260292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d37700ba12e4dbe3733969348ffaf757b9225bdc7a3c48a5119f9a31256bbaa206fd6c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6df00000000000000000000000000000000000000000000000000000000000000f9000000000000008a98000000000000000000000000000001fbabd382d81484e2b0dc54e4d50d5767c312cd80d9c333217cc54d2a7395b06e650146a9e49d91463c241819423fac7ffa814a0a04473cace0e7a00b42da68ecd00a75fef5e27def60bbd05a3d76a3ca335df4d182a33e63c7f6c8e7890fe323f2292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d3776c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6dffed06619f2ec164eedb2121c02eda056059e58b8651d8b73785ab73f8aa3a555ac69de82ab218b900846f782176e21f0fa200cd8d8e8a70f64624e80d45d68a800000000000000000000000000000000000000000000000000000000000000000000000000003e000100000000000776ed00000000672b021600000000000000000000000000000000000000000000000000000000000f42400000000001c9c38003f9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000004e4600000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b6346ded94fc61b637763610d0c59846b778108000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000002c6d7a4e30d442f8d1acdc5068b604b75d1fc37673a07d51e0e56f3cbe28c36fa177a7d490b0147b89dbcc9e496f7d80000000000000000000000000000000001dddd9c85d12fb203286351cd1def0e5e830194ccc8ca494420adaa75db7613bf4cbe61fb316b8df2ec89eeda2b04e1" + data = "0x4a8d544f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000260292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d37700ba12e4dbe3733969348ffaf757b9225bdc7a3c48a5119f9a31256bbaa206fd6c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6df00000000000000000000000000000000000000000000000000000000000000f9000000000000008a98000000000000000000000000000001fbabd382d81484e2b0dc54e4d50d5767c312cd80d9c333217cc54d2a7395b06e650146a9e49d91463c241819423fac7ffa814a0a04473cace0e7a00b42da68ecd00a75fef5e27def60bbd05a3d76a3ca335df4d182a33e63c7f6c8e7890fe323f2292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d3776c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6dffed06619f2ec164eedb2121c02eda056059e58b8651d8b73785ab73f8aa3a555ac69de82ab218b900846f782176e21f0fa200cd8d8e8a70f64624e80d45d68a800000000000000000000000000000000000000000000000000000000000000000000000000003e000100000000000776ed00000000672b021600000000000000000000000000000000000000000000000000000000000f42400000000001c9c38003f9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000004e4600000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b6346ded94fc61b637763610d0c59846b778108000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000002c6d7a4e30d442f8d1acdc5068b604b75d1fc37673a07d51e0e56f3cbe28c36fa177a7d490b0147b89dbcc9e496f7d80000000000000000000000000000000001dddd9c85d12fb203286351cd1def0e5e830194ccc8ca494420adaa75db7613bf4cbe61fb316b8df2ec89eeda2b04e1" ) -func TestDecodeBatch(t *testing.T) { - //abi, err := bindings.RollupMetaData.GetAbi() - //require.NoError(t, err) - //hexData := "0x92f65af30000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008e0000000000000000000000000000000000000000000000000000000000000098000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000006a02b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b620322b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b6203227ae5ba08d7291c96c8cbddcc148bf48a6d68c7974b94356f53754ef6171d75700000000000000000000000000000000000000000000000000000000000006c00000000000000000000000000000000000000000000000000000000000000059000000000000000127000000000000000000000000000000006a5279896e0503ca805ecdb9208afa1ae78e214ceae183cf59fba3a8788e4598b0cd5e7bf4073160681199a5f107e15ec96c350840ebedb522a79c73615037b9000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004b11400000000000015520000000065e43bfb000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015530000000065e43c02000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015540000000065e43c08000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015550000000065e43c0f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015560000000065e43c15000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015570000000065e43c1c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015580000000065e43c22000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015590000000065e43c280000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155a0000000065e43c2f0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155b0000000065e43c350000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155c0000000065e43c3c0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155d0000000065e43c420000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155e0000000065e43c490000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155f0000000065e43c4f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015600000000065e43c56000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015610000000065e43c5c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015620000000065e43c62000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015630000000065e43c69000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015640000000065e43c6f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015650000000065e43c7600000000000000000000000000000000000000000000000000000000000000000000000000989680000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e" - //txData, err := hexutil.Decode(hexData) - //require.NoError(t, err) - //args, err := abi.Methods["commitBatch"].Inputs.Unpack(txData[4:]) - //require.NoError(t, err) - //rollupBatchData := args[0].(struct { - // Version uint8 "json:\"version\"" - // ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" - // BlockContexts []uint8 "json:\"blockContexts\"" - // SkippedL1MessageBitmap []uint8 "json:\"skippedL1MessageBitmap\"" - // PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" - // PostStateRoot [32]uint8 "json:\"postStateRoot\"" - // WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" - //}) - // - //batch := eth.RPCRollupBatch{ - // Version: uint(rollupBatchData.Version), - // ParentBatchHeader: rollupBatchData.ParentBatchHeader, - // BlockContexts: rollupBatchData.BlockContexts, - // SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, - // PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), - // PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), - // WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), - //} - //batchInfo := new(BatchInfo) - //err = batchInfo.ParseBatch(batch) - //require.NoError(t, err) +func TestUnPackData(t *testing.T) { + rollupAbi, err := bindings.RollupMetaData.GetAbi() + require.NoError(t, err) + legacyRollupAbi, err := types.LegacyRollupMetaData.GetAbi() + require.NoError(t, err) + d := Derivation{ + rollupABI: rollupAbi, + legacyRollupABI: legacyRollupAbi, + } + errorTxData, err := hexutil.Decode(errorData) + require.NoError(t, err) + _, err = d.UnPackData(errorTxData) + require.Error(t, err) + legacyTxData, err := hexutil.Decode(legacyData) + require.NoError(t, err) + legacyBatch, err := d.UnPackData(legacyTxData) + require.NoError(t, err) + LegacyBatchInfo := new(BatchInfo) + err = LegacyBatchInfo.ParseBatch(legacyBatch) + require.NoError(t, err) + txData, err := hexutil.Decode(data) + require.NoError(t, err) + batch, err := d.UnPackData(txData) + require.NoError(t, err) + batchInfo := new(BatchInfo) + err = batchInfo.ParseBatch(batch) + require.NoError(t, err) } diff --git a/node/flags/flags.go b/node/flags/flags.go index 7867b509b..c8fa45925 100644 --- a/node/flags/flags.go +++ b/node/flags/flags.go @@ -207,6 +207,27 @@ var ( Usage: "Number of blocks that we collect in a single eth_getLogs query", EnvVar: prefixEnvVar("DERIVATION_FETCH_BLOCK_RANGE"), } + + // Batch rules + UpgradeBatchTime = cli.Uint64Flag{ + Name: "upgrade.batchTime", + Usage: "Batch index at which the sequencers start to upgrade the batch format", + EnvVar: prefixEnvVar("UPGRADE_BATCH_TIME"), + } + MainnetFlag = cli.BoolFlag{ + Name: "mainnet", + Usage: "Morph mainnet", + } + HoleskyFlag = cli.BoolFlag{ + Name: "holesky", + Usage: "Morph Holesky", + } + + DerivationConfirmations = cli.Int64Flag{ + Name: "derivation.confirmations", + Usage: "The number of confirmations needed on L1 for finalization. If not set, the default value is l1.confirmations", + EnvVar: prefixEnvVar("DERIVATION_CONFIRMATIONS"), + } // Logger LogLevel = &cli.StringFlag{ Name: "log.level", @@ -306,6 +327,11 @@ var Flags = []cli.Flag{ DerivationFetchBlockRange, L1BeaconAddr, + // batch rules + UpgradeBatchTime, + MainnetFlag, + HoleskyFlag, + // logger LogLevel, LogFormat, diff --git a/node/go.mod b/node/go.mod index 2ffdd7572..dae5dc141 100644 --- a/node/go.mod +++ b/node/go.mod @@ -10,7 +10,7 @@ require ( github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/golang-lru v1.0.2 github.com/klauspost/compress v1.17.9 - github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 + github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e github.com/prometheus/client_golang v1.17.0 github.com/spf13/viper v1.13.0 github.com/stretchr/testify v1.9.0 diff --git a/node/go.sum b/node/go.sum index 452bdc251..2a6ffdcda 100644 --- a/node/go.sum +++ b/node/go.sum @@ -360,8 +360,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 h1:4+cbRSS4lacSIC81RXxvA04UHhGVC4SHVn+bKeqhPSM= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/node/types/batch.go b/node/types/batch.go index 19058cefd..12b95cd96 100644 --- a/node/types/batch.go +++ b/node/types/batch.go @@ -6,12 +6,18 @@ import ( "morph-l2/node/zstd" + "github.com/morph-l2/go-ethereum/accounts/abi/bind" "github.com/morph-l2/go-ethereum/common" "github.com/morph-l2/go-ethereum/common/hexutil" "github.com/morph-l2/go-ethereum/crypto" ) -var EmptyVersionedHash = common.HexToHash("0x010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014") +var ( + EmptyVersionedHash = common.HexToHash("0x010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014") + LegacyRollupMetaData = &bind.MetaData{ + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", + } +) type BatchHeader struct { // Encoded in BatchHeaderV0Codec diff --git a/node/types/consensus_message.go b/node/types/consensus_message.go index c29985bb3..1fdbe491d 100644 --- a/node/types/consensus_message.go +++ b/node/types/consensus_message.go @@ -5,9 +5,8 @@ import ( "encoding/binary" "math/big" - "github.com/morph-l2/go-ethereum/core/types" - "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/core/types" "github.com/morph-l2/go-ethereum/rlp" ) @@ -89,7 +88,7 @@ type WrappedBlock struct { Hash common.Hash `json:"hash"` CollectedL1TxHashes []common.Hash `json:"l1TxHashes" rlp:"optional"` - SkippedL1Txs []*types.SkippedTransaction `json:"skippedL1Txs" rlp:"optional"` + SkippedL1Txs []*types.SkippedTransaction `json:"-" rlp:"optional"` BaseFee *big.Int `json:"baseFeePerGas" rlp:"optional"` } diff --git a/node/types/derivation.go b/node/types/derivation.go deleted file mode 100644 index c0304688a..000000000 --- a/node/types/derivation.go +++ /dev/null @@ -1,6 +0,0 @@ -package types - -type BatchBls struct { - //BlsData *eth.BLSData - BlockNumber uint64 // last blockNumber of batch -} diff --git a/ops/docker/.env b/ops/docker/.env index 98dff2a0f..238f50195 100644 --- a/ops/docker/.env +++ b/ops/docker/.env @@ -4,9 +4,10 @@ JWT_SECRET_PATH=/jwt-secret.txt NODE_DATA_DIR=/data L1_ETH_RPC=http://l1:8545 L1_BEACON_CHAIN_RPC=http://beacon-chain:3500 -L1_CROSS_DOMAIN_MESSENGER=0x5fc8d32690cc91d4c39d9d3abcbd16989f875707 -MORPH_PORTAL=0x0165878a594ca255338adfa4d48449f69242eb8f -MORPH_ROLLUP=0x2279b7a0a67db372996a5fab50d91eaa73d2ebe6 +L1_CROSS_DOMAIN_MESSENGER=0xcf7ed3acca5a467e9e704c703e8d87f634fb0fc9 +MORPH_PORTAL=0xdc64a140aa3e981100a9beca4e685f962f0cf6c9 +MORPH_ROLLUP=0x0165878a594ca255338adfa4d48449f69242eb8f BUILD_GETH=l2-geth RUST_LOG=info -Proxy__L1Staking=0xa513e6e4b8f2a923d98304ec87f64353c4d5c853 +Proxy__L1Staking=0x5fc8d32690cc91d4c39d9d3abcbd16989f875707 +BATCH_UPGRADE_TIME=0 diff --git a/ops/docker/docker-compose-4nodes.yml b/ops/docker/docker-compose-4nodes.yml index cddec285c..cfdf27369 100644 --- a/ops/docker/docker-compose-4nodes.yml +++ b/ops/docker/docker-compose-4nodes.yml @@ -244,6 +244,7 @@ services: - MORPH_NODE_SYNC_DEPOSIT_CONTRACT_ADDRESS=${MORPH_PORTAL:-0x6900000000000000000000000000000000000001} - MORPH_NODE_L1_CONFIRMATIONS=0 - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} + - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - "node_data_0:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" @@ -277,6 +278,7 @@ services: - MORPH_NODE_SYNC_DEPOSIT_CONTRACT_ADDRESS=${MORPH_PORTAL:-0x6900000000000000000000000000000000000001} - MORPH_NODE_L1_CONFIRMATIONS=0 - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} + - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - "node_data_1:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" @@ -311,6 +313,7 @@ services: - MORPH_NODE_SYNC_DEPOSIT_CONTRACT_ADDRESS=${MORPH_PORTAL:-0x6900000000000000000000000000000000000001} - MORPH_NODE_L1_CONFIRMATIONS=0 - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} + - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - "node_data_2:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" @@ -345,6 +348,7 @@ services: - MORPH_NODE_SYNC_DEPOSIT_CONTRACT_ADDRESS=${MORPH_PORTAL:-0x6900000000000000000000000000000000000001} - MORPH_NODE_L1_CONFIRMATIONS=0 - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} + - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - "node_data_3:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" diff --git a/ops/l2-genesis/deploy-config/qanet-deploy-config.json b/ops/l2-genesis/deploy-config/qanet-deploy-config.json index 0f573d0e1..82ea5fcbf 100644 --- a/ops/l2-genesis/deploy-config/qanet-deploy-config.json +++ b/ops/l2-genesis/deploy-config/qanet-deploy-config.json @@ -14,8 +14,8 @@ "fundDevAccounts": false, "l1StartingBlockTag": "earliest", - "maxTxPerBlock": 10000, - "maxTxPayloadBytesPerBlock": 345000, + "maxTxPerBlock": 1000, + "maxTxPayloadBytesPerBlock": 122880, "gasPriceOracleOverhead": 2500, "gasPriceOracleScalar": 1000000000, diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index a950d67b7..277d2c777 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -6,7 +6,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/holiman/uint256 v1.2.4 - github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 + github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e github.com/stretchr/testify v1.9.0 github.com/urfave/cli v1.22.14 ) diff --git a/ops/l2-genesis/go.sum b/ops/l2-genesis/go.sum index 0a1a50c87..e073c4429 100644 --- a/ops/l2-genesis/go.sum +++ b/ops/l2-genesis/go.sum @@ -143,8 +143,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 h1:4+cbRSS4lacSIC81RXxvA04UHhGVC4SHVn+bKeqhPSM= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/tools/go.mod b/ops/tools/go.mod index 887f69114..865fcdb43 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -5,7 +5,7 @@ go 1.22 replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 require ( - github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 + github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e github.com/tendermint/tendermint v0.35.9 ) diff --git a/ops/tools/go.sum b/ops/tools/go.sum index 95dd6436f..a45f366e7 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -163,8 +163,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 h1:4+cbRSS4lacSIC81RXxvA04UHhGVC4SHVn+bKeqhPSM= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/oracle/go.mod b/oracle/go.mod index 8d86dcb74..074df471e 100644 --- a/oracle/go.mod +++ b/oracle/go.mod @@ -7,7 +7,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/go-kit/kit v0.12.0 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 + github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/oracle/go.sum b/oracle/go.sum index 7d0b42448..a08b1aef8 100644 --- a/oracle/go.sum +++ b/oracle/go.sum @@ -173,12 +173,10 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/externalsign v0.3.0 h1:eVGON//ofO5eJSZvJQW+8HUeaGlg4seaS99SzS8GQc4= -github.com/morph-l2/externalsign v0.3.0/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 h1:4+cbRSS4lacSIC81RXxvA04UHhGVC4SHVn+bKeqhPSM= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/tx-submitter/go.mod b/tx-submitter/go.mod index 3ad0de4ce..1fada601d 100644 --- a/tx-submitter/go.mod +++ b/tx-submitter/go.mod @@ -7,7 +7,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/holiman/uint256 v1.2.4 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 + github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/tx-submitter/go.sum b/tx-submitter/go.sum index b44394540..c6d21f1ad 100644 --- a/tx-submitter/go.sum +++ b/tx-submitter/go.sum @@ -162,12 +162,10 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/externalsign v0.3.0 h1:eVGON//ofO5eJSZvJQW+8HUeaGlg4seaS99SzS8GQc4= -github.com/morph-l2/externalsign v0.3.0/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625 h1:4+cbRSS4lacSIC81RXxvA04UHhGVC4SHVn+bKeqhPSM= -github.com/morph-l2/go-ethereum v1.10.14-0.20241021080617-0ff2a10a9625/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= +github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/tx-submitter/services/pendingtx.go b/tx-submitter/services/pendingtx.go index d0f706c95..53276fb7a 100644 --- a/tx-submitter/services/pendingtx.go +++ b/tx-submitter/services/pendingtx.go @@ -169,12 +169,12 @@ func (pt *PendingTxs) IncQueryTimes(txHash common.Hash) { pt.txinfos[txHash] = TxInfo{tx: pt.txinfos[txHash].tx, queryTimes: pt.txinfos[txHash].queryTimes + 1, sendTime: pt.txinfos[txHash].sendTime} } -func (pt *PendingTxs) SetFailedStatus(index uint64) { +func (pt *PendingTxs) TrySetFailedBatchIndex(index uint64) { pt.mu.Lock() defer pt.mu.Unlock() // failed index must be less than pindex - if pt.failedIndex != nil || index >= pt.pindex { + if index > pt.pindex { return } @@ -231,9 +231,3 @@ func (pt *PendingTxs) ExistedIndex(index uint64) bool { return false } - -func (pt *PendingTxs) ResetFailedIndex(index uint64) { - pt.mu.Lock() - defer pt.mu.Unlock() - pt.failedIndex = &index -} diff --git a/tx-submitter/services/pendingtx_test.go b/tx-submitter/services/pendingtx_test.go new file mode 100644 index 000000000..71cb9ab76 --- /dev/null +++ b/tx-submitter/services/pendingtx_test.go @@ -0,0 +1,31 @@ +package services + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func TestSetFailedStatus(t *testing.T) { + // index 2 failed -> set failed index 2 success + pt := NewPendingTxs(nil, nil, nil) + pt.SetPindex(2) + require.Nil(t, pt.failedIndex) + pt.TrySetFailedBatchIndex(2) + require.NotNil(t, pt.failedIndex) + require.EqualValues(t, 2, *pt.failedIndex) + + // failed index =2 + // new failed index = 3 + // set failed index failed + pt = NewPendingTxs(nil, nil, nil) + failedIndex := uint64(2) + pt.failedIndex = &failedIndex + pt.TrySetFailedBatchIndex(3) + require.EqualValues(t, 2, *pt.failedIndex) + + // set failed index without pindex -> failed + pt = NewPendingTxs(nil, nil, nil) + pt.TrySetFailedBatchIndex(2) + require.Nil(t, pt.failedIndex) +} diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index d944b5bd4..4e4ef0ddd 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -332,7 +332,7 @@ func (r *Rollup) ProcessTx() error { // happening between RemoveRollupRestriction // and SetPindex in the rollup function r.rollupFinalizeMu.Lock() - r.pendingTxs.SetFailedStatus(index) + r.pendingTxs.TrySetFailedBatchIndex(index) r.rollupFinalizeMu.Unlock() } @@ -639,7 +639,16 @@ func (r *Rollup) rollup() error { } } - log.Info("batch info", "last_commit_batch", batchIndex-1, "batch_will_get", batchIndex) + var failedIndex uint64 + if r.pendingTxs.failedIndex != nil { + failedIndex = *r.pendingTxs.failedIndex + } + log.Info("batch index info", + "last_committed_batch_index", cindex, + "batch_index_will_get", batchIndex, + "pending_index", r.pendingTxs.pindex, + "failed_index", failedIndex, + ) if r.pendingTxs.ExistedIndex(batchIndex) { log.Info("batch index already committed", "index", batchIndex) return nil @@ -675,13 +684,12 @@ func (r *Rollup) rollup() error { return err } rollupBatch := bindings.IRollupBatchDataInput{ - Version: uint8(batch.Version), - ParentBatchHeader: batch.ParentBatchHeader, - BlockContexts: batch.BlockContexts, - SkippedL1MessageBitmap: batch.SkippedL1MessageBitmap, - PrevStateRoot: batch.PrevStateRoot, - PostStateRoot: batch.PostStateRoot, - WithdrawalRoot: batch.WithdrawRoot, + Version: uint8(batch.Version), + ParentBatchHeader: batch.ParentBatchHeader, + BlockContexts: batch.BlockContexts, + PrevStateRoot: batch.PrevStateRoot, + PostStateRoot: batch.PostStateRoot, + WithdrawalRoot: batch.WithdrawRoot, } // tip and cap @@ -702,9 +710,9 @@ func (r *Rollup) rollup() error { if r.pendingTxs.HaveFailed() { log.Warn("estimate gas err, wait failed tx fixed", "err", err, - "update_pooled_pending_index", cindex+1, + "try_update_pooled_pending_index", cindex+1, ) - r.pendingTxs.ResetFailedIndex(cindex + 1) + r.pendingTxs.TrySetFailedBatchIndex(cindex + 1) return nil } From c04b33177b75b05fa9be23e39359ad4f965f1ed2 Mon Sep 17 00:00:00 2001 From: Kathy <22675649+anylots@users.noreply.github.com> Date: Fri, 6 Dec 2024 14:58:57 +0800 Subject: [PATCH 15/33] remove skip map (#664) --- gas-oracle/app/src/abi/Rollup.json | 39 ++++++++++++++++++++---- prover/bin/challenge/src/abi/Rollup.json | 39 ++++++++++++++++++++---- prover/bin/challenge/src/handler.rs | 4 --- prover/bin/shadow-prove/abi/Rollup.json | 39 ++++++++++++++++++++---- 4 files changed, 99 insertions(+), 22 deletions(-) diff --git a/gas-oracle/app/src/abi/Rollup.json b/gas-oracle/app/src/abi/Rollup.json index 10b61fb3f..dc4c9bba6 100644 --- a/gas-oracle/app/src/abi/Rollup.json +++ b/gas-oracle/app/src/abi/Rollup.json @@ -623,11 +623,6 @@ "name": "blockContexts", "type": "bytes" }, - { - "internalType": "bytes", - "name": "skippedL1MessageBitmap", - "type": "bytes" - }, { "internalType": "bytes32", "name": "prevStateRoot", @@ -695,6 +690,25 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "batchIndex", + "type": "uint256" + } + ], + "name": "committedStateRoots", + "outputs": [ + { + "internalType": "bytes32", + "name": "stateRoot", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [], "name": "finalizationPeriodSeconds", @@ -804,6 +818,19 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_prevStateRoot", + "type": "bytes32" + } + ], + "name": "initialize2", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -1142,4 +1169,4 @@ "stateMutability": "payable", "type": "receive" } -] \ No newline at end of file +] diff --git a/prover/bin/challenge/src/abi/Rollup.json b/prover/bin/challenge/src/abi/Rollup.json index 10b61fb3f..dc4c9bba6 100644 --- a/prover/bin/challenge/src/abi/Rollup.json +++ b/prover/bin/challenge/src/abi/Rollup.json @@ -623,11 +623,6 @@ "name": "blockContexts", "type": "bytes" }, - { - "internalType": "bytes", - "name": "skippedL1MessageBitmap", - "type": "bytes" - }, { "internalType": "bytes32", "name": "prevStateRoot", @@ -695,6 +690,25 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "batchIndex", + "type": "uint256" + } + ], + "name": "committedStateRoots", + "outputs": [ + { + "internalType": "bytes32", + "name": "stateRoot", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [], "name": "finalizationPeriodSeconds", @@ -804,6 +818,19 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_prevStateRoot", + "type": "bytes32" + } + ], + "name": "initialize2", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -1142,4 +1169,4 @@ "stateMutability": "payable", "type": "receive" } -] \ No newline at end of file +] diff --git a/prover/bin/challenge/src/handler.rs b/prover/bin/challenge/src/handler.rs index 58429344e..dc40a1407 100644 --- a/prover/bin/challenge/src/handler.rs +++ b/prover/bin/challenge/src/handler.rs @@ -418,7 +418,6 @@ struct BatchInfo { withdrawal_root: [u8; 32], sequencer_set_verify_hash: [u8; 32], parent_batch_hash: [u8; 32], - skipped_l1_message_bitmap: Bytes, } async fn batch_inspect(l1_provider: &Provider, hash: TxHash) -> Option { @@ -450,7 +449,6 @@ async fn batch_inspect(l1_provider: &Provider, hash: TxHash) -> Option, hash: TxHash) -> Option Date: Tue, 10 Dec 2024 17:51:15 +0800 Subject: [PATCH 16/33] Pick oracle changes for skipMap feature (#673) Co-authored-by: corey --- oracle/oracle/batch.go | 145 +++++++++++++++++++++++++++-------------- 1 file changed, 97 insertions(+), 48 deletions(-) diff --git a/oracle/oracle/batch.go b/oracle/oracle/batch.go index 7f29d2023..b8e9c3ce7 100644 --- a/oracle/oracle/batch.go +++ b/oracle/oracle/batch.go @@ -19,6 +19,10 @@ import ( "github.com/morph-l2/go-ethereum/log" ) +var BeforeRemoveSkipMapMetaData = &bind.MetaData{ + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", +} + type BatchInfoMap map[common.Hash][]BatchInfo type RollupBatch struct { TxCount uint64 @@ -35,7 +39,7 @@ type BatchInfo struct { func (o *Oracle) GetStartBlock(nextBatchSubmissionIndex *big.Int) (uint64, error) { if nextBatchSubmissionIndex.Uint64() == 1 { - return o.cfg.StartBlock, nil + return o.cfg.StartBlock + 1, nil } bs, err := o.record.BatchSubmissions(nil, new(big.Int).Sub(nextBatchSubmissionIndex, big.NewInt(1))) if err != nil { @@ -45,8 +49,19 @@ func (o *Oracle) GetStartBlock(nextBatchSubmissionIndex *big.Int) (uint64, error } func (o *Oracle) GetBatchSubmission(ctx context.Context, startBlock, nextBatchSubmissionIndex uint64) ([]bindings.IRecordBatchSubmission, error) { - var rLogs []types.Log + var recordBatchSubmissions []bindings.IRecordBatchSubmission + lastLogs, err := o.fetchRollupLog(ctx, startBlock-1, startBlock-1) + if err != nil { + return nil, fmt.Errorf("fetch rollupLog error:%v", err) + } + if err = o.getBatchSubmissionByLogs(lastLogs, recordBatchSubmissions, nextBatchSubmissionIndex); err != nil { + return nil, fmt.Errorf("GetBatchSubmissionByLogs error:%v", err) + } + if len(recordBatchSubmissions) == maxBatchSize { + return recordBatchSubmissions, nil + } for { + batchIndex := nextBatchSubmissionIndex + uint64(len(recordBatchSubmissions)) endBlock := startBlock + o.cfg.MaxSize header, err := o.l1Client.HeaderByNumber(o.ctx, nil) if err != nil { @@ -59,84 +74,114 @@ func (o *Oracle) GetBatchSubmission(ctx context.Context, startBlock, nextBatchSu if endBlock >= header.Number.Uint64() { endBlock = header.Number.Uint64() } - rLogs, err = o.fetchRollupLog(ctx, startBlock, endBlock) + fetchLogs, err := o.fetchRollupLog(ctx, startBlock, endBlock) if err != nil { return nil, fmt.Errorf("fetch rollupLog error:%v", err) } - if len(rLogs) > 1 { - break + if err = o.getBatchSubmissionByLogs(fetchLogs, recordBatchSubmissions, batchIndex); err != nil { + return nil, fmt.Errorf("GetBatchSubmissionByLogs error:%v", err) + } + if len(recordBatchSubmissions) == maxBatchSize { + return recordBatchSubmissions, nil } startBlock = endBlock + 1 } +} - var recordBatchSubmissions []bindings.IRecordBatchSubmission - batchIndex := nextBatchSubmissionIndex +func (o *Oracle) getBatchSubmissionByLogs(rLogs []types.Log, recordBatchSubmissions []bindings.IRecordBatchSubmission, batchIndex uint64) error { for _, lg := range rLogs { - tx, pending, err := o.l1Client.TransactionByHash(ctx, lg.TxHash) + tx, pending, err := o.l1Client.TransactionByHash(o.ctx, lg.TxHash) if err != nil { - return nil, fmt.Errorf("get transaction by hash error:%v", err) + return fmt.Errorf("get transaction by hash error:%v", err) } signer := types.NewLondonSignerWithEIP4844(tx.ChainId()) msg, err := tx.AsMessage(signer, tx.GasFeeCap()) if err != nil { - return nil, err + return err } header, err := o.l1Client.HeaderByNumber(context.Background(), big.NewInt(int64(lg.BlockNumber))) if err != nil { - return nil, fmt.Errorf("get header by number error:%v", err) + return fmt.Errorf("get header by number error:%v", err) } if pending { - return nil, errors.New("pending transaction") + return errors.New("pending transaction") + } + beforeRemoveSkipMapAbi, err := BeforeRemoveSkipMapMetaData.GetAbi() + if err != nil { + return err } abi, err := bindings.RollupMetaData.GetAbi() if err != nil { - return nil, err + return err + } + var batch eth.RPCRollupBatch + if bytes.Equal(tx.Data()[0:4], abi.Methods["commitBatch"].ID) { + args, err := abi.Methods["commitBatch"].Inputs.Unpack(tx.Data()[4:]) + if err != nil { + log.Error("fetch batch info failed", "txHash", lg.TxHash, "blockNumber", lg.BlockNumber, "error", err) + return fmt.Errorf("unpack commitBatch error:%v", err) + } + rollupBatchData := args[0].(struct { + Version uint8 "json:\"version\"" + ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" + BlockContexts []uint8 "json:\"blockContexts\"" + PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" + PostStateRoot [32]uint8 "json:\"postStateRoot\"" + WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" + }) + batch = eth.RPCRollupBatch{ + Version: uint(rollupBatchData.Version), + ParentBatchHeader: rollupBatchData.ParentBatchHeader, + BlockContexts: rollupBatchData.BlockContexts, + PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), + PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), + WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + } + } else if bytes.Equal(tx.Data()[0:4], beforeRemoveSkipMapAbi.Methods["commitBatch"].ID) { + args, err := beforeRemoveSkipMapAbi.Methods["commitBatch"].Inputs.Unpack(tx.Data()[4:]) + if err != nil { + log.Error("fetch batch info failed", "txHash", lg.TxHash, "blockNumber", lg.BlockNumber, "error", err) + return fmt.Errorf("unpack commitBatch error:%v", err) + } + + rollupBatchData := args[0].(struct { + Version uint8 "json:\"version\"" + ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" + BlockContexts []uint8 "json:\"blockContexts\"" + SkippedL1MessageBitmap []uint8 "json:\"skippedL1MessageBitmap\"" + PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" + PostStateRoot [32]uint8 "json:\"postStateRoot\"" + WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" + }) + batch = eth.RPCRollupBatch{ + Version: uint(rollupBatchData.Version), + ParentBatchHeader: rollupBatchData.ParentBatchHeader, + BlockContexts: rollupBatchData.BlockContexts, + SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, + PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), + PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), + WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + } + } else { + continue } rollupCommitBatch, parseErr := o.rollup.ParseCommitBatch(lg) if parseErr != nil { log.Error("get l2 BlockNumber", "err", err) - return nil, parseErr - } - - if !bytes.Equal(abi.Methods["commitBatch"].ID, tx.Data()[:4]) { - continue + return parseErr } if rollupCommitBatch.BatchIndex.Uint64() < batchIndex { continue } if rollupCommitBatch.BatchIndex.Uint64() > batchIndex { - return nil, fmt.Errorf(fmt.Sprintf("batch is incontinuity,expect %v,have %v", batchIndex, rollupCommitBatch.BatchIndex.Uint64())) + return fmt.Errorf(fmt.Sprintf("batch is incontinuity,expect %v,have %v", batchIndex, rollupCommitBatch.BatchIndex.Uint64())) } // set batchIndex to new batch index + 1 batchIndex = rollupCommitBatch.BatchIndex.Uint64() + 1 - args, err := abi.Methods["commitBatch"].Inputs.Unpack(tx.Data()[4:]) - if err != nil { - log.Error("fetch batch info failed", "txHash", lg.TxHash, "blockNumber", lg.BlockNumber, "error", err) - return nil, err - } - rollupBatchData := args[0].(struct { - Version uint8 "json:\"version\"" - ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" - BlockContexts []uint8 "json:\"blockContexts\"" - SkippedL1MessageBitmap []uint8 "json:\"skippedL1MessageBitmap\"" - PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" - PostStateRoot [32]uint8 "json:\"postStateRoot\"" - WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" - }) - - batch := eth.RPCRollupBatch{ - Version: uint(rollupBatchData.Version), - ParentBatchHeader: rollupBatchData.ParentBatchHeader, - BlockContexts: rollupBatchData.BlockContexts, - SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, - PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), - PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), - WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), - } var batchData derivation.BatchInfo if err = batchData.ParseBatch(batch); err != nil { - return nil, fmt.Errorf("parse batch error:%v", err) + return fmt.Errorf("parse batch error:%v", err) } log.Info("received new batch", "batch_index", rollupCommitBatch.BatchIndex.Uint64()) recordBatchSubmission := bindings.IRecordBatchSubmission{ @@ -149,10 +194,10 @@ func (o *Oracle) GetBatchSubmission(ctx context.Context, startBlock, nextBatchSu } recordBatchSubmissions = append(recordBatchSubmissions, recordBatchSubmission) if len(recordBatchSubmissions) == maxBatchSize { - return recordBatchSubmissions, nil + return nil } } - return recordBatchSubmissions, nil + return nil } func (o *Oracle) fetchRollupLog(ctx context.Context, start, end uint64) ([]types.Log, error) { @@ -221,9 +266,13 @@ func (o *Oracle) submitRecord() error { if err != nil { return fmt.Errorf("record finalized batch error:%v,batchLength:%v", err, len(batchSubmissions)) } - log.Info("record finalized batch success", "txHash", tx.Hash(), "batchLength", len(batchSubmissions)) + err = o.l2Client.SendTransaction(o.ctx, tx) + if err != nil { + return fmt.Errorf("send transaction error:%v", err) + } + log.Info("record finalized batch success", "txHash", tx.Hash(), "batchLength", len(batchSubmissions), "nonce", tx.Nonce()) var receipt *types.Receipt - err = backoff.Do(30, backoff.Exponential(), func() error { + err = backoff.Do(3, backoff.Exponential(), func() error { var err error receipt, err = o.waitReceiptWithCtx(o.ctx, tx.Hash()) return err From 9545853fbf2c03df3c94f11cb24305381229c7c4 Mon Sep 17 00:00:00 2001 From: corey Date: Mon, 23 Dec 2024 09:26:42 +0800 Subject: [PATCH 17/33] Fix oracle getBatches (#676) (#685) --- oracle/oracle/batch.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/oracle/oracle/batch.go b/oracle/oracle/batch.go index b8e9c3ce7..4270bc117 100644 --- a/oracle/oracle/batch.go +++ b/oracle/oracle/batch.go @@ -54,7 +54,7 @@ func (o *Oracle) GetBatchSubmission(ctx context.Context, startBlock, nextBatchSu if err != nil { return nil, fmt.Errorf("fetch rollupLog error:%v", err) } - if err = o.getBatchSubmissionByLogs(lastLogs, recordBatchSubmissions, nextBatchSubmissionIndex); err != nil { + if err = o.getBatchSubmissionByLogs(lastLogs, &recordBatchSubmissions, nextBatchSubmissionIndex); err != nil { return nil, fmt.Errorf("GetBatchSubmissionByLogs error:%v", err) } if len(recordBatchSubmissions) == maxBatchSize { @@ -78,7 +78,7 @@ func (o *Oracle) GetBatchSubmission(ctx context.Context, startBlock, nextBatchSu if err != nil { return nil, fmt.Errorf("fetch rollupLog error:%v", err) } - if err = o.getBatchSubmissionByLogs(fetchLogs, recordBatchSubmissions, batchIndex); err != nil { + if err = o.getBatchSubmissionByLogs(fetchLogs, &recordBatchSubmissions, batchIndex); err != nil { return nil, fmt.Errorf("GetBatchSubmissionByLogs error:%v", err) } if len(recordBatchSubmissions) == maxBatchSize { @@ -88,7 +88,7 @@ func (o *Oracle) GetBatchSubmission(ctx context.Context, startBlock, nextBatchSu } } -func (o *Oracle) getBatchSubmissionByLogs(rLogs []types.Log, recordBatchSubmissions []bindings.IRecordBatchSubmission, batchIndex uint64) error { +func (o *Oracle) getBatchSubmissionByLogs(rLogs []types.Log, recordBatchSubmissions *[]bindings.IRecordBatchSubmission, batchIndex uint64) error { for _, lg := range rLogs { tx, pending, err := o.l1Client.TransactionByHash(o.ctx, lg.TxHash) if err != nil { @@ -192,8 +192,8 @@ func (o *Oracle) getBatchSubmissionByLogs(rLogs []types.Log, recordBatchSubmissi RollupTime: big.NewInt(int64(header.Time)), RollupBlock: big.NewInt(int64(lg.BlockNumber)), } - recordBatchSubmissions = append(recordBatchSubmissions, recordBatchSubmission) - if len(recordBatchSubmissions) == maxBatchSize { + *recordBatchSubmissions = append(*recordBatchSubmissions, recordBatchSubmission) + if len(*recordBatchSubmissions) == maxBatchSize { return nil } } From f3c569d52e114a7d261435e78479e7b0fbe3009d Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Mon, 23 Dec 2024 09:41:08 +0800 Subject: [PATCH 18/33] Fixes and improments for submitter (#672) --- tx-submitter/db/db.go | 20 ++++ tx-submitter/entry.go | 15 +-- tx-submitter/event/indexer.go | 41 ++++----- tx-submitter/event/storage.go | 51 ++++++----- tx-submitter/event/storage_test.go | 11 ++- tx-submitter/params/leveldb_keys.go | 5 + tx-submitter/services/rollup.go | 121 +++++++++++++------------ tx-submitter/services/rotator.go | 12 ++- tx-submitter/types/batch_cache.go | 39 ++++++++ tx-submitter/types/batch_cache_test.go | 21 +++++ 10 files changed, 222 insertions(+), 114 deletions(-) create mode 100644 tx-submitter/params/leveldb_keys.go create mode 100644 tx-submitter/types/batch_cache.go create mode 100644 tx-submitter/types/batch_cache_test.go diff --git a/tx-submitter/db/db.go b/tx-submitter/db/db.go index 4a5914c49..d6913390b 100644 --- a/tx-submitter/db/db.go +++ b/tx-submitter/db/db.go @@ -3,6 +3,7 @@ package db import ( "fmt" "strconv" + "sync" "morph-l2/tx-submitter/utils" @@ -15,6 +16,7 @@ var ( type Db struct { db *leveldb.Database + m sync.Mutex } func New(pathname string) (*Db, error) { @@ -26,6 +28,8 @@ func New(pathname string) (*Db, error) { return &Db{db: ldb}, nil } func (d *Db) GetFloat(key string) (float64, error) { + d.m.Lock() + defer d.m.Unlock() v, err := d.db.Get([]byte(key)) if err != nil { return 0, fmt.Errorf("failed get key from leveldb %s: %w", key, err) @@ -37,6 +41,8 @@ func (d *Db) GetFloat(key string) (float64, error) { return res, nil } func (d *Db) PutFloat(key string, val float64) error { + d.m.Lock() + defer d.m.Unlock() valStr := strconv.FormatFloat(val, 'f', -1, 64) err := d.db.Put([]byte(key), []byte(valStr)) if err != nil { @@ -44,6 +50,20 @@ func (d *Db) PutFloat(key string, val float64) error { } return nil } +func (d *Db) GetString(key string) (string, error) { + d.m.Lock() + defer d.m.Unlock() + v, err := d.db.Get([]byte(key)) + if err != nil { + return "", fmt.Errorf("failed to get key from leveldb %w", err) + } + return string(v), nil +} +func (d *Db) PutString(key, val string) error { + d.m.Lock() + defer d.m.Unlock() + return d.db.Put([]byte(key), []byte(val)) +} func (d *Db) Close() error { return d.db.Close() } diff --git a/tx-submitter/entry.go b/tx-submitter/entry.go index 2687ed8e3..8849a4e1e 100644 --- a/tx-submitter/entry.go +++ b/tx-submitter/entry.go @@ -69,6 +69,7 @@ func Main() func(ctx *cli.Context) error { "rough_estimate_per_l1_msg", cfg.RollupTxGasPerL1Msg, "log_level", cfg.LogLevel, "leveldb_pathname", cfg.LeveldbPathName, + "l1_stop_in_blocks", cfg.BlockNotIncreasedThreshold, ) ctx, cancel := context.WithCancel(context.Background()) @@ -183,17 +184,16 @@ func Main() func(ctx *cli.Context) error { }, } - eventIndexer := event.NewEventIndexer(cfg.StakingEventStoreFilename, l1Client, new(big.Int).SetUint64(cfg.L1StakingDeployedBlockNumber), filter, cfg.EventIndexStep) - - // new rotator - rotator := services.NewRotator(common.HexToAddress(cfg.L2SequencerAddress), common.HexToAddress(cfg.L2GovAddress), eventIndexer) - // start rorator event indexer - rotator.StartEventIndexer() - ldb, err := db.New(cfg.LeveldbPathName) if err != nil { return fmt.Errorf("failed to connect leveldb: %w", err) } + eventInfoStorage := event.NewEventInfoStorage(ldb) + eventIndexer := event.NewEventIndexer(l1Client, new(big.Int).SetUint64(cfg.L1StakingDeployedBlockNumber), filter, cfg.EventIndexStep, eventInfoStorage) + // new rotator + rotator := services.NewRotator(common.HexToAddress(cfg.L2SequencerAddress), common.HexToAddress(cfg.L2GovAddress), eventIndexer) + // start rorator event indexer + rotator.StartEventIndexer() // blockmonitor bm := l1checker.NewBlockMonitor(cfg.BlockNotIncreasedThreshold, l1Client) @@ -216,6 +216,7 @@ func Main() func(ctx *cli.Context) error { rotator, ldb, bm, + eventInfoStorage, ) // metrics diff --git a/tx-submitter/event/indexer.go b/tx-submitter/event/indexer.go index f666c6b26..0ba87ab5b 100644 --- a/tx-submitter/event/indexer.go +++ b/tx-submitter/event/indexer.go @@ -13,31 +13,31 @@ import ( type EventIndexer struct { client *ethclient.Client - storePath string // store path deployBlock *big.Int // Block number of contract deployment filterQuery ethereum.FilterQuery indexStep uint64 // index step + storage *EventInfoStorage } -func NewEventIndexer(storePath string, client *ethclient.Client, deployedBlock *big.Int, filter ethereum.FilterQuery, indexStep uint64) *EventIndexer { +func NewEventIndexer(client *ethclient.Client, deployedBlock *big.Int, filter ethereum.FilterQuery, indexStep uint64, storage *EventInfoStorage) *EventIndexer { return &EventIndexer{ - storePath: storePath, client: client, deployBlock: deployedBlock, filterQuery: filter, indexStep: indexStep, + storage: storage, } } func (l *EventIndexer) Index() { log.Info("event indexer started") - storage := NewEventInfoStorage(l.storePath) - err := storage.Load() - if err != nil { - log.Crit("failed to load storage", "error", err, "file_name", storage.Filename) - } - if storage.BlockProcessed == 0 { - storage.BlockProcessed = l.deployBlock.Uint64() + + if l.storage.BlockProcessed == 0 { + l.storage.BlockProcessed = l.deployBlock.Uint64() + err := l.storage.Store() + if err != nil { + log.Error("failed to store initial block number", "error", err) + } } // Create a ticker that triggers every minute @@ -53,31 +53,31 @@ func (l *EventIndexer) Index() { continue } - if currentBlock <= storage.BlockProcessed { - log.Info("no new block to index", "current_block", currentBlock, "last_processed_block", storage.BlockProcessed) + if currentBlock <= l.storage.BlockProcessed { + log.Info("no new block to index", "current_block", currentBlock, "last_processed_block", l.storage.BlockProcessed) continue } // Perform indexing operation - indexedEventInfo, err := l.index(l.client, big.NewInt(int64(storage.BlockProcessed)), big.NewInt(int64(currentBlock))) + indexedEventInfo, err := l.index(l.client, big.NewInt(int64(l.storage.BlockProcessed)), big.NewInt(int64(currentBlock))) if err != nil { log.Error("indexing operation failed", "error", err) continue } if indexedEventInfo != nil { - storage.EventInfo = *indexedEventInfo + l.storage.EventInfo = *indexedEventInfo } else { - storage.EventInfo = EventInfo{ + l.storage.EventInfo = EventInfo{ BlockProcessed: currentBlock, } } // Update storage - err = storage.Store() + err = l.storage.Store() if err != nil { - log.Error("event index complete, failed to update storage", "error", err, "file_name", storage.Filename) + log.Error("event index complete, failed to update storage", "error", err) } else { - log.Info("event index complete storage updated", "processed_block", storage.EventInfo.BlockProcessed, "block_time", storage.EventInfo.BlockTime) + log.Info("event index complete, storage updated", "processed_block", l.storage.EventInfo.BlockProcessed, "block_time", l.storage.EventInfo.BlockTime) } } @@ -139,7 +139,6 @@ func (ei *EventIndexer) index(client *ethclient.Client, fromBlock, toBlock *big. func (l *EventIndexer) GetFilter() ethereum.FilterQuery { return l.filterQuery } - -func (l *EventIndexer) GetStorePath() string { - return l.storePath +func (l *EventIndexer) GetStorage() *EventInfoStorage { + return l.storage } diff --git a/tx-submitter/event/storage.go b/tx-submitter/event/storage.go index 7e2062731..d77f857f7 100644 --- a/tx-submitter/event/storage.go +++ b/tx-submitter/event/storage.go @@ -3,8 +3,11 @@ package event import ( "encoding/json" "fmt" - "os" "sync" + + "morph-l2/tx-submitter/db" + "morph-l2/tx-submitter/params" + "morph-l2/tx-submitter/utils" ) type IEventStorage interface { @@ -12,10 +15,6 @@ type IEventStorage interface { Load() error } -var ( - defaultFilename = "event_info.json" -) - type EventInfo struct { BlockTime uint64 `json:"block_time"` // event emit time BlockProcessed uint64 `json:"block_processed"` // block processed @@ -23,51 +22,55 @@ type EventInfo struct { type EventInfoStorage struct { EventInfo - Filename string `json:"filename"` // filename - lock sync.Mutex + db *db.Db + mu sync.Mutex } -func NewEventInfoStorage(filename string) *EventInfoStorage { - if filename == "" { - filename = defaultFilename - } +func NewEventInfoStorage(db *db.Db) *EventInfoStorage { return &EventInfoStorage{ - Filename: filename, + db: db, } } func (e *EventInfoStorage) Store() error { // Convert struct to JSON string - jsonData, err := json.Marshal(e) + jsonData, err := json.Marshal(e.EventInfo) if err != nil { return fmt.Errorf("failed to convert struct to JSON: %w", err) } - e.lock.Lock() - defer e.lock.Unlock() + e.mu.Lock() + defer e.mu.Unlock() // Write JSON data to file - err = os.WriteFile(e.Filename, jsonData, 0600) + err = e.db.PutString(params.EventInfoKey, string(jsonData)) if err != nil { - return fmt.Errorf("failed to write to file: %w", err) + return fmt.Errorf("failed to write to db: err=%w, data=%v", err, jsonData) } - return nil } func (e *EventInfoStorage) Load() error { - e.lock.Lock() - defer e.lock.Unlock() - jsonData, err := os.ReadFile(e.Filename) + e.mu.Lock() + defer e.mu.Unlock() + evnetInfo, err := e.db.GetString(params.EventInfoKey) if err != nil { - if os.IsNotExist(err) { + if utils.ErrStringMatch(err, db.ErrKeyNotFound) { e.EventInfo = EventInfo{} + jsonData, err := json.Marshal(e.EventInfo) + if err != nil { + return fmt.Errorf("failed to marshal json: %w", err) + } + err = e.db.PutString(params.EventInfoKey, string(jsonData)) + if err != nil { + return fmt.Errorf("failed to init eventinfo to db: %w", err) + } return nil } - return fmt.Errorf("failed to read file: %w", err) + return fmt.Errorf("failed to load eventinfo from db: %w", err) } // parse json data to struct - err = json.Unmarshal(jsonData, e) + err = json.Unmarshal([]byte(evnetInfo), &e.EventInfo) if err != nil { return fmt.Errorf("failed to unmarshal JSON: %w", err) } diff --git a/tx-submitter/event/storage_test.go b/tx-submitter/event/storage_test.go index 7ba32dbb2..74e78b094 100644 --- a/tx-submitter/event/storage_test.go +++ b/tx-submitter/event/storage_test.go @@ -1,15 +1,18 @@ package event import ( + "morph-l2/tx-submitter/db" "testing" "github.com/stretchr/testify/require" ) func TestEventInfoStorage(t *testing.T) { - filename := "hello.json" - storage := NewEventInfoStorage(filename) - err := storage.Load() + + db, err := db.New("./testleveldb") + require.NoError(t, err) + storage := NewEventInfoStorage(db) + err = storage.Load() require.NoError(t, err) storage.BlockTime = 100 @@ -17,7 +20,7 @@ func TestEventInfoStorage(t *testing.T) { err = storage.Store() require.NoError(t, err) - storage2 := NewEventInfoStorage(filename) + storage2 := NewEventInfoStorage(db) err = storage2.Load() require.NoError(t, err) require.Equal(t, storage.BlockTime, storage2.BlockTime) diff --git a/tx-submitter/params/leveldb_keys.go b/tx-submitter/params/leveldb_keys.go new file mode 100644 index 000000000..b998e6de9 --- /dev/null +++ b/tx-submitter/params/leveldb_keys.go @@ -0,0 +1,5 @@ +package params + +const ( + EventInfoKey = "event_info" +) diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index 4e4ef0ddd..c7180d3ae 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -17,7 +17,7 @@ import ( "github.com/morph-l2/go-ethereum/common" "github.com/morph-l2/go-ethereum/consensus/misc/eip4844" "github.com/morph-l2/go-ethereum/core" - "github.com/morph-l2/go-ethereum/core/types" + ethtypes "github.com/morph-l2/go-ethereum/core/types" "github.com/morph-l2/go-ethereum/crypto" "github.com/morph-l2/go-ethereum/crypto/bls12381" "github.com/morph-l2/go-ethereum/eth" @@ -33,6 +33,7 @@ import ( "morph-l2/tx-submitter/l1checker" "morph-l2/tx-submitter/localpool" "morph-l2/tx-submitter/metrics" + "morph-l2/tx-submitter/types" "morph-l2/tx-submitter/utils" ) @@ -65,7 +66,7 @@ type Rollup struct { // cfg cfg utils.Config // signer - signer types.Signer + signer ethtypes.Signer // leveldb ldb *db.Db // rollupFeeSum @@ -75,8 +76,9 @@ type Rollup struct { // collectedL1FeeSum collectedL1FeeSum float64 // batchcache - batchCache map[uint64]*eth.RPCRollupBatch - bm *l1checker.BlockMonitor + batchCache *types.BatchCache + bm *l1checker.BlockMonitor + eventInfoStorage *event.EventInfoStorage } func NewRollup( @@ -96,27 +98,29 @@ func NewRollup( rotator *Rotator, ldb *db.Db, bm *l1checker.BlockMonitor, + eventInfoStorage *event.EventInfoStorage, ) *Rollup { return &Rollup{ - ctx: ctx, - metrics: metrics, - l1RpcClient: l1RpcClient, - L1Client: l1, - Rollup: rollup, - Staking: staking, - L2Clients: l2Clients, - privKey: priKey, - chainId: chainId, - rollupAddr: rollupAddr, - abi: abi, - rotator: rotator, - cfg: cfg, - signer: types.LatestSignerForChainID(chainId), - externalRsaPriv: rsaPriv, - batchCache: make(map[uint64]*eth.RPCRollupBatch), - ldb: ldb, - bm: bm, + ctx: ctx, + metrics: metrics, + l1RpcClient: l1RpcClient, + L1Client: l1, + Rollup: rollup, + Staking: staking, + L2Clients: l2Clients, + privKey: priKey, + chainId: chainId, + rollupAddr: rollupAddr, + abi: abi, + rotator: rotator, + cfg: cfg, + signer: ethtypes.LatestSignerForChainID(chainId), + externalRsaPriv: rsaPriv, + batchCache: types.NewBatchCache(), + ldb: ldb, + bm: bm, + eventInfoStorage: eventInfoStorage, } } @@ -322,7 +326,7 @@ func (r *Rollup) ProcessTx() error { logs..., ) - if receipt.Status != types.ReceiptStatusSuccessful { + if receipt.Status != ethtypes.ReceiptStatusSuccessful { // if tx is commitBatch if method == "commitBatch" { parentindex := utils.ParseParentBatchIndex(rtx.Data()) @@ -358,7 +362,7 @@ func (r *Rollup) ProcessTx() error { } r.metrics.SetRollupCost(fee) index := utils.ParseParentBatchIndex(rtx.Data()) + 1 - batch, ok := r.batchCache[index] + batch, ok := r.batchCache.Get(index) if ok { collectedL1FeeFloat := ToEtherFloat((*big.Int)(batch.CollectedL1Fee)) r.collectedL1FeeSum += collectedL1FeeFloat @@ -368,7 +372,7 @@ func (r *Rollup) ProcessTx() error { } r.metrics.SetCollectedL1Fee(ToEtherFloat((*big.Int)(batch.CollectedL1Fee))) // remove batch from cache - delete(r.batchCache, index) + r.batchCache.Delete(index) } else { log.Warn("batch not found in batchCache while set collect fee metrics", "index", index, @@ -495,7 +499,7 @@ func (r *Rollup) finalize() error { } } - tx := types.NewTx(&types.DynamicFeeTx{ + tx := ethtypes.NewTx(ðtypes.DynamicFeeTx{ ChainID: r.chainId, Nonce: nonce, GasTipCap: tip, @@ -560,24 +564,27 @@ func (r *Rollup) rollup() error { return fmt.Errorf("rollup: get current submitter err, %w", err) } - storage := event.NewEventInfoStorage(r.rotator.indexer.GetStorePath()) - err = storage.Load() + err = r.eventInfoStorage.Load() if err != nil { return fmt.Errorf("failed to load storage in rollup: %w", err) } + log.Info("indexer info", + "block_processed", r.eventInfoStorage.EventInfo.BlockProcessed, + "event_latest_emit_time", r.eventInfoStorage.EventInfo.BlockTime, + ) // get current blocknumber blockNumber, err := r.L1Client.BlockNumber(context.Background()) if err != nil { return fmt.Errorf("failed to get block number in rollup: %w", err) } // set metrics - r.metrics.SetIndexerBlockProcessed(storage.EventInfo.BlockProcessed) + r.metrics.SetIndexerBlockProcessed(r.eventInfoStorage.EventInfo.BlockProcessed) // check if indexed block number is too old - if blockNumber > storage.EventInfo.BlockProcessed+100 { + if blockNumber > r.eventInfoStorage.EventInfo.BlockProcessed+100 { log.Info("indexed block number is too old, wait indexer to catch up", "module", r.GetModuleName(), "block_number", blockNumber, - "processed_block", storage.EventInfo.BlockProcessed) + "processed_block", r.eventInfoStorage.EventInfo.BlockProcessed) return nil } @@ -677,7 +684,7 @@ func (r *Rollup) rollup() error { // set batch cache // it shoud be removed after the batch is committed - r.batchCache[batchIndex] = batch + r.batchCache.Set(batchIndex, batch) signature, err := r.buildSignatureInput(batch) if err != nil { @@ -740,14 +747,14 @@ func (r *Rollup) rollup() error { } } - var tx *types.Transaction + var tx *ethtypes.Transaction if len(batch.Sidecar.Blobs) > 0 { versionedHashes := make([]common.Hash, 0) for _, commit := range batch.Sidecar.Commitments { versionedHashes = append(versionedHashes, kZGToVersionedHash(commit)) } // blob tx - tx = types.NewTx(&types.BlobTx{ + tx = ethtypes.NewTx(ðtypes.BlobTx{ ChainID: uint256.MustFromBig(r.chainId), Nonce: nonce, GasTipCap: uint256.MustFromBig(big.NewInt(tip.Int64())), @@ -757,7 +764,7 @@ func (r *Rollup) rollup() error { Data: calldata, BlobFeeCap: uint256.MustFromBig(blobFee), BlobHashes: versionedHashes, - Sidecar: &types.BlobTxSidecar{ + Sidecar: ðtypes.BlobTxSidecar{ Blobs: batch.Sidecar.Blobs, Commitments: batch.Sidecar.Commitments, Proofs: batch.Sidecar.Proofs, @@ -765,7 +772,7 @@ func (r *Rollup) rollup() error { }) } else { - tx = types.NewTx(&types.DynamicFeeTx{ + tx = ethtypes.NewTx(ðtypes.DynamicFeeTx{ ChainID: r.chainId, Nonce: nonce, GasTipCap: tip, @@ -1053,14 +1060,14 @@ func GetEpochUpdateTime(addr common.Address, clients []iface.L2Client) (*big.Int } -func UpdateGasLimit(tx *types.Transaction) (*types.Transaction, error) { +func UpdateGasLimit(tx *ethtypes.Transaction) (*ethtypes.Transaction, error) { // add buffer to gas limit (*1.2) newGasLimit := tx.Gas() * 12 / 10 - var newTx *types.Transaction - if tx.Type() == types.LegacyTxType { + var newTx *ethtypes.Transaction + if tx.Type() == ethtypes.LegacyTxType { - newTx = types.NewTx(&types.LegacyTx{ + newTx = ethtypes.NewTx(ðtypes.LegacyTx{ Nonce: tx.Nonce(), GasPrice: big.NewInt(tx.GasPrice().Int64()), Gas: newGasLimit, @@ -1068,8 +1075,8 @@ func UpdateGasLimit(tx *types.Transaction) (*types.Transaction, error) { Value: tx.Value(), Data: tx.Data(), }) - } else if tx.Type() == types.DynamicFeeTxType { - newTx = types.NewTx(&types.DynamicFeeTx{ + } else if tx.Type() == ethtypes.DynamicFeeTxType { + newTx = ethtypes.NewTx(ðtypes.DynamicFeeTx{ Nonce: tx.Nonce(), GasTipCap: big.NewInt(tx.GasTipCap().Int64()), GasFeeCap: big.NewInt(tx.GasFeeCap().Int64()), @@ -1078,8 +1085,8 @@ func UpdateGasLimit(tx *types.Transaction) (*types.Transaction, error) { Value: tx.Value(), Data: tx.Data(), }) - } else if tx.Type() == types.BlobTxType { - newTx = types.NewTx(&types.BlobTx{ + } else if tx.Type() == ethtypes.BlobTxType { + newTx = ethtypes.NewTx(ðtypes.BlobTx{ ChainID: uint256.MustFromBig(tx.ChainId()), Nonce: tx.Nonce(), GasTipCap: uint256.MustFromBig(big.NewInt(tx.GasTipCap().Int64())), @@ -1100,7 +1107,7 @@ func UpdateGasLimit(tx *types.Transaction) (*types.Transaction, error) { } // send tx to l1 with business logic check -func (r *Rollup) SendTx(tx *types.Transaction) error { +func (r *Rollup) SendTx(tx *ethtypes.Transaction) error { // judge tx info is valid if tx == nil { @@ -1125,12 +1132,12 @@ func (r *Rollup) SendTx(tx *types.Transaction) error { } // send tx to l1 with business logic check -func sendTx(client iface.Client, txFeeLimit uint64, tx *types.Transaction) error { +func sendTx(client iface.Client, txFeeLimit uint64, tx *ethtypes.Transaction) error { // fee limit if txFeeLimit > 0 { var fee uint64 // calc tx gas fee - if tx.Type() == types.BlobTxType { + if tx.Type() == ethtypes.BlobTxType { // blob fee fee = tx.BlobGasFeeCap().Uint64() * tx.BlobGas() // tx fee @@ -1147,7 +1154,7 @@ func sendTx(client iface.Client, txFeeLimit uint64, tx *types.Transaction) error return client.SendTransaction(context.Background(), tx) } -func (r *Rollup) ReSubmitTx(resend bool, tx *types.Transaction) (*types.Transaction, error) { +func (r *Rollup) ReSubmitTx(resend bool, tx *ethtypes.Transaction) (*ethtypes.Transaction, error) { if tx == nil { return nil, errors.New("nil tx") } @@ -1173,8 +1180,8 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *types.Transaction) (*types.Transact } if !resend { // bump tip & feeCap - bumpedFeeCap := calcThresholdValue(tx.GasFeeCap(), tx.Type() == types.BlobTxType) - bumpedTip := calcThresholdValue(tx.GasTipCap(), tx.Type() == types.BlobTxType) + bumpedFeeCap := calcThresholdValue(tx.GasFeeCap(), tx.Type() == ethtypes.BlobTxType) + bumpedTip := calcThresholdValue(tx.GasTipCap(), tx.Type() == ethtypes.BlobTxType) // if bumpedTip > tip if bumpedTip.Cmp(tip) > 0 { @@ -1185,18 +1192,18 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *types.Transaction) (*types.Transact gasFeeCap = bumpedFeeCap } - if tx.Type() == types.BlobTxType { - bumpedBlobFeeCap := calcThresholdValue(tx.BlobGasFeeCap(), tx.Type() == types.BlobTxType) + if tx.Type() == ethtypes.BlobTxType { + bumpedBlobFeeCap := calcThresholdValue(tx.BlobGasFeeCap(), tx.Type() == ethtypes.BlobTxType) if bumpedBlobFeeCap.Cmp(blobFeeCap) > 0 { blobFeeCap = bumpedBlobFeeCap } } } - var newTx *types.Transaction + var newTx *ethtypes.Transaction switch tx.Type() { - case types.DynamicFeeTxType: - newTx = types.NewTx(&types.DynamicFeeTx{ + case ethtypes.DynamicFeeTxType: + newTx = ethtypes.NewTx(ðtypes.DynamicFeeTx{ To: tx.To(), Nonce: tx.Nonce(), GasFeeCap: gasFeeCap, @@ -1205,9 +1212,9 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *types.Transaction) (*types.Transact Value: tx.Value(), Data: tx.Data(), }) - case types.BlobTxType: + case ethtypes.BlobTxType: - newTx = types.NewTx(&types.BlobTx{ + newTx = ethtypes.NewTx(ðtypes.BlobTx{ ChainID: uint256.MustFromBig(tx.ChainId()), Nonce: tx.Nonce(), GasTipCap: uint256.MustFromBig(tip), diff --git a/tx-submitter/services/rotator.go b/tx-submitter/services/rotator.go index 913fff482..c99884049 100644 --- a/tx-submitter/services/rotator.go +++ b/tx-submitter/services/rotator.go @@ -56,7 +56,7 @@ func (r *Rotator) UpdateState(clients []iface.L2Client, l1Staking iface.IL1Staki return fmt.Errorf("GetCurrentSubmitter: failed to get sequencer set update time: %w", err) } - storage := event.NewEventInfoStorage(r.indexer.GetStorePath()) + storage := r.indexer.GetStorage() err = storage.Load() if err != nil { log.Error("failed to load storage", "err", err) @@ -92,6 +92,16 @@ func (r *Rotator) UpdateState(clients []iface.L2Client, l1Staking iface.IL1Staki } submitterSet := utils.IntersectionOfAddresses(r.GetSequencerSet(), stakers) r.SetSubmitterSet(submitterSet) + // rotator info + log.Info( + "rotator state updated", + "epoch", r.epoch, + "start", r.startTime, + "epoch_update_time", epochUpdateTime, + "seq_update_time", sequcerUpdateTime, + "indexed_latest_block", storage.BlockProcessed, + "indexed_event_emit_time", storage.BlockTime, + ) return nil } diff --git a/tx-submitter/types/batch_cache.go b/tx-submitter/types/batch_cache.go new file mode 100644 index 000000000..7e6794f1d --- /dev/null +++ b/tx-submitter/types/batch_cache.go @@ -0,0 +1,39 @@ +package types + +import ( + "sync" + + "github.com/morph-l2/go-ethereum/eth" +) + +type BatchCache struct { + batchCache map[uint64]*eth.RPCRollupBatch + m sync.Mutex +} + +func NewBatchCache() *BatchCache { + return &BatchCache{ + batchCache: make(map[uint64]*eth.RPCRollupBatch), + } +} + +func (b *BatchCache) Get(batchIndex uint64) (*eth.RPCRollupBatch, bool) { + b.m.Lock() + defer b.m.Unlock() + + batch, ok := b.batchCache[batchIndex] + return batch, ok +} +func (b *BatchCache) Set(batchIndex uint64, batch *eth.RPCRollupBatch) { + b.m.Lock() + defer b.m.Unlock() + + b.batchCache[batchIndex] = batch +} + +func (b *BatchCache) Delete(batchIndex uint64) { + b.m.Lock() + defer b.m.Unlock() + + delete(b.batchCache, batchIndex) +} diff --git a/tx-submitter/types/batch_cache_test.go b/tx-submitter/types/batch_cache_test.go new file mode 100644 index 000000000..f07d6411e --- /dev/null +++ b/tx-submitter/types/batch_cache_test.go @@ -0,0 +1,21 @@ +package types + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func TestBatchCache(t *testing.T) { + + cache := NewBatchCache() + cache.Set(1, nil) + _, ok := cache.Get(1) + require.True(t, ok) + cache.Delete(1) + _, ok = cache.Get(1) + require.False(t, ok) + _, ok = cache.Get(2) + require.False(t, ok) + +} From 1a80a6870794debb2f9bce6869235887c6054fa9 Mon Sep 17 00:00:00 2001 From: kukoo Date: Wed, 18 Dec 2024 17:06:16 +0800 Subject: [PATCH 19/33] Remove drop messages function (#681) --- .../bin/l1crossdomainmessenger_deployed.hex | 2 +- ...essagequeuewithgaspriceoracle_deployed.hex | 2 +- bindings/bindings/l1crossdomainmessenger.go | 231 +++--------------- .../bindings/l1crossdomainmessenger_more.go | 4 +- .../l1messagequeuewithgaspriceoracle.go | 190 +------------- .../l1messagequeuewithgaspriceoracle_more.go | 4 +- .../contracts/l1/IL1CrossDomainMessenger.sol | 12 - .../contracts/l1/L1CrossDomainMessenger.sol | 59 +---- .../contracts/l1/rollup/IL1MessageQueue.sol | 11 - .../L1MessageQueueWithGasPriceOracle.sol | 19 +- .../test/L1CrossDomainMessenger.t.sol | 65 ----- .../contracts/test/L1CustomERC20Gateway.t.sol | 25 -- .../contracts/test/L1ERC1155Gateway.t.sol | 64 ----- .../contracts/test/L1ERC721Gateway.t.sol | 59 ----- contracts/contracts/test/L1ETHGateway.t.sol | 29 --- contracts/contracts/test/L1MessageQueue.t.sol | 72 ------ .../test/L1StandardERC20Gateway.t.sol | 34 --- contracts/contracts/test/L1WETHGateway.t.sol | 23 -- 18 files changed, 45 insertions(+), 860 deletions(-) diff --git a/bindings/bin/l1crossdomainmessenger_deployed.hex b/bindings/bin/l1crossdomainmessenger_deployed.hex index d7e24332e..a401e8da3 100644 --- a/bindings/bin/l1crossdomainmessenger_deployed.hex +++ b/bindings/bin/l1crossdomainmessenger_deployed.hex @@ -1 +1 @@ -0x6080604052600436106101a7575f3560e01c806386fa4b73116100e7578063c0c53b8b11610087578063e70fc93b11610062578063e70fc93b146104f9578063ea7ec51414610524578063ecc7042814610550578063f2fde38b14610564575f80fd5b8063c0c53b8b1461049c578063cb23bcb5146104bb578063d87e7df1146104da575f80fd5b8063a14238e7116100c2578063a14238e71461040e578063b2267a7b1461043c578063b604bf4c1461044f578063bedb86fb1461047d575f80fd5b806386fa4b73146103af5780638da5cb5b146103ce578063946130d8146103eb575f80fd5b806355004105116101525780636e296e451161012d5780636e296e45146102de578063715018a6146102fd578063797594b014610311578063846d4d7a14610330575f80fd5b806355004105146102a15780635c975abb146102b45780635f7b1577146102cb575f80fd5b80633b70c18a116101825780633b70c18a1461022c578063407c195514610263578063478222c214610282575f80fd5b806329907acd146101ba5780632a6cccb2146101d9578063340735f7146101f8575f80fd5b366101b6576101b4610583565b005b5f80fd5b3480156101c5575f80fd5b506101b46101d436600461283a565b6105e4565b3480156101e4575f80fd5b506101b46101f33660046128a7565b610966565b348015610203575f80fd5b506102176102123660046128de565b610a2d565b60405190151581526020015b60405180910390f35b348015610237575f80fd5b5060fe5461024b906001600160a01b031681565b6040516001600160a01b039091168152602001610223565b34801561026e575f80fd5b506101b461027d36600461291a565b610af6565b34801561028d575f80fd5b5060cb5461024b906001600160a01b031681565b6101b46102af366004612931565b610bb9565b3480156102bf575f80fd5b5060655460ff16610217565b6101b46102d93660046129c8565b611201565b3480156102e9575f80fd5b5060c95461024b906001600160a01b031681565b348015610308575f80fd5b506101b4611255565b34801561031c575f80fd5b5060ca5461024b906001600160a01b031681565b34801561033b575f80fd5b5061038661034a36600461291a565b6101006020525f90815260409020546fffffffffffffffffffffffffffffffff8082169170010000000000000000000000000000000090041682565b604080516fffffffffffffffffffffffffffffffff938416815292909116602083015201610223565b3480156103ba575f80fd5b506101b46103c9366004612a66565b611266565b3480156103d9575f80fd5b506033546001600160a01b031661024b565b3480156103f6575f80fd5b5061040060ff5481565b604051908152602001610223565b348015610419575f80fd5b5061021761042836600461291a565b60fa6020525f908152604090205460ff1681565b6101b461044a366004612aef565b611732565b34801561045a575f80fd5b5061021761046936600461291a565b60fc6020525f908152604090205460ff1681565b348015610488575f80fd5b506101b4610497366004612b57565b61174d565b3480156104a7575f80fd5b506101b46104b6366004612b72565b61176e565b3480156104c6575f80fd5b5060fd5461024b906001600160a01b031681565b3480156104e5575f80fd5b506101b46104f43660046128a7565b6119d1565b348015610504575f80fd5b5061040061051336600461291a565b60fb6020525f908152604090205481565b34801561052f575f80fd5b5061040061053e36600461291a565b6101016020525f908152604090205481565b34801561055b575f80fd5b50610400611ac7565b34801561056f575f80fd5b506101b461057e3660046128a7565b611b50565b6033546001600160a01b031633146105e25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b565b6105ec611bdd565b60c9546001600160a01b031661dead146106485760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105d9565b60fe546001600160a01b03165f6106628787878787611c30565b90505f818051906020012090505f60fb5f8381526020019081526020015f2054116106f55760405162461bcd60e51b815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f717565756564000000000000000000000000000000000000000000000000000060648201526084016105d9565b5f81815260fc602052604090205460ff16156107535760405162461bcd60e51b815260206004820152601760248201527f4d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105d9565b5f818152610100602052604081205470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff16908190036107935750845b6040517f91652461000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b038516906391652461906024015f604051808303815f87803b1580156107eb575f80fd5b505af11580156107fd573d5f803e3d5ffd5b5050505f918252506101016020526040902054801561083d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01610793565b5f82815260fc6020526040808220805460ff191660011790555187917fbd05aabbf548001ebdd6ac80c02f1cfb3b39165f2fae1d420075f22e781ef63b91a260c980547fffffffffffffffffffffffff000000000000000000000000000000000000000016736f297c61b5c92ef107ffd30cd56affe5a273e8411790556040517f14298c510000000000000000000000000000000000000000000000000000000081526001600160a01b038a16906314298c51908990610901908990600401612c1d565b5f604051808303818588803b158015610918575f80fd5b505af115801561092a573d5f803e3d5ffd5b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead179055505050505050505050505050565b61096e610583565b6001600160a01b0381166109c45760405162461bcd60e51b815260206004820152601d60248201527f6665655661756c742063616e6e6f74206265206164647265737328302900000060448201526064016105d9565b60cb80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f4aadc32827849f797733838c61302f7f56d2b6db28caa175eb3f7f8e5aba25f5905f90a35050565b5f84815b6020811015610aea578085901c600116600103610a9757858160208110610a5a57610a5a612c2f565b602002013582604051602001610a7a929190918252602082015260400190565b604051602081830303815290604052805190602001209150610ae2565b81868260208110610aaa57610aaa612c2f565b6020020135604051602001610ac9929190918252602082015260400190565b6040516020818303038152906040528051906020012091505b600101610a31565b50909114949350505050565b610afe610583565b5f8111610b735760405162461bcd60e51b815260206004820152602360248201527f7265706c61792074696d6573206d75737420626520677265617465722074686160448201527f6e2030000000000000000000000000000000000000000000000000000000000060648201526084016105d9565b60ff80549082905560408051828152602081018490527fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91015b60405180910390a15050565b610bc1611bdd565b60c9546001600160a01b031661dead14610c1d5760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105d9565b60fe5460ca546001600160a01b0391821691165f610c3e8a8a8a8a8a611c30565b90505f818051906020012090505f60fb5f8381526020019081526020015f205411610cd15760405162461bcd60e51b815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f717565756564000000000000000000000000000000000000000000000000000060648201526084016105d9565b5f81815260fc602052604090205460ff1615610d2f5760405162461bcd60e51b815260206004820152601760248201527f4d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105d9565b6040517f3e4cbbe60000000000000000000000000000000000000000000000000000000081526001600160a01b038c8116600483015263ffffffff881660248301525f9190861690633e4cbbe690604401602060405180830381865afa158015610d9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dbf9190612c5c565b905080341015610e115760405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e74206d73672e76616c756520666f7220666565000060448201526064016105d9565b8015610eb95760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114610e61576040519150601f19603f3d011682016040523d82523d5f602084013e610e66565b606091505b5050905080610eb75760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105d9565b505b5f856001600160a01b031663fd0ad31e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ef6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f1a9190612c5c565b6040517f9b1597820000000000000000000000000000000000000000000000000000000081529091506001600160a01b03871690639b15978290610f669088908c908990600401612c73565b5f604051808303815f87803b158015610f7d575f80fd5b505af1158015610f8f573d5f803e3d5ffd5b5050505f848152610100602090815260408083208151808301909252546fffffffffffffffffffffffffffffffff80821683527001000000000000000000000000000000009091041691810182905292509003610fff575f8281526101016020526040902060018c019055611030565b80602001516001016fffffffffffffffffffffffffffffffff166101015f8481526020019081526020015f20819055505b6fffffffffffffffffffffffffffffffff808316602083015260ff5482519091161061109e5760405162461bcd60e51b815260206004820152601b60248201527f457863656564206d6178696d756d207265706c61792074696d6573000000000060448201526064016105d9565b80516fffffffffffffffffffffffffffffffff600191909101811682525f858152610100602090815260409091208351919093015182167001000000000000000000000000000000000291161790556001600160a01b038c166110fe3390565b6001600160a01b03168b7fa3a1251805b1fc7915884575b42e1fb862e814f0f5c9d670d08bf84697053d618e858d8f60405161113d9493929190612ca9565b60405180910390a4348281039083146111f1575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f8114611199576040519150601f19603f3d011682016040523d82523d5f602084013e61119e565b606091505b50509050806111ef5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105d9565b505b5050505050505050505050505050565b611209611bdd565b61124d868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250889250879150611ccc9050565b505050505050565b61125d610583565b6105e25f612118565b61126e611bdd565b60c9546001600160a01b031661dead146112ca5760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105d9565b60fe546001600160a01b039081169087160361134e5760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a20466f7262696420746f2063616c6c206d657373616760448201527f652071756575650000000000000000000000000000000000000000000000000060648201526084016105d9565b61135786612181565b60c9546001600160a01b03908116908816036113db5760405162461bcd60e51b815260206004820152602160248201527f4d657373656e6765723a20496e76616c6964206d6573736167652073656e646560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084016105d9565b5f6113e98888888888611c30565b80516020918201205f81815260fa90925260409091205490915060ff16156114795760405162461bcd60e51b815260206004820152603060248201527f4d657373656e6765723a207769746864726177616c2068617320616c7265616460448201527f79206265656e2066696e616c697a65640000000000000000000000000000000060648201526084016105d9565b60fd546040517f04d77215000000000000000000000000000000000000000000000000000000008152600481018490526001600160a01b03909116905f9082906304d7721590602401602060405180830381865afa1580156114dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115019190612cdd565b9050806115765760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a207769746864726177616c526f6f74206e6f7420666960448201527f6e616c697a65640000000000000000000000000000000000000000000000000060648201526084016105d9565b61158283868987610a2d565b6115f45760405162461bcd60e51b815260206004820152602d60248201527f4d657373656e6765723a20696e76616c6964207769746864726177616c20696e60448201527f636c7573696f6e2070726f6f660000000000000000000000000000000000000060648201526084016105d9565b5060c980547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b8116919091179091556040515f918a16908990611642908990612cf8565b5f6040518083038185875af1925050503d805f811461167c576040519150601f19603f3d011682016040523d82523d5f602084013e611681565b606091505b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead179055905080156116fb575f83815260fa6020526040808220805460ff191660011790555184917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611726565b60405183907f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f905f90a25b50505050505050505050565b61173a611bdd565b6117478484848433611ccc565b50505050565b611755610583565b8015611766576117636121d9565b50565b611763612233565b5f54610100900460ff161580801561178c57505f54600160ff909116105b806117a55750303b1580156117a557505f5460ff166001145b6118175760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105d9565b5f805460ff191660011790558015611855575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038316158061187257506001600160a01b038216155b8061188457506001600160a01b038416155b156118bb576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6118d97353000000000000000000000000000000000000078561226c565b60fd80546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560fe805492851692909116919091179055600360ff8190556040517fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91611962915f9190918252602082015260400190565b60405180910390a18015611747575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b6119d9610583565b6001600160a01b038116611a555760405162461bcd60e51b815260206004820152602360248201527f726f6c6c757020616464726573732063616e6e6f74206265206164647265737360448201527f283029000000000000000000000000000000000000000000000000000000000060648201526084016105d9565b60fd80546001600160a01b038381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f5272c8ad4bd643b1130291ea29bebd9b3bc583057a6e4d047eb7077039a956309101610bad565b60fe54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290515f926001600160a01b03169163fd0ad31e9160048083019260209291908290030181865afa158015611b27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b4b9190612c5c565b905090565b611b58610583565b6001600160a01b038116611bd45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105d9565b61176381612118565b60655460ff16156105e25760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064016105d9565b60608585858585604051602401611c4b959493929190612d13565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8ef1332e00000000000000000000000000000000000000000000000000000000179052905095945050505050565b611cd4612384565b60fe5460ca54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290516001600160a01b0393841693909216915f91849163fd0ad31e916004808201926020929091908290030181865afa158015611d40573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d649190612c5c565b90505f611d74338a8a858b611c30565b90505f6001600160a01b038516633e4cbbe6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018a9052604401602060405180830381865afa158015611de8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e0c9190612c5c565b9050611e188982612d55565b341015611e675760405162461bcd60e51b815260206004820152601660248201527f496e73756666696369656e74206d73672e76616c75650000000000000000000060448201526064016105d9565b8015611f0f5760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114611eb7576040519150601f19603f3d011682016040523d82523d5f602084013e611ebc565b606091505b5050905080611f0d5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105d9565b505b6040517f9b1597820000000000000000000000000000000000000000000000000000000081526001600160a01b03861690639b15978290611f589087908b908790600401612d8d565b5f604051808303815f87803b158015611f6f575f80fd5b505af1158015611f81573d5f803e3d5ffd5b505050505f8280519060200120905060fb5f8281526020019081526020015f20545f14611ff05760405162461bcd60e51b815260206004820152601260248201527f4475706c696361746564206d657373616765000000000000000000000000000060448201526064016105d9565b5f81815260fb602052604090204290556001600160a01b038b16336001600160a01b03167f104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e8c878c8e6040516120499493929190612db4565b60405180910390a3348290038a8103908b14612100575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f81146120a8576040519150601f19603f3d011682016040523d82523d5f602084013e6120ad565b606091505b50509050806120fe5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105d9565b505b505050505050506121116001609755565b5050505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b306001600160a01b038216036117635760405162461bcd60e51b815260206004820152601e60248201527f4d657373656e6765723a20466f7262696420746f2063616c6c2073656c66000060448201526064016105d9565b6121e1611bdd565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586122163390565b6040516001600160a01b03909116815260200160405180910390a1565b61223b6123e4565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612216565b5f54610100900460ff166122e85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6122f0612436565b6122f86124ba565b61230061253e565b60c980547fffffffffffffffffffffffff000000000000000000000000000000000000000090811661dead1790915560ca80546001600160a01b03858116919093161790558116156123805760cb80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383161790555b5050565b6002609754036123d65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016105d9565b6002609755565b6001609755565b60655460ff166105e25760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f742070617573656400000000000000000000000060448201526064016105d9565b5f54610100900460ff166124b25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e26125c2565b5f54610100900460ff166125365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e2612647565b5f54610100900460ff166125ba5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e26126cf565b5f54610100900460ff1661263e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e233612118565b5f54610100900460ff166126c35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6065805460ff19169055565b5f54610100900460ff166123dd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b80356001600160a01b0381168114612761575f80fd5b919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126127a2575f80fd5b813567ffffffffffffffff808211156127bd576127bd612766565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561280357612803612766565b8160405283815286602085880101111561281b575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f805f60a0868803121561284e575f80fd5b6128578661274b565b94506128656020870161274b565b93506040860135925060608601359150608086013567ffffffffffffffff81111561288e575f80fd5b61289a88828901612793565b9150509295509295909350565b5f602082840312156128b7575f80fd5b6128c08261274b565b9392505050565b8061040081018310156128d8575f80fd5b92915050565b5f805f8061046085870312156128f2575f80fd5b8435935061290386602087016128c7565b939693955050505061042082013591610440013590565b5f6020828403121561292a575f80fd5b5035919050565b5f805f805f805f60e0888a031215612947575f80fd5b6129508861274b565b965061295e6020890161274b565b95506040880135945060608801359350608088013567ffffffffffffffff811115612987575f80fd5b6129938a828b01612793565b93505060a088013563ffffffff811681146129ac575f80fd5b91506129ba60c0890161274b565b905092959891949750929550565b5f805f805f8060a087890312156129dd575f80fd5b6129e68761274b565b955060208701359450604087013567ffffffffffffffff80821115612a09575f80fd5b818901915089601f830112612a1c575f80fd5b813581811115612a2a575f80fd5b8a6020828501011115612a3b575f80fd5b60208301965080955050505060608701359150612a5a6080880161274b565b90509295509295509295565b5f805f805f805f6104c0888a031215612a7d575f80fd5b612a868861274b565b9650612a946020890161274b565b95506040880135945060608801359350608088013567ffffffffffffffff811115612abd575f80fd5b612ac98a828b01612793565b935050612ad98960a08a016128c7565b91506104a0880135905092959891949750929550565b5f805f8060808587031215612b02575f80fd5b612b0b8561274b565b935060208501359250604085013567ffffffffffffffff811115612b2d575f80fd5b612b3987828801612793565b949793965093946060013593505050565b8015158114611763575f80fd5b5f60208284031215612b67575f80fd5b81356128c081612b4a565b5f805f60608486031215612b84575f80fd5b612b8d8461274b565b9250612b9b6020850161274b565b9150612ba96040850161274b565b90509250925092565b5f5b83811015612bcc578181015183820152602001612bb4565b50505f910152565b5f8151808452612beb816020860160208601612bb2565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f6128c06020830184612bd4565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215612c6c575f80fd5b5051919050565b6001600160a01b038416815263ffffffff83166020820152606060408201525f612ca06060830184612bd4565b95945050505050565b84815283602082015263ffffffff83166040820152608060608201525f612cd36080830184612bd4565b9695505050505050565b5f60208284031215612ced575f80fd5b81516128c081612b4a565b5f8251612d09818460208701612bb2565b9190910192915050565b5f6001600160a01b03808816835280871660208401525084604083015283606083015260a06080830152612d4a60a0830184612bd4565b979650505050505050565b808201808211156128d8577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6001600160a01b0384168152826020820152606060408201525f612ca06060830184612bd4565b848152836020820152826040820152608060608201525f612cd36080830184612bd456fea164736f6c6343000818000a +0x60806040526004361061019c575f3560e01c806386fa4b73116100dc578063c0c53b8b11610087578063e70fc93b11610062578063e70fc93b146104cf578063ea7ec514146104fa578063ecc7042814610526578063f2fde38b1461053a575f80fd5b8063c0c53b8b14610472578063cb23bcb514610491578063d87e7df1146104b0575f80fd5b8063a14238e7116100b7578063a14238e714610412578063b2267a7b14610440578063bedb86fb14610453575f80fd5b806386fa4b73146103b35780638da5cb5b146103d2578063946130d8146103ef575f80fd5b806355004105116101475780636e296e45116101225780636e296e45146102e2578063715018a614610301578063797594b014610315578063846d4d7a14610334575f80fd5b806355004105146102a55780635c975abb146102b85780635f7b1577146102cf575f80fd5b80633b70c18a116101775780633b70c18a14610230578063407c195514610267578063478222c214610286575f80fd5b806305804dd7146101af5780632a6cccb2146101f2578063340735f714610211575f80fd5b366101ab576101a9610559565b005b5f80fd5b3480156101ba575f80fd5b506101dd6101c9366004612435565b60fc6020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156101fd575f80fd5b506101a961020c366004612467565b6105ba565b34801561021c575f80fd5b506101dd61022b36600461249e565b610681565b34801561023b575f80fd5b5060fe5461024f906001600160a01b031681565b6040516001600160a01b0390911681526020016101e9565b348015610272575f80fd5b506101a9610281366004612435565b61074a565b348015610291575f80fd5b5060cb5461024f906001600160a01b031681565b6101a96102b33660046125ae565b61080d565b3480156102c3575f80fd5b5060655460ff166101dd565b6101a96102dd366004612645565b610e55565b3480156102ed575f80fd5b5060c95461024f906001600160a01b031681565b34801561030c575f80fd5b506101a9610ea9565b348015610320575f80fd5b5060ca5461024f906001600160a01b031681565b34801561033f575f80fd5b5061038a61034e366004612435565b6101006020525f90815260409020546fffffffffffffffffffffffffffffffff8082169170010000000000000000000000000000000090041682565b604080516fffffffffffffffffffffffffffffffff9384168152929091166020830152016101e9565b3480156103be575f80fd5b506101a96103cd3660046126e3565b610eba565b3480156103dd575f80fd5b506033546001600160a01b031661024f565b3480156103fa575f80fd5b5061040460ff5481565b6040519081526020016101e9565b34801561041d575f80fd5b506101dd61042c366004612435565b60fa6020525f908152604090205460ff1681565b6101a961044e36600461276c565b6113a4565b34801561045e575f80fd5b506101a961046d3660046127d4565b6113bf565b34801561047d575f80fd5b506101a961048c3660046127ef565b6113e0565b34801561049c575f80fd5b5060fd5461024f906001600160a01b031681565b3480156104bb575f80fd5b506101a96104ca366004612467565b611661565b3480156104da575f80fd5b506104046104e9366004612435565b60fb6020525f908152604090205481565b348015610505575f80fd5b50610404610514366004612435565b6101016020525f908152604090205481565b348015610531575f80fd5b50610404611757565b348015610545575f80fd5b506101a9610554366004612467565b6117e0565b6033546001600160a01b031633146105b85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b565b6105c2610559565b6001600160a01b0381166106185760405162461bcd60e51b815260206004820152601d60248201527f6665655661756c742063616e6e6f74206265206164647265737328302900000060448201526064016105af565b60cb80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f4aadc32827849f797733838c61302f7f56d2b6db28caa175eb3f7f8e5aba25f5905f90a35050565b5f84815b602081101561073e578085901c6001166001036106eb578581602081106106ae576106ae61282f565b6020020135826040516020016106ce929190918252602082015260400190565b604051602081830303815290604052805190602001209150610736565b818682602081106106fe576106fe61282f565b602002013560405160200161071d929190918252602082015260400190565b6040516020818303038152906040528051906020012091505b600101610685565b50909114949350505050565b610752610559565b5f81116107c75760405162461bcd60e51b815260206004820152602360248201527f7265706c61792074696d6573206d75737420626520677265617465722074686160448201527f6e2030000000000000000000000000000000000000000000000000000000000060648201526084016105af565b60ff80549082905560408051828152602081018490527fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91015b60405180910390a15050565b61081561186d565b60c9546001600160a01b031661dead146108715760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105af565b60fe5460ca546001600160a01b0391821691165f6108928a8a8a8a8a6118c0565b90505f818051906020012090505f60fb5f8381526020019081526020015f2054116109255760405162461bcd60e51b815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f717565756564000000000000000000000000000000000000000000000000000060648201526084016105af565b5f81815260fc602052604090205460ff16156109835760405162461bcd60e51b815260206004820152601760248201527f4d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105af565b6040517f3e4cbbe60000000000000000000000000000000000000000000000000000000081526001600160a01b038c8116600483015263ffffffff881660248301525f9190861690633e4cbbe690604401602060405180830381865afa1580156109ef573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a13919061285c565b905080341015610a655760405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e74206d73672e76616c756520666f7220666565000060448201526064016105af565b8015610b0d5760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114610ab5576040519150601f19603f3d011682016040523d82523d5f602084013e610aba565b606091505b5050905080610b0b5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105af565b505b5f856001600160a01b031663fd0ad31e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b4a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b6e919061285c565b6040517f9b1597820000000000000000000000000000000000000000000000000000000081529091506001600160a01b03871690639b15978290610bba9088908c9089906004016128de565b5f604051808303815f87803b158015610bd1575f80fd5b505af1158015610be3573d5f803e3d5ffd5b5050505f848152610100602090815260408083208151808301909252546fffffffffffffffffffffffffffffffff80821683527001000000000000000000000000000000009091041691810182905292509003610c53575f8281526101016020526040902060018c019055610c84565b80602001516001016fffffffffffffffffffffffffffffffff166101015f8481526020019081526020015f20819055505b6fffffffffffffffffffffffffffffffff808316602083015260ff54825190911610610cf25760405162461bcd60e51b815260206004820152601b60248201527f457863656564206d6178696d756d207265706c61792074696d6573000000000060448201526064016105af565b80516fffffffffffffffffffffffffffffffff600191909101811682525f858152610100602090815260409091208351919093015182167001000000000000000000000000000000000291161790556001600160a01b038c16610d523390565b6001600160a01b03168b7fa3a1251805b1fc7915884575b42e1fb862e814f0f5c9d670d08bf84697053d618e858d8f604051610d919493929190612914565b60405180910390a434828103908314610e45575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f8114610ded576040519150601f19603f3d011682016040523d82523d5f602084013e610df2565b606091505b5050905080610e435760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105af565b505b5050505050505050505050505050565b610e5d61186d565b610ea1868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525088925087915061195c9050565b505050505050565b610eb1610559565b6105b85f611da8565b610ec261186d565b60c9546001600160a01b031661dead14610f1e5760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105af565b60fe546001600160a01b0390811690871603610fa25760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a20466f7262696420746f2063616c6c206d657373616760448201527f652071756575650000000000000000000000000000000000000000000000000060648201526084016105af565b610fab86611e11565b60c9546001600160a01b039081169088160361102f5760405162461bcd60e51b815260206004820152602160248201527f4d657373656e6765723a20496e76616c6964206d6573736167652073656e646560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084016105af565b5f61103d88888888886118c0565b80516020918201205f81815260fa90925260409091205490915060ff16156110cd5760405162461bcd60e51b815260206004820152603060248201527f4d657373656e6765723a207769746864726177616c2068617320616c7265616460448201527f79206265656e2066696e616c697a65640000000000000000000000000000000060648201526084016105af565b60fd546040517f04d77215000000000000000000000000000000000000000000000000000000008152600481018490526001600160a01b03909116905f9082906304d7721590602401602060405180830381865afa158015611131573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111559190612948565b9050806111ca5760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a207769746864726177616c526f6f74206e6f7420666960448201527f6e616c697a65640000000000000000000000000000000000000000000000000060648201526084016105af565b6111d683868987610681565b6112485760405162461bcd60e51b815260206004820152602d60248201527f4d657373656e6765723a20696e76616c6964207769746864726177616c20696e60448201527f636c7573696f6e2070726f6f660000000000000000000000000000000000000060648201526084016105af565b5060c980547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b8116919091179091556040515f918a16908990611296908990612963565b5f6040518083038185875af1925050503d805f81146112d0576040519150601f19603f3d011682016040523d82523d5f602084013e6112d5565b606091505b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead1790559050801561136d575f83815260fa602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555184917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611398565b60405183907f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f905f90a25b50505050505050505050565b6113ac61186d565b6113b9848484843361195c565b50505050565b6113c7610559565b80156113d8576113d5611e69565b50565b6113d5611ee1565b5f54610100900460ff16158080156113fe57505f54600160ff909116105b806114175750303b15801561141757505f5460ff166001145b6114895760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105af565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156114e5575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038316158061150257506001600160a01b038216155b8061151457506001600160a01b038416155b1561154b576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61156973530000000000000000000000000000000000000785611f38565b60fd80546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560fe805492851692909116919091179055600360ff8190556040517fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b916115f2915f9190918252602082015260400190565b60405180910390a180156113b9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b611669610559565b6001600160a01b0381166116e55760405162461bcd60e51b815260206004820152602360248201527f726f6c6c757020616464726573732063616e6e6f74206265206164647265737360448201527f283029000000000000000000000000000000000000000000000000000000000060648201526084016105af565b60fd80546001600160a01b038381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f5272c8ad4bd643b1130291ea29bebd9b3bc583057a6e4d047eb7077039a956309101610801565b60fe54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290515f926001600160a01b03169163fd0ad31e9160048083019260209291908290030181865afa1580156117b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117db919061285c565b905090565b6117e8610559565b6001600160a01b0381166118645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105af565b6113d581611da8565b60655460ff16156105b85760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064016105af565b606085858585856040516024016118db95949392919061297e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8ef1332e00000000000000000000000000000000000000000000000000000000179052905095945050505050565b611964612050565b60fe5460ca54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290516001600160a01b0393841693909216915f91849163fd0ad31e916004808201926020929091908290030181865afa1580156119d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119f4919061285c565b90505f611a04338a8a858b6118c0565b90505f6001600160a01b038516633e4cbbe6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018a9052604401602060405180830381865afa158015611a78573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a9c919061285c565b9050611aa889826129c0565b341015611af75760405162461bcd60e51b815260206004820152601660248201527f496e73756666696369656e74206d73672e76616c75650000000000000000000060448201526064016105af565b8015611b9f5760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114611b47576040519150601f19603f3d011682016040523d82523d5f602084013e611b4c565b606091505b5050905080611b9d5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105af565b505b6040517f9b1597820000000000000000000000000000000000000000000000000000000081526001600160a01b03861690639b15978290611be89087908b9087906004016129f8565b5f604051808303815f87803b158015611bff575f80fd5b505af1158015611c11573d5f803e3d5ffd5b505050505f8280519060200120905060fb5f8281526020019081526020015f20545f14611c805760405162461bcd60e51b815260206004820152601260248201527f4475706c696361746564206d657373616765000000000000000000000000000060448201526064016105af565b5f81815260fb602052604090204290556001600160a01b038b16336001600160a01b03167f104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e8c878c8e604051611cd99493929190612a1f565b60405180910390a3348290038a8103908b14611d90575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f8114611d38576040519150601f19603f3d011682016040523d82523d5f602084013e611d3d565b606091505b5050905080611d8e5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105af565b505b50505050505050611da16001609755565b5050505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b306001600160a01b038216036113d55760405162461bcd60e51b815260206004820152601e60248201527f4d657373656e6765723a20466f7262696420746f2063616c6c2073656c66000060448201526064016105af565b611e7161186d565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611ec43390565b6040516001600160a01b03909116815260200160405180910390a1565b611ee96120b0565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33611ec4565b5f54610100900460ff16611fb45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b611fbc612102565b611fc4612186565b611fcc61220a565b60c980547fffffffffffffffffffffffff000000000000000000000000000000000000000090811661dead1790915560ca80546001600160a01b038581169190931617905581161561204c5760cb80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383161790555b5050565b6002609754036120a25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016105af565b6002609755565b6001609755565b60655460ff166105b85760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f742070617573656400000000000000000000000060448201526064016105af565b5f54610100900460ff1661217e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b861228e565b5f54610100900460ff166122025760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b8612313565b5f54610100900460ff166122865760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b86123b9565b5f54610100900460ff1661230a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b833611da8565b5f54610100900460ff1661238f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff166120a95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b5f60208284031215612445575f80fd5b5035919050565b80356001600160a01b0381168114612462575f80fd5b919050565b5f60208284031215612477575f80fd5b6124808261244c565b9392505050565b806104008101831015612498575f80fd5b92915050565b5f805f8061046085870312156124b2575f80fd5b843593506124c38660208701612487565b939693955050505061042082013591610440013590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112612516575f80fd5b813567ffffffffffffffff80821115612531576125316124da565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612577576125776124da565b8160405283815286602085880101111561258f575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f805f805f60e0888a0312156125c4575f80fd5b6125cd8861244c565b96506125db6020890161244c565b95506040880135945060608801359350608088013567ffffffffffffffff811115612604575f80fd5b6126108a828b01612507565b93505060a088013563ffffffff81168114612629575f80fd5b915061263760c0890161244c565b905092959891949750929550565b5f805f805f8060a0878903121561265a575f80fd5b6126638761244c565b955060208701359450604087013567ffffffffffffffff80821115612686575f80fd5b818901915089601f830112612699575f80fd5b8135818111156126a7575f80fd5b8a60208285010111156126b8575f80fd5b602083019650809550505050606087013591506126d76080880161244c565b90509295509295509295565b5f805f805f805f6104c0888a0312156126fa575f80fd5b6127038861244c565b96506127116020890161244c565b95506040880135945060608801359350608088013567ffffffffffffffff81111561273a575f80fd5b6127468a828b01612507565b9350506127568960a08a01612487565b91506104a0880135905092959891949750929550565b5f805f806080858703121561277f575f80fd5b6127888561244c565b935060208501359250604085013567ffffffffffffffff8111156127aa575f80fd5b6127b687828801612507565b949793965093946060013593505050565b80151581146113d5575f80fd5b5f602082840312156127e4575f80fd5b8135612480816127c7565b5f805f60608486031215612801575f80fd5b61280a8461244c565b92506128186020850161244c565b91506128266040850161244c565b90509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6020828403121561286c575f80fd5b5051919050565b5f5b8381101561288d578181015183820152602001612875565b50505f910152565b5f81518084526128ac816020860160208601612873565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201525f61290b6060830184612895565b95945050505050565b84815283602082015263ffffffff83166040820152608060608201525f61293e6080830184612895565b9695505050505050565b5f60208284031215612958575f80fd5b8151612480816127c7565b5f8251612974818460208701612873565b9190910192915050565b5f6001600160a01b03808816835280871660208401525084604083015283606083015260a060808301526129b560a0830184612895565b979650505050505050565b80820180821115612498577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6001600160a01b0384168152826020820152606060408201525f61290b6060830184612895565b848152836020820152826040820152608060608201525f61293e608083018461289556fea164736f6c6343000818000a diff --git a/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex b/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex index 704b62314..a0cd87ec7 100644 --- a/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex +++ b/bindings/bin/l1messagequeuewithgaspriceoracle_deployed.hex @@ -1 +1 @@ -0x608060405234801561000f575f80fd5b506004361061019a575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ac578063e3176bd5146103c6578063f2fde38b146103cf578063fd0ad31e146103e2575f80fd5b8063d5ad4a9714610373578063d99bc80e14610386578063da35a26f14610399575f80fd5b8063bb7862ca116100c3578063bb7862ca14610319578063bdc6f0a014610339578063c27606771461034c575f80fd5b80639b159782146102ea578063a85006ca146102fd578063ae453cd514610306575f80fd5b80635f9cd92e116101485780638da5cb5b116101235780638da5cb5b1461029257806391652461146102b0578063927ede2d146102c3575f80fd5b80635f9cd92e1461022b578063715018a61461023e5780638770d70714610246575f80fd5b80633e6dada1116101785780633e6dada1146101ec5780635ad9945a1461020f5780635e45da2314610222575f80fd5b806329aa604b1461019e5780633c7f5283146101c45780633e4cbbe6146101d9575b5f80fd5b6101b16101ac366004611399565b6103ea565b6040519081526020015b60405180910390f35b6101d76101d23660046113b0565b610409565b005b6101b16101e73660046113f3565b61057a565b6101ff6101fa366004611399565b61062e565b60405190151581526020016101bb565b6101b161021d366004611460565b610650565b6101b160685481565b6101d76102393660046114dc565b610840565b6101d76108d5565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101bb565b60335473ffffffffffffffffffffffffffffffffffffffff1661026d565b6101d76102be366004611399565b6108e8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d76102f83660046114f5565b610aa0565b6101b160675481565b6101b1610314366004611399565b610b82565b606b5461026d9073ffffffffffffffffffffffffffffffffffffffff1681565b6101d761034736600461154b565b610bf8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d7610381366004611399565b610d29565b6101d7610394366004611399565b610d6f565b6101d76103a73660046115be565b610db5565b6101b16103ba3660046115e8565b60100261520801919050565b6101b160655481565b6101d76103dd3660046114dc565b610f6e565b6066546101b1565b606681815481106103f9575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104935760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008111156104e55760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d657373616765730000000000000000000000604482015260640161048a565b81606754146105365760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d61746368000000000000000000000000604482015260640161048a565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa1580156105e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061060c9190611627565b1561061857505f610628565b606554610625908361164d565b90505b92915050565b600881901c5f90815260696020526040812054600160ff84161b161515610628565b5f607e816106fa565b5f8161066757506001919050565b5b811561067d5760089190911c90600101610668565b919050565b8060808310600181146106ba5761069884610659565b60808101835360018301925084816020036008021b83528083019250506106db565b84841516600181146106ce578483536106d3565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061070d60018c83610682565b905061071b60018983610682565b905061072789826106e3565b905061073560018b83610682565b9050600186146001811461079d5760388710600181146107825761075888610659565b8060b701845360018401935088816020036008021b84528084019350508789843791870191610797565b87608001835360018301925087898437918701915b506107ae565b6107ab5f89355f1a84610682565b91505b506107b98c826106e3565b90508181035f8060388310600181146107ec576107d584610659565b60f78101600882021b8517935060010191506107f7565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b61084861100b565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108dd61100b565b6108e65f611072565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109935760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b60675481106109e45760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d6573736167650000000000604482015260640161048a565b600881901c5f90815260696020526040902054600160ff83161b1615610a4c5760405162461bcd60e51b815260206004820152601760248201527f6d65737361676520616c72656164792064726f70706564000000000000000000604482015260640161048a565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610b4b5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b610b568383836110e8565b3373111100000000000000000000000000000000111101610b7b81865f8787876111e4565b5050505050565b6066545f908210610bd55760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e6765000000000000604482015260640161048a565b60668281548110610be857610be8611689565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610ca35760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f6174657761790000000000000000000000000000000000000000000000000000606482015260840161048a565b73ffffffffffffffffffffffffffffffffffffffff86163b15610d085760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f41000000000000000000000000000000000000000000000000604482015260640161048a565b610d138383836110e8565b610d218686868686866111e4565b505050505050565b610d3161100b565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c5910161056e565b610d7761100b565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead366329910161056e565b5f54610100900460ff1615808015610dd357505f54600160ff909116105b80610dec5750303b158015610dec57505f5460ff166001145b610e5e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161048a565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610eba575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610ec2611295565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015610f69575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610f7661100b565b73ffffffffffffffffffffffffffffffffffffffff8116610fff5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161048a565b61100881611072565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146108e65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161048a565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156111605760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d6974000000000000000000000000000000000000000000000000000000606482015260840161048a565b6010810261520801808410156111de5760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e7369632067617300000000000000000000000000606482015260840161048a565b50505050565b6066545f6111f78883888a898989610650565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611283908a9087908b908b908b906116b6565b60405180910390a35050505050505050565b5f54610100900460ff166113115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e65f54610100900460ff166113905760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e633611072565b5f602082840312156113a9575f80fd5b5035919050565b5f80604083850312156113c1575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff8116811461067d575f80fd5b5f8060408385031215611404575f80fd5b61140d836113d0565b946020939093013593505050565b5f8083601f84011261142b575f80fd5b50813567ffffffffffffffff811115611442575f80fd5b602083019150836020828501011115611459575f80fd5b9250929050565b5f805f805f805f60c0888a031215611476575f80fd5b61147f886113d0565b9650602088013595506040880135945061149b606089016113d0565b93506080880135925060a088013567ffffffffffffffff8111156114bd575f80fd5b6114c98a828b0161141b565b989b979a50959850939692959293505050565b5f602082840312156114ec575f80fd5b610625826113d0565b5f805f8060608587031215611508575f80fd5b611511856113d0565b935060208501359250604085013567ffffffffffffffff811115611533575f80fd5b61153f8782880161141b565b95989497509550505050565b5f805f805f8060a08789031215611560575f80fd5b611569876113d0565b9550611577602088016113d0565b94506040870135935060608701359250608087013567ffffffffffffffff8111156115a0575f80fd5b6115ac89828a0161141b565b979a9699509497509295939492505050565b5f80604083850312156115cf575f80fd5b823591506115df602084016113d0565b90509250929050565b5f80602083850312156115f9575f80fd5b823567ffffffffffffffff81111561160f575f80fd5b61161b8582860161141b565b90969095509350505050565b5f60208284031215611637575f80fd5b81518015158114611646575f80fd5b9392505050565b8082028115828204841417610628577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a +0x608060405234801561000f575f80fd5b5060043610610184575f3560e01c8063a85006ca116100dd578063d99bc80e11610088578063e3176bd511610063578063e3176bd51461037a578063f2fde38b14610383578063fd0ad31e14610396575f80fd5b8063d99bc80e1461033a578063da35a26f1461034d578063e172d3a114610360575f80fd5b8063bdc6f0a0116100b8578063bdc6f0a0146102ed578063c276067714610300578063d5ad4a9714610327575f80fd5b8063a85006ca146102b1578063ae453cd5146102ba578063bb7862ca146102cd575f80fd5b80635f9cd92e1161013d5780638da5cb5b116101185780638da5cb5b14610259578063927ede2d146102775780639b1597821461029e575f80fd5b80635f9cd92e146101f2578063715018a6146102055780638770d7071461020d575f80fd5b80633e4cbbe61161016d5780633e4cbbe6146101c35780635ad9945a146101d65780635e45da23146101e9575f80fd5b806329aa604b146101885780633c7f5283146101ae575b5f80fd5b61019b610196366004611173565b61039e565b6040519081526020015b60405180910390f35b6101c16101bc36600461118a565b6103bd565b005b61019b6101d13660046111cd565b61052e565b61019b6101e436600461123a565b6105e2565b61019b60685481565b6101c16102003660046112b6565b6107d2565b6101c1610867565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a5565b60335473ffffffffffffffffffffffffffffffffffffffff16610234565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b6101c16102ac3660046112cf565b61087a565b61019b60675481565b61019b6102c8366004611173565b61095c565b606b546102349073ffffffffffffffffffffffffffffffffffffffff1681565b6101c16102fb366004611325565b6109d2565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b6101c1610335366004611173565b610b03565b6101c1610348366004611173565b610b49565b6101c161035b366004611398565b610b8f565b61019b61036e3660046113c2565b60100261520801919050565b61019b60655481565b6101c16103913660046112b6565b610d48565b60665461019b565b606681815481106103ad575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104475760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008111156104995760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d657373616765730000000000000000000000604482015260640161043e565b81606754146104ea5760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d61746368000000000000000000000000604482015260640161043e565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa15801561059c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c09190611401565b156105cc57505f6105dc565b6065546105d99083611427565b90505b92915050565b5f607e8161068c565b5f816105f957506001919050565b5b811561060f5760089190911c906001016105fa565b919050565b80608083106001811461064c5761062a846105eb565b60808101835360018301925084816020036008021b835280830192505061066d565b848415166001811461066057848353610665565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061069f60018c83610614565b90506106ad60018983610614565b90506106b98982610675565b90506106c760018b83610614565b9050600186146001811461072f576038871060018114610714576106ea886105eb565b8060b701845360018401935088816020036008021b84528084019350508789843791870191610729565b87608001835360018301925087898437918701915b50610740565b61073d5f89355f1a84610614565b91505b5061074b8c82610675565b90508181035f80603883106001811461077e57610767846105eb565b60f78101600882021b851793506001019150610789565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b6107da610de5565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61086f610de5565b6108785f610e4c565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109255760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161043e565b610930838383610ec2565b337311110000000000000000000000000000000011110161095581865f878787610fbe565b5050505050565b6066545f9082106109af5760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e6765000000000000604482015260640161043e565b606682815481106109c2576109c2611463565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610a7d5760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f6174657761790000000000000000000000000000000000000000000000000000606482015260840161043e565b73ffffffffffffffffffffffffffffffffffffffff86163b15610ae25760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f41000000000000000000000000000000000000000000000000604482015260640161043e565b610aed838383610ec2565b610afb868686868686610fbe565b505050505050565b610b0b610de5565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c59101610522565b610b51610de5565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead3663299101610522565b5f54610100900460ff1615808015610bad57505f54600160ff909116105b80610bc65750303b158015610bc657505f5460ff166001145b610c385760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161043e565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610c94575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610c9c61106f565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015610d43575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610d50610de5565b73ffffffffffffffffffffffffffffffffffffffff8116610dd95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161043e565b610de281610e4c565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146108785760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161043e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606854831115610f3a5760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d6974000000000000000000000000000000000000000000000000000000606482015260840161043e565b601081026152080180841015610fb85760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e7369632067617300000000000000000000000000606482015260840161043e565b50505050565b6066545f610fd18883888a8989896105e2565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e9061105d908a9087908b908b908b90611490565b60405180910390a35050505050505050565b5f54610100900460ff166110eb5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161043e565b6108785f54610100900460ff1661116a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161043e565b61087833610e4c565b5f60208284031215611183575f80fd5b5035919050565b5f806040838503121561119b575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff8116811461060f575f80fd5b5f80604083850312156111de575f80fd5b6111e7836111aa565b946020939093013593505050565b5f8083601f840112611205575f80fd5b50813567ffffffffffffffff81111561121c575f80fd5b602083019150836020828501011115611233575f80fd5b9250929050565b5f805f805f805f60c0888a031215611250575f80fd5b611259886111aa565b96506020880135955060408801359450611275606089016111aa565b93506080880135925060a088013567ffffffffffffffff811115611297575f80fd5b6112a38a828b016111f5565b989b979a50959850939692959293505050565b5f602082840312156112c6575f80fd5b6105d9826111aa565b5f805f80606085870312156112e2575f80fd5b6112eb856111aa565b935060208501359250604085013567ffffffffffffffff81111561130d575f80fd5b611319878288016111f5565b95989497509550505050565b5f805f805f8060a0878903121561133a575f80fd5b611343876111aa565b9550611351602088016111aa565b94506040870135935060608701359250608087013567ffffffffffffffff81111561137a575f80fd5b61138689828a016111f5565b979a9699509497509295939492505050565b5f80604083850312156113a9575f80fd5b823591506113b9602084016111aa565b90509250929050565b5f80602083850312156113d3575f80fd5b823567ffffffffffffffff8111156113e9575f80fd5b6113f5858286016111f5565b90969095509350505050565b5f60208284031215611411575f80fd5b81518015158114611420575f80fd5b9392505050565b80820281158282048414176105dc577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a diff --git a/bindings/bindings/l1crossdomainmessenger.go b/bindings/bindings/l1crossdomainmessenger.go index 87775ad2d..2f47f0b20 100644 --- a/bindings/bindings/l1crossdomainmessenger.go +++ b/bindings/bindings/l1crossdomainmessenger.go @@ -31,8 +31,8 @@ var ( // L1CrossDomainMessengerMetaData contains all meta data concerning the L1CrossDomainMessenger contract. var L1CrossDomainMessengerMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"DropMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"FailedRelayedMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"RelayedMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"oldNonce\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"messageNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"message\",\"type\":\"bytes\"}],\"name\":\"ReplayMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"messageNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"message\",\"type\":\"bytes\"}],\"name\":\"SentMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldFeeVault\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newFeeVault\",\"type\":\"address\"}],\"name\":\"UpdateFeeVault\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldMaxReplayTimes\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newMaxReplayTimes\",\"type\":\"uint256\"}],\"name\":\"UpdateMaxReplayTimes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldRollup\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newRollup\",\"type\":\"address\"}],\"name\":\"UpdateRollup\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_messageNonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"}],\"name\":\"dropMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeVault\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"finalizedWithdrawals\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeVault\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"isL1MessageDropped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxReplayTimes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"messageSendTimestamp\",\"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\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"prevReplayIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[32]\",\"name\":\"_withdrawalProof\",\"type\":\"bytes32[32]\"},{\"internalType\":\"bytes32\",\"name\":\"_withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"proveAndRelayMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_messageNonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"_newGasLimit\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"_refundAddress\",\"type\":\"address\"}],\"name\":\"replayMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"replayStates\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"times\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"lastIndex\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_refundAddress\",\"type\":\"address\"}],\"name\":\"sendMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"sendMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeVault\",\"type\":\"address\"}],\"name\":\"updateFeeVault\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newMaxReplayTimes\",\"type\":\"uint256\"}],\"name\":\"updateMaxReplayTimes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newRollup\",\"type\":\"address\"}],\"name\":\"updateRollup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"leafHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[32]\",\"name\":\"smtProof\",\"type\":\"bytes32[32]\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"root\",\"type\":\"bytes32\"}],\"name\":\"verifyMerkleProof\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"xDomainMessageSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", - Bin: "0x608060405234801562000010575f80fd5b506200001b62000021565b620000df565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff90811614620000dd575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612de580620000ed5f395ff3fe6080604052600436106101a7575f3560e01c806386fa4b73116100e7578063c0c53b8b11610087578063e70fc93b11610062578063e70fc93b146104f9578063ea7ec51414610524578063ecc7042814610550578063f2fde38b14610564575f80fd5b8063c0c53b8b1461049c578063cb23bcb5146104bb578063d87e7df1146104da575f80fd5b8063a14238e7116100c2578063a14238e71461040e578063b2267a7b1461043c578063b604bf4c1461044f578063bedb86fb1461047d575f80fd5b806386fa4b73146103af5780638da5cb5b146103ce578063946130d8146103eb575f80fd5b806355004105116101525780636e296e451161012d5780636e296e45146102de578063715018a6146102fd578063797594b014610311578063846d4d7a14610330575f80fd5b806355004105146102a15780635c975abb146102b45780635f7b1577146102cb575f80fd5b80633b70c18a116101825780633b70c18a1461022c578063407c195514610263578063478222c214610282575f80fd5b806329907acd146101ba5780632a6cccb2146101d9578063340735f7146101f8575f80fd5b366101b6576101b4610583565b005b5f80fd5b3480156101c5575f80fd5b506101b46101d436600461283a565b6105e4565b3480156101e4575f80fd5b506101b46101f33660046128a7565b610966565b348015610203575f80fd5b506102176102123660046128de565b610a2d565b60405190151581526020015b60405180910390f35b348015610237575f80fd5b5060fe5461024b906001600160a01b031681565b6040516001600160a01b039091168152602001610223565b34801561026e575f80fd5b506101b461027d36600461291a565b610af6565b34801561028d575f80fd5b5060cb5461024b906001600160a01b031681565b6101b46102af366004612931565b610bb9565b3480156102bf575f80fd5b5060655460ff16610217565b6101b46102d93660046129c8565b611201565b3480156102e9575f80fd5b5060c95461024b906001600160a01b031681565b348015610308575f80fd5b506101b4611255565b34801561031c575f80fd5b5060ca5461024b906001600160a01b031681565b34801561033b575f80fd5b5061038661034a36600461291a565b6101006020525f90815260409020546fffffffffffffffffffffffffffffffff8082169170010000000000000000000000000000000090041682565b604080516fffffffffffffffffffffffffffffffff938416815292909116602083015201610223565b3480156103ba575f80fd5b506101b46103c9366004612a66565b611266565b3480156103d9575f80fd5b506033546001600160a01b031661024b565b3480156103f6575f80fd5b5061040060ff5481565b604051908152602001610223565b348015610419575f80fd5b5061021761042836600461291a565b60fa6020525f908152604090205460ff1681565b6101b461044a366004612aef565b611732565b34801561045a575f80fd5b5061021761046936600461291a565b60fc6020525f908152604090205460ff1681565b348015610488575f80fd5b506101b4610497366004612b57565b61174d565b3480156104a7575f80fd5b506101b46104b6366004612b72565b61176e565b3480156104c6575f80fd5b5060fd5461024b906001600160a01b031681565b3480156104e5575f80fd5b506101b46104f43660046128a7565b6119d1565b348015610504575f80fd5b5061040061051336600461291a565b60fb6020525f908152604090205481565b34801561052f575f80fd5b5061040061053e36600461291a565b6101016020525f908152604090205481565b34801561055b575f80fd5b50610400611ac7565b34801561056f575f80fd5b506101b461057e3660046128a7565b611b50565b6033546001600160a01b031633146105e25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b565b6105ec611bdd565b60c9546001600160a01b031661dead146106485760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105d9565b60fe546001600160a01b03165f6106628787878787611c30565b90505f818051906020012090505f60fb5f8381526020019081526020015f2054116106f55760405162461bcd60e51b815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f717565756564000000000000000000000000000000000000000000000000000060648201526084016105d9565b5f81815260fc602052604090205460ff16156107535760405162461bcd60e51b815260206004820152601760248201527f4d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105d9565b5f818152610100602052604081205470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff16908190036107935750845b6040517f91652461000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b038516906391652461906024015f604051808303815f87803b1580156107eb575f80fd5b505af11580156107fd573d5f803e3d5ffd5b5050505f918252506101016020526040902054801561083d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01610793565b5f82815260fc6020526040808220805460ff191660011790555187917fbd05aabbf548001ebdd6ac80c02f1cfb3b39165f2fae1d420075f22e781ef63b91a260c980547fffffffffffffffffffffffff000000000000000000000000000000000000000016736f297c61b5c92ef107ffd30cd56affe5a273e8411790556040517f14298c510000000000000000000000000000000000000000000000000000000081526001600160a01b038a16906314298c51908990610901908990600401612c1d565b5f604051808303818588803b158015610918575f80fd5b505af115801561092a573d5f803e3d5ffd5b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead179055505050505050505050505050565b61096e610583565b6001600160a01b0381166109c45760405162461bcd60e51b815260206004820152601d60248201527f6665655661756c742063616e6e6f74206265206164647265737328302900000060448201526064016105d9565b60cb80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f4aadc32827849f797733838c61302f7f56d2b6db28caa175eb3f7f8e5aba25f5905f90a35050565b5f84815b6020811015610aea578085901c600116600103610a9757858160208110610a5a57610a5a612c2f565b602002013582604051602001610a7a929190918252602082015260400190565b604051602081830303815290604052805190602001209150610ae2565b81868260208110610aaa57610aaa612c2f565b6020020135604051602001610ac9929190918252602082015260400190565b6040516020818303038152906040528051906020012091505b600101610a31565b50909114949350505050565b610afe610583565b5f8111610b735760405162461bcd60e51b815260206004820152602360248201527f7265706c61792074696d6573206d75737420626520677265617465722074686160448201527f6e2030000000000000000000000000000000000000000000000000000000000060648201526084016105d9565b60ff80549082905560408051828152602081018490527fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91015b60405180910390a15050565b610bc1611bdd565b60c9546001600160a01b031661dead14610c1d5760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105d9565b60fe5460ca546001600160a01b0391821691165f610c3e8a8a8a8a8a611c30565b90505f818051906020012090505f60fb5f8381526020019081526020015f205411610cd15760405162461bcd60e51b815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f717565756564000000000000000000000000000000000000000000000000000060648201526084016105d9565b5f81815260fc602052604090205460ff1615610d2f5760405162461bcd60e51b815260206004820152601760248201527f4d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105d9565b6040517f3e4cbbe60000000000000000000000000000000000000000000000000000000081526001600160a01b038c8116600483015263ffffffff881660248301525f9190861690633e4cbbe690604401602060405180830381865afa158015610d9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dbf9190612c5c565b905080341015610e115760405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e74206d73672e76616c756520666f7220666565000060448201526064016105d9565b8015610eb95760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114610e61576040519150601f19603f3d011682016040523d82523d5f602084013e610e66565b606091505b5050905080610eb75760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105d9565b505b5f856001600160a01b031663fd0ad31e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ef6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f1a9190612c5c565b6040517f9b1597820000000000000000000000000000000000000000000000000000000081529091506001600160a01b03871690639b15978290610f669088908c908990600401612c73565b5f604051808303815f87803b158015610f7d575f80fd5b505af1158015610f8f573d5f803e3d5ffd5b5050505f848152610100602090815260408083208151808301909252546fffffffffffffffffffffffffffffffff80821683527001000000000000000000000000000000009091041691810182905292509003610fff575f8281526101016020526040902060018c019055611030565b80602001516001016fffffffffffffffffffffffffffffffff166101015f8481526020019081526020015f20819055505b6fffffffffffffffffffffffffffffffff808316602083015260ff5482519091161061109e5760405162461bcd60e51b815260206004820152601b60248201527f457863656564206d6178696d756d207265706c61792074696d6573000000000060448201526064016105d9565b80516fffffffffffffffffffffffffffffffff600191909101811682525f858152610100602090815260409091208351919093015182167001000000000000000000000000000000000291161790556001600160a01b038c166110fe3390565b6001600160a01b03168b7fa3a1251805b1fc7915884575b42e1fb862e814f0f5c9d670d08bf84697053d618e858d8f60405161113d9493929190612ca9565b60405180910390a4348281039083146111f1575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f8114611199576040519150601f19603f3d011682016040523d82523d5f602084013e61119e565b606091505b50509050806111ef5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105d9565b505b5050505050505050505050505050565b611209611bdd565b61124d868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250889250879150611ccc9050565b505050505050565b61125d610583565b6105e25f612118565b61126e611bdd565b60c9546001600160a01b031661dead146112ca5760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105d9565b60fe546001600160a01b039081169087160361134e5760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a20466f7262696420746f2063616c6c206d657373616760448201527f652071756575650000000000000000000000000000000000000000000000000060648201526084016105d9565b61135786612181565b60c9546001600160a01b03908116908816036113db5760405162461bcd60e51b815260206004820152602160248201527f4d657373656e6765723a20496e76616c6964206d6573736167652073656e646560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084016105d9565b5f6113e98888888888611c30565b80516020918201205f81815260fa90925260409091205490915060ff16156114795760405162461bcd60e51b815260206004820152603060248201527f4d657373656e6765723a207769746864726177616c2068617320616c7265616460448201527f79206265656e2066696e616c697a65640000000000000000000000000000000060648201526084016105d9565b60fd546040517f04d77215000000000000000000000000000000000000000000000000000000008152600481018490526001600160a01b03909116905f9082906304d7721590602401602060405180830381865afa1580156114dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115019190612cdd565b9050806115765760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a207769746864726177616c526f6f74206e6f7420666960448201527f6e616c697a65640000000000000000000000000000000000000000000000000060648201526084016105d9565b61158283868987610a2d565b6115f45760405162461bcd60e51b815260206004820152602d60248201527f4d657373656e6765723a20696e76616c6964207769746864726177616c20696e60448201527f636c7573696f6e2070726f6f660000000000000000000000000000000000000060648201526084016105d9565b5060c980547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b8116919091179091556040515f918a16908990611642908990612cf8565b5f6040518083038185875af1925050503d805f811461167c576040519150601f19603f3d011682016040523d82523d5f602084013e611681565b606091505b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead179055905080156116fb575f83815260fa6020526040808220805460ff191660011790555184917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611726565b60405183907f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f905f90a25b50505050505050505050565b61173a611bdd565b6117478484848433611ccc565b50505050565b611755610583565b8015611766576117636121d9565b50565b611763612233565b5f54610100900460ff161580801561178c57505f54600160ff909116105b806117a55750303b1580156117a557505f5460ff166001145b6118175760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105d9565b5f805460ff191660011790558015611855575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038316158061187257506001600160a01b038216155b8061188457506001600160a01b038416155b156118bb576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6118d97353000000000000000000000000000000000000078561226c565b60fd80546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560fe805492851692909116919091179055600360ff8190556040517fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91611962915f9190918252602082015260400190565b60405180910390a18015611747575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b6119d9610583565b6001600160a01b038116611a555760405162461bcd60e51b815260206004820152602360248201527f726f6c6c757020616464726573732063616e6e6f74206265206164647265737360448201527f283029000000000000000000000000000000000000000000000000000000000060648201526084016105d9565b60fd80546001600160a01b038381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f5272c8ad4bd643b1130291ea29bebd9b3bc583057a6e4d047eb7077039a956309101610bad565b60fe54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290515f926001600160a01b03169163fd0ad31e9160048083019260209291908290030181865afa158015611b27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b4b9190612c5c565b905090565b611b58610583565b6001600160a01b038116611bd45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105d9565b61176381612118565b60655460ff16156105e25760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064016105d9565b60608585858585604051602401611c4b959493929190612d13565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8ef1332e00000000000000000000000000000000000000000000000000000000179052905095945050505050565b611cd4612384565b60fe5460ca54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290516001600160a01b0393841693909216915f91849163fd0ad31e916004808201926020929091908290030181865afa158015611d40573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d649190612c5c565b90505f611d74338a8a858b611c30565b90505f6001600160a01b038516633e4cbbe6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018a9052604401602060405180830381865afa158015611de8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e0c9190612c5c565b9050611e188982612d55565b341015611e675760405162461bcd60e51b815260206004820152601660248201527f496e73756666696369656e74206d73672e76616c75650000000000000000000060448201526064016105d9565b8015611f0f5760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114611eb7576040519150601f19603f3d011682016040523d82523d5f602084013e611ebc565b606091505b5050905080611f0d5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105d9565b505b6040517f9b1597820000000000000000000000000000000000000000000000000000000081526001600160a01b03861690639b15978290611f589087908b908790600401612d8d565b5f604051808303815f87803b158015611f6f575f80fd5b505af1158015611f81573d5f803e3d5ffd5b505050505f8280519060200120905060fb5f8281526020019081526020015f20545f14611ff05760405162461bcd60e51b815260206004820152601260248201527f4475706c696361746564206d657373616765000000000000000000000000000060448201526064016105d9565b5f81815260fb602052604090204290556001600160a01b038b16336001600160a01b03167f104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e8c878c8e6040516120499493929190612db4565b60405180910390a3348290038a8103908b14612100575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f81146120a8576040519150601f19603f3d011682016040523d82523d5f602084013e6120ad565b606091505b50509050806120fe5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105d9565b505b505050505050506121116001609755565b5050505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b306001600160a01b038216036117635760405162461bcd60e51b815260206004820152601e60248201527f4d657373656e6765723a20466f7262696420746f2063616c6c2073656c66000060448201526064016105d9565b6121e1611bdd565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586122163390565b6040516001600160a01b03909116815260200160405180910390a1565b61223b6123e4565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612216565b5f54610100900460ff166122e85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6122f0612436565b6122f86124ba565b61230061253e565b60c980547fffffffffffffffffffffffff000000000000000000000000000000000000000090811661dead1790915560ca80546001600160a01b03858116919093161790558116156123805760cb80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383161790555b5050565b6002609754036123d65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016105d9565b6002609755565b6001609755565b60655460ff166105e25760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f742070617573656400000000000000000000000060448201526064016105d9565b5f54610100900460ff166124b25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e26125c2565b5f54610100900460ff166125365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e2612647565b5f54610100900460ff166125ba5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e26126cf565b5f54610100900460ff1661263e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6105e233612118565b5f54610100900460ff166126c35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b6065805460ff19169055565b5f54610100900460ff166123dd5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d9565b80356001600160a01b0381168114612761575f80fd5b919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126127a2575f80fd5b813567ffffffffffffffff808211156127bd576127bd612766565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561280357612803612766565b8160405283815286602085880101111561281b575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f805f60a0868803121561284e575f80fd5b6128578661274b565b94506128656020870161274b565b93506040860135925060608601359150608086013567ffffffffffffffff81111561288e575f80fd5b61289a88828901612793565b9150509295509295909350565b5f602082840312156128b7575f80fd5b6128c08261274b565b9392505050565b8061040081018310156128d8575f80fd5b92915050565b5f805f8061046085870312156128f2575f80fd5b8435935061290386602087016128c7565b939693955050505061042082013591610440013590565b5f6020828403121561292a575f80fd5b5035919050565b5f805f805f805f60e0888a031215612947575f80fd5b6129508861274b565b965061295e6020890161274b565b95506040880135945060608801359350608088013567ffffffffffffffff811115612987575f80fd5b6129938a828b01612793565b93505060a088013563ffffffff811681146129ac575f80fd5b91506129ba60c0890161274b565b905092959891949750929550565b5f805f805f8060a087890312156129dd575f80fd5b6129e68761274b565b955060208701359450604087013567ffffffffffffffff80821115612a09575f80fd5b818901915089601f830112612a1c575f80fd5b813581811115612a2a575f80fd5b8a6020828501011115612a3b575f80fd5b60208301965080955050505060608701359150612a5a6080880161274b565b90509295509295509295565b5f805f805f805f6104c0888a031215612a7d575f80fd5b612a868861274b565b9650612a946020890161274b565b95506040880135945060608801359350608088013567ffffffffffffffff811115612abd575f80fd5b612ac98a828b01612793565b935050612ad98960a08a016128c7565b91506104a0880135905092959891949750929550565b5f805f8060808587031215612b02575f80fd5b612b0b8561274b565b935060208501359250604085013567ffffffffffffffff811115612b2d575f80fd5b612b3987828801612793565b949793965093946060013593505050565b8015158114611763575f80fd5b5f60208284031215612b67575f80fd5b81356128c081612b4a565b5f805f60608486031215612b84575f80fd5b612b8d8461274b565b9250612b9b6020850161274b565b9150612ba96040850161274b565b90509250925092565b5f5b83811015612bcc578181015183820152602001612bb4565b50505f910152565b5f8151808452612beb816020860160208601612bb2565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f6128c06020830184612bd4565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215612c6c575f80fd5b5051919050565b6001600160a01b038416815263ffffffff83166020820152606060408201525f612ca06060830184612bd4565b95945050505050565b84815283602082015263ffffffff83166040820152608060608201525f612cd36080830184612bd4565b9695505050505050565b5f60208284031215612ced575f80fd5b81516128c081612b4a565b5f8251612d09818460208701612bb2565b9190910192915050565b5f6001600160a01b03808816835280871660208401525084604083015283606083015260a06080830152612d4a60a0830184612bd4565b979650505050505050565b808201808211156128d8577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6001600160a01b0384168152826020820152606060408201525f612ca06060830184612bd4565b848152836020820152826040820152608060608201525f612cd36080830184612bd456fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"FailedRelayedMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"RelayedMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"oldNonce\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"messageNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"message\",\"type\":\"bytes\"}],\"name\":\"ReplayMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"messageNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"message\",\"type\":\"bytes\"}],\"name\":\"SentMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldFeeVault\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newFeeVault\",\"type\":\"address\"}],\"name\":\"UpdateFeeVault\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldMaxReplayTimes\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newMaxReplayTimes\",\"type\":\"uint256\"}],\"name\":\"UpdateMaxReplayTimes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldRollup\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newRollup\",\"type\":\"address\"}],\"name\":\"UpdateRollup\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"__isL1MessageDropped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeVault\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"finalizedWithdrawals\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeVault\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxReplayTimes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"messageSendTimestamp\",\"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\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"prevReplayIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[32]\",\"name\":\"_withdrawalProof\",\"type\":\"bytes32[32]\"},{\"internalType\":\"bytes32\",\"name\":\"_withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"proveAndRelayMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_messageNonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"_newGasLimit\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"_refundAddress\",\"type\":\"address\"}],\"name\":\"replayMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"replayStates\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"times\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"lastIndex\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_refundAddress\",\"type\":\"address\"}],\"name\":\"sendMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"sendMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeVault\",\"type\":\"address\"}],\"name\":\"updateFeeVault\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newMaxReplayTimes\",\"type\":\"uint256\"}],\"name\":\"updateMaxReplayTimes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newRollup\",\"type\":\"address\"}],\"name\":\"updateRollup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"leafHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[32]\",\"name\":\"smtProof\",\"type\":\"bytes32[32]\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"root\",\"type\":\"bytes32\"}],\"name\":\"verifyMerkleProof\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"xDomainMessageSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", + Bin: "0x608060405234801562000010575f80fd5b506200001b62000021565b620000df565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff90811614620000dd575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612a5080620000ed5f395ff3fe60806040526004361061019c575f3560e01c806386fa4b73116100dc578063c0c53b8b11610087578063e70fc93b11610062578063e70fc93b146104cf578063ea7ec514146104fa578063ecc7042814610526578063f2fde38b1461053a575f80fd5b8063c0c53b8b14610472578063cb23bcb514610491578063d87e7df1146104b0575f80fd5b8063a14238e7116100b7578063a14238e714610412578063b2267a7b14610440578063bedb86fb14610453575f80fd5b806386fa4b73146103b35780638da5cb5b146103d2578063946130d8146103ef575f80fd5b806355004105116101475780636e296e45116101225780636e296e45146102e2578063715018a614610301578063797594b014610315578063846d4d7a14610334575f80fd5b806355004105146102a55780635c975abb146102b85780635f7b1577146102cf575f80fd5b80633b70c18a116101775780633b70c18a14610230578063407c195514610267578063478222c214610286575f80fd5b806305804dd7146101af5780632a6cccb2146101f2578063340735f714610211575f80fd5b366101ab576101a9610559565b005b5f80fd5b3480156101ba575f80fd5b506101dd6101c9366004612435565b60fc6020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156101fd575f80fd5b506101a961020c366004612467565b6105ba565b34801561021c575f80fd5b506101dd61022b36600461249e565b610681565b34801561023b575f80fd5b5060fe5461024f906001600160a01b031681565b6040516001600160a01b0390911681526020016101e9565b348015610272575f80fd5b506101a9610281366004612435565b61074a565b348015610291575f80fd5b5060cb5461024f906001600160a01b031681565b6101a96102b33660046125ae565b61080d565b3480156102c3575f80fd5b5060655460ff166101dd565b6101a96102dd366004612645565b610e55565b3480156102ed575f80fd5b5060c95461024f906001600160a01b031681565b34801561030c575f80fd5b506101a9610ea9565b348015610320575f80fd5b5060ca5461024f906001600160a01b031681565b34801561033f575f80fd5b5061038a61034e366004612435565b6101006020525f90815260409020546fffffffffffffffffffffffffffffffff8082169170010000000000000000000000000000000090041682565b604080516fffffffffffffffffffffffffffffffff9384168152929091166020830152016101e9565b3480156103be575f80fd5b506101a96103cd3660046126e3565b610eba565b3480156103dd575f80fd5b506033546001600160a01b031661024f565b3480156103fa575f80fd5b5061040460ff5481565b6040519081526020016101e9565b34801561041d575f80fd5b506101dd61042c366004612435565b60fa6020525f908152604090205460ff1681565b6101a961044e36600461276c565b6113a4565b34801561045e575f80fd5b506101a961046d3660046127d4565b6113bf565b34801561047d575f80fd5b506101a961048c3660046127ef565b6113e0565b34801561049c575f80fd5b5060fd5461024f906001600160a01b031681565b3480156104bb575f80fd5b506101a96104ca366004612467565b611661565b3480156104da575f80fd5b506104046104e9366004612435565b60fb6020525f908152604090205481565b348015610505575f80fd5b50610404610514366004612435565b6101016020525f908152604090205481565b348015610531575f80fd5b50610404611757565b348015610545575f80fd5b506101a9610554366004612467565b6117e0565b6033546001600160a01b031633146105b85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b565b6105c2610559565b6001600160a01b0381166106185760405162461bcd60e51b815260206004820152601d60248201527f6665655661756c742063616e6e6f74206265206164647265737328302900000060448201526064016105af565b60cb80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f4aadc32827849f797733838c61302f7f56d2b6db28caa175eb3f7f8e5aba25f5905f90a35050565b5f84815b602081101561073e578085901c6001166001036106eb578581602081106106ae576106ae61282f565b6020020135826040516020016106ce929190918252602082015260400190565b604051602081830303815290604052805190602001209150610736565b818682602081106106fe576106fe61282f565b602002013560405160200161071d929190918252602082015260400190565b6040516020818303038152906040528051906020012091505b600101610685565b50909114949350505050565b610752610559565b5f81116107c75760405162461bcd60e51b815260206004820152602360248201527f7265706c61792074696d6573206d75737420626520677265617465722074686160448201527f6e2030000000000000000000000000000000000000000000000000000000000060648201526084016105af565b60ff80549082905560408051828152602081018490527fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91015b60405180910390a15050565b61081561186d565b60c9546001600160a01b031661dead146108715760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105af565b60fe5460ca546001600160a01b0391821691165f6108928a8a8a8a8a6118c0565b90505f818051906020012090505f60fb5f8381526020019081526020015f2054116109255760405162461bcd60e51b815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f717565756564000000000000000000000000000000000000000000000000000060648201526084016105af565b5f81815260fc602052604090205460ff16156109835760405162461bcd60e51b815260206004820152601760248201527f4d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016105af565b6040517f3e4cbbe60000000000000000000000000000000000000000000000000000000081526001600160a01b038c8116600483015263ffffffff881660248301525f9190861690633e4cbbe690604401602060405180830381865afa1580156109ef573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a13919061285c565b905080341015610a655760405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e74206d73672e76616c756520666f7220666565000060448201526064016105af565b8015610b0d5760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114610ab5576040519150601f19603f3d011682016040523d82523d5f602084013e610aba565b606091505b5050905080610b0b5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105af565b505b5f856001600160a01b031663fd0ad31e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b4a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b6e919061285c565b6040517f9b1597820000000000000000000000000000000000000000000000000000000081529091506001600160a01b03871690639b15978290610bba9088908c9089906004016128de565b5f604051808303815f87803b158015610bd1575f80fd5b505af1158015610be3573d5f803e3d5ffd5b5050505f848152610100602090815260408083208151808301909252546fffffffffffffffffffffffffffffffff80821683527001000000000000000000000000000000009091041691810182905292509003610c53575f8281526101016020526040902060018c019055610c84565b80602001516001016fffffffffffffffffffffffffffffffff166101015f8481526020019081526020015f20819055505b6fffffffffffffffffffffffffffffffff808316602083015260ff54825190911610610cf25760405162461bcd60e51b815260206004820152601b60248201527f457863656564206d6178696d756d207265706c61792074696d6573000000000060448201526064016105af565b80516fffffffffffffffffffffffffffffffff600191909101811682525f858152610100602090815260409091208351919093015182167001000000000000000000000000000000000291161790556001600160a01b038c16610d523390565b6001600160a01b03168b7fa3a1251805b1fc7915884575b42e1fb862e814f0f5c9d670d08bf84697053d618e858d8f604051610d919493929190612914565b60405180910390a434828103908314610e45575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f8114610ded576040519150601f19603f3d011682016040523d82523d5f602084013e610df2565b606091505b5050905080610e435760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105af565b505b5050505050505050505050505050565b610e5d61186d565b610ea1868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525088925087915061195c9050565b505050505050565b610eb1610559565b6105b85f611da8565b610ec261186d565b60c9546001600160a01b031661dead14610f1e5760405162461bcd60e51b815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e0060448201526064016105af565b60fe546001600160a01b0390811690871603610fa25760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a20466f7262696420746f2063616c6c206d657373616760448201527f652071756575650000000000000000000000000000000000000000000000000060648201526084016105af565b610fab86611e11565b60c9546001600160a01b039081169088160361102f5760405162461bcd60e51b815260206004820152602160248201527f4d657373656e6765723a20496e76616c6964206d6573736167652073656e646560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084016105af565b5f61103d88888888886118c0565b80516020918201205f81815260fa90925260409091205490915060ff16156110cd5760405162461bcd60e51b815260206004820152603060248201527f4d657373656e6765723a207769746864726177616c2068617320616c7265616460448201527f79206265656e2066696e616c697a65640000000000000000000000000000000060648201526084016105af565b60fd546040517f04d77215000000000000000000000000000000000000000000000000000000008152600481018490526001600160a01b03909116905f9082906304d7721590602401602060405180830381865afa158015611131573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111559190612948565b9050806111ca5760405162461bcd60e51b815260206004820152602760248201527f4d657373656e6765723a207769746864726177616c526f6f74206e6f7420666960448201527f6e616c697a65640000000000000000000000000000000000000000000000000060648201526084016105af565b6111d683868987610681565b6112485760405162461bcd60e51b815260206004820152602d60248201527f4d657373656e6765723a20696e76616c6964207769746864726177616c20696e60448201527f636c7573696f6e2070726f6f660000000000000000000000000000000000000060648201526084016105af565b5060c980547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b8116919091179091556040515f918a16908990611296908990612963565b5f6040518083038185875af1925050503d805f81146112d0576040519150601f19603f3d011682016040523d82523d5f602084013e6112d5565b606091505b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead1790559050801561136d575f83815260fa602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555184917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611398565b60405183907f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f905f90a25b50505050505050505050565b6113ac61186d565b6113b9848484843361195c565b50505050565b6113c7610559565b80156113d8576113d5611e69565b50565b6113d5611ee1565b5f54610100900460ff16158080156113fe57505f54600160ff909116105b806114175750303b15801561141757505f5460ff166001145b6114895760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105af565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156114e5575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038316158061150257506001600160a01b038216155b8061151457506001600160a01b038416155b1561154b576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61156973530000000000000000000000000000000000000785611f38565b60fd80546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560fe805492851692909116919091179055600360ff8190556040517fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b916115f2915f9190918252602082015260400190565b60405180910390a180156113b9575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b611669610559565b6001600160a01b0381166116e55760405162461bcd60e51b815260206004820152602360248201527f726f6c6c757020616464726573732063616e6e6f74206265206164647265737360448201527f283029000000000000000000000000000000000000000000000000000000000060648201526084016105af565b60fd80546001600160a01b038381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f5272c8ad4bd643b1130291ea29bebd9b3bc583057a6e4d047eb7077039a956309101610801565b60fe54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290515f926001600160a01b03169163fd0ad31e9160048083019260209291908290030181865afa1580156117b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117db919061285c565b905090565b6117e8610559565b6001600160a01b0381166118645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105af565b6113d581611da8565b60655460ff16156105b85760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064016105af565b606085858585856040516024016118db95949392919061297e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8ef1332e00000000000000000000000000000000000000000000000000000000179052905095945050505050565b611964612050565b60fe5460ca54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290516001600160a01b0393841693909216915f91849163fd0ad31e916004808201926020929091908290030181865afa1580156119d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119f4919061285c565b90505f611a04338a8a858b6118c0565b90505f6001600160a01b038516633e4cbbe6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018a9052604401602060405180830381865afa158015611a78573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a9c919061285c565b9050611aa889826129c0565b341015611af75760405162461bcd60e51b815260206004820152601660248201527f496e73756666696369656e74206d73672e76616c75650000000000000000000060448201526064016105af565b8015611b9f5760cb546040515f916001600160a01b03169083908381818185875af1925050503d805f8114611b47576040519150601f19603f3d011682016040523d82523d5f602084013e611b4c565b606091505b5050905080611b9d5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f206465647563742074686520666565000000000000000060448201526064016105af565b505b6040517f9b1597820000000000000000000000000000000000000000000000000000000081526001600160a01b03861690639b15978290611be89087908b9087906004016129f8565b5f604051808303815f87803b158015611bff575f80fd5b505af1158015611c11573d5f803e3d5ffd5b505050505f8280519060200120905060fb5f8281526020019081526020015f20545f14611c805760405162461bcd60e51b815260206004820152601260248201527f4475706c696361746564206d657373616765000000000000000000000000000060448201526064016105af565b5f81815260fb602052604090204290556001600160a01b038b16336001600160a01b03167f104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e8c878c8e604051611cd99493929190612a1f565b60405180910390a3348290038a8103908b14611d90575f886001600160a01b0316826040515f6040518083038185875af1925050503d805f8114611d38576040519150601f19603f3d011682016040523d82523d5f602084013e611d3d565b606091505b5050905080611d8e5760405162461bcd60e51b815260206004820152601860248201527f4661696c656420746f20726566756e642074686520666565000000000000000060448201526064016105af565b505b50505050505050611da16001609755565b5050505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b306001600160a01b038216036113d55760405162461bcd60e51b815260206004820152601e60248201527f4d657373656e6765723a20466f7262696420746f2063616c6c2073656c66000060448201526064016105af565b611e7161186d565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611ec43390565b6040516001600160a01b03909116815260200160405180910390a1565b611ee96120b0565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33611ec4565b5f54610100900460ff16611fb45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b611fbc612102565b611fc4612186565b611fcc61220a565b60c980547fffffffffffffffffffffffff000000000000000000000000000000000000000090811661dead1790915560ca80546001600160a01b038581169190931617905581161561204c5760cb80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383161790555b5050565b6002609754036120a25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016105af565b6002609755565b6001609755565b60655460ff166105b85760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f742070617573656400000000000000000000000060448201526064016105af565b5f54610100900460ff1661217e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b861228e565b5f54610100900460ff166122025760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b8612313565b5f54610100900460ff166122865760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b86123b9565b5f54610100900460ff1661230a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b6105b833611da8565b5f54610100900460ff1661238f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff166120a95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105af565b5f60208284031215612445575f80fd5b5035919050565b80356001600160a01b0381168114612462575f80fd5b919050565b5f60208284031215612477575f80fd5b6124808261244c565b9392505050565b806104008101831015612498575f80fd5b92915050565b5f805f8061046085870312156124b2575f80fd5b843593506124c38660208701612487565b939693955050505061042082013591610440013590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112612516575f80fd5b813567ffffffffffffffff80821115612531576125316124da565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612577576125776124da565b8160405283815286602085880101111561258f575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f805f805f60e0888a0312156125c4575f80fd5b6125cd8861244c565b96506125db6020890161244c565b95506040880135945060608801359350608088013567ffffffffffffffff811115612604575f80fd5b6126108a828b01612507565b93505060a088013563ffffffff81168114612629575f80fd5b915061263760c0890161244c565b905092959891949750929550565b5f805f805f8060a0878903121561265a575f80fd5b6126638761244c565b955060208701359450604087013567ffffffffffffffff80821115612686575f80fd5b818901915089601f830112612699575f80fd5b8135818111156126a7575f80fd5b8a60208285010111156126b8575f80fd5b602083019650809550505050606087013591506126d76080880161244c565b90509295509295509295565b5f805f805f805f6104c0888a0312156126fa575f80fd5b6127038861244c565b96506127116020890161244c565b95506040880135945060608801359350608088013567ffffffffffffffff81111561273a575f80fd5b6127468a828b01612507565b9350506127568960a08a01612487565b91506104a0880135905092959891949750929550565b5f805f806080858703121561277f575f80fd5b6127888561244c565b935060208501359250604085013567ffffffffffffffff8111156127aa575f80fd5b6127b687828801612507565b949793965093946060013593505050565b80151581146113d5575f80fd5b5f602082840312156127e4575f80fd5b8135612480816127c7565b5f805f60608486031215612801575f80fd5b61280a8461244c565b92506128186020850161244c565b91506128266040850161244c565b90509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6020828403121561286c575f80fd5b5051919050565b5f5b8381101561288d578181015183820152602001612875565b50505f910152565b5f81518084526128ac816020860160208601612873565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201525f61290b6060830184612895565b95945050505050565b84815283602082015263ffffffff83166040820152608060608201525f61293e6080830184612895565b9695505050505050565b5f60208284031215612958575f80fd5b8151612480816127c7565b5f8251612974818460208701612873565b9190910192915050565b5f6001600160a01b03808816835280871660208401525084604083015283606083015260a060808301526129b560a0830184612895565b979650505050505050565b80820180821115612498577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6001600160a01b0384168152826020820152606060408201525f61290b6060830184612895565b848152836020820152826040820152608060608201525f61293e608083018461289556fea164736f6c6343000818000a", } // L1CrossDomainMessengerABI is the input ABI used to generate the binding from. @@ -202,6 +202,37 @@ func (_L1CrossDomainMessenger *L1CrossDomainMessengerTransactorRaw) Transact(opt return _L1CrossDomainMessenger.Contract.contract.Transact(opts, method, params...) } +// IsL1MessageDropped is a free data retrieval call binding the contract method 0x05804dd7. +// +// Solidity: function __isL1MessageDropped(bytes32 ) view returns(bool) +func (_L1CrossDomainMessenger *L1CrossDomainMessengerCaller) IsL1MessageDropped(opts *bind.CallOpts, arg0 [32]byte) (bool, error) { + var out []interface{} + err := _L1CrossDomainMessenger.contract.Call(opts, &out, "__isL1MessageDropped", arg0) + + if err != nil { + return *new(bool), err + } + + out0 := *abi.ConvertType(out[0], new(bool)).(*bool) + + return out0, err + +} + +// IsL1MessageDropped is a free data retrieval call binding the contract method 0x05804dd7. +// +// Solidity: function __isL1MessageDropped(bytes32 ) view returns(bool) +func (_L1CrossDomainMessenger *L1CrossDomainMessengerSession) IsL1MessageDropped(arg0 [32]byte) (bool, error) { + return _L1CrossDomainMessenger.Contract.IsL1MessageDropped(&_L1CrossDomainMessenger.CallOpts, arg0) +} + +// IsL1MessageDropped is a free data retrieval call binding the contract method 0x05804dd7. +// +// Solidity: function __isL1MessageDropped(bytes32 ) view returns(bool) +func (_L1CrossDomainMessenger *L1CrossDomainMessengerCallerSession) IsL1MessageDropped(arg0 [32]byte) (bool, error) { + return _L1CrossDomainMessenger.Contract.IsL1MessageDropped(&_L1CrossDomainMessenger.CallOpts, arg0) +} + // Counterpart is a free data retrieval call binding the contract method 0x797594b0. // // Solidity: function counterpart() view returns(address) @@ -295,37 +326,6 @@ func (_L1CrossDomainMessenger *L1CrossDomainMessengerCallerSession) FinalizedWit return _L1CrossDomainMessenger.Contract.FinalizedWithdrawals(&_L1CrossDomainMessenger.CallOpts, arg0) } -// IsL1MessageDropped is a free data retrieval call binding the contract method 0xb604bf4c. -// -// Solidity: function isL1MessageDropped(bytes32 ) view returns(bool) -func (_L1CrossDomainMessenger *L1CrossDomainMessengerCaller) IsL1MessageDropped(opts *bind.CallOpts, arg0 [32]byte) (bool, error) { - var out []interface{} - err := _L1CrossDomainMessenger.contract.Call(opts, &out, "isL1MessageDropped", arg0) - - if err != nil { - return *new(bool), err - } - - out0 := *abi.ConvertType(out[0], new(bool)).(*bool) - - return out0, err - -} - -// IsL1MessageDropped is a free data retrieval call binding the contract method 0xb604bf4c. -// -// Solidity: function isL1MessageDropped(bytes32 ) view returns(bool) -func (_L1CrossDomainMessenger *L1CrossDomainMessengerSession) IsL1MessageDropped(arg0 [32]byte) (bool, error) { - return _L1CrossDomainMessenger.Contract.IsL1MessageDropped(&_L1CrossDomainMessenger.CallOpts, arg0) -} - -// IsL1MessageDropped is a free data retrieval call binding the contract method 0xb604bf4c. -// -// Solidity: function isL1MessageDropped(bytes32 ) view returns(bool) -func (_L1CrossDomainMessenger *L1CrossDomainMessengerCallerSession) IsL1MessageDropped(arg0 [32]byte) (bool, error) { - return _L1CrossDomainMessenger.Contract.IsL1MessageDropped(&_L1CrossDomainMessenger.CallOpts, arg0) -} - // MaxReplayTimes is a free data retrieval call binding the contract method 0x946130d8. // // Solidity: function maxReplayTimes() view returns(uint256) @@ -681,27 +681,6 @@ func (_L1CrossDomainMessenger *L1CrossDomainMessengerCallerSession) XDomainMessa return _L1CrossDomainMessenger.Contract.XDomainMessageSender(&_L1CrossDomainMessenger.CallOpts) } -// DropMessage is a paid mutator transaction binding the contract method 0x29907acd. -// -// Solidity: function dropMessage(address _from, address _to, uint256 _value, uint256 _messageNonce, bytes _message) returns() -func (_L1CrossDomainMessenger *L1CrossDomainMessengerTransactor) DropMessage(opts *bind.TransactOpts, _from common.Address, _to common.Address, _value *big.Int, _messageNonce *big.Int, _message []byte) (*types.Transaction, error) { - return _L1CrossDomainMessenger.contract.Transact(opts, "dropMessage", _from, _to, _value, _messageNonce, _message) -} - -// DropMessage is a paid mutator transaction binding the contract method 0x29907acd. -// -// Solidity: function dropMessage(address _from, address _to, uint256 _value, uint256 _messageNonce, bytes _message) returns() -func (_L1CrossDomainMessenger *L1CrossDomainMessengerSession) DropMessage(_from common.Address, _to common.Address, _value *big.Int, _messageNonce *big.Int, _message []byte) (*types.Transaction, error) { - return _L1CrossDomainMessenger.Contract.DropMessage(&_L1CrossDomainMessenger.TransactOpts, _from, _to, _value, _messageNonce, _message) -} - -// DropMessage is a paid mutator transaction binding the contract method 0x29907acd. -// -// Solidity: function dropMessage(address _from, address _to, uint256 _value, uint256 _messageNonce, bytes _message) returns() -func (_L1CrossDomainMessenger *L1CrossDomainMessengerTransactorSession) DropMessage(_from common.Address, _to common.Address, _value *big.Int, _messageNonce *big.Int, _message []byte) (*types.Transaction, error) { - return _L1CrossDomainMessenger.Contract.DropMessage(&_L1CrossDomainMessenger.TransactOpts, _from, _to, _value, _messageNonce, _message) -} - // Initialize is a paid mutator transaction binding the contract method 0xc0c53b8b. // // Solidity: function initialize(address _feeVault, address _rollup, address _messageQueue) returns() @@ -954,150 +933,6 @@ func (_L1CrossDomainMessenger *L1CrossDomainMessengerTransactorSession) Receive( return _L1CrossDomainMessenger.Contract.Receive(&_L1CrossDomainMessenger.TransactOpts) } -// L1CrossDomainMessengerDropMessageIterator is returned from FilterDropMessage and is used to iterate over the raw logs and unpacked data for DropMessage events raised by the L1CrossDomainMessenger contract. -type L1CrossDomainMessengerDropMessageIterator struct { - Event *L1CrossDomainMessengerDropMessage // Event containing the contract specifics and raw log - - contract *bind.BoundContract // Generic contract to use for unpacking event data - event string // Event name to use for unpacking event data - - logs chan types.Log // Log channel receiving the found contract events - sub ethereum.Subscription // Subscription for errors, completion and termination - done bool // Whether the subscription completed delivering logs - fail error // Occurred error to stop iteration -} - -// Next advances the iterator to the subsequent event, returning whether there -// are any more events found. In case of a retrieval or parsing error, false is -// returned and Error() can be queried for the exact failure. -func (it *L1CrossDomainMessengerDropMessageIterator) Next() bool { - // If the iterator failed, stop iterating - if it.fail != nil { - return false - } - // If the iterator completed, deliver directly whatever's available - if it.done { - select { - case log := <-it.logs: - it.Event = new(L1CrossDomainMessengerDropMessage) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - default: - return false - } - } - // Iterator still in progress, wait for either a data or an error event - select { - case log := <-it.logs: - it.Event = new(L1CrossDomainMessengerDropMessage) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - case err := <-it.sub.Err(): - it.done = true - it.fail = err - return it.Next() - } -} - -// Error returns any retrieval or parsing error occurred during filtering. -func (it *L1CrossDomainMessengerDropMessageIterator) Error() error { - return it.fail -} - -// Close terminates the iteration process, releasing any pending underlying -// resources. -func (it *L1CrossDomainMessengerDropMessageIterator) Close() error { - it.sub.Unsubscribe() - return nil -} - -// L1CrossDomainMessengerDropMessage represents a DropMessage event raised by the L1CrossDomainMessenger contract. -type L1CrossDomainMessengerDropMessage struct { - Nonce *big.Int - Raw types.Log // Blockchain specific contextual infos -} - -// FilterDropMessage is a free log retrieval operation binding the contract event 0xbd05aabbf548001ebdd6ac80c02f1cfb3b39165f2fae1d420075f22e781ef63b. -// -// Solidity: event DropMessage(uint256 indexed nonce) -func (_L1CrossDomainMessenger *L1CrossDomainMessengerFilterer) FilterDropMessage(opts *bind.FilterOpts, nonce []*big.Int) (*L1CrossDomainMessengerDropMessageIterator, error) { - - var nonceRule []interface{} - for _, nonceItem := range nonce { - nonceRule = append(nonceRule, nonceItem) - } - - logs, sub, err := _L1CrossDomainMessenger.contract.FilterLogs(opts, "DropMessage", nonceRule) - if err != nil { - return nil, err - } - return &L1CrossDomainMessengerDropMessageIterator{contract: _L1CrossDomainMessenger.contract, event: "DropMessage", logs: logs, sub: sub}, nil -} - -// WatchDropMessage is a free log subscription operation binding the contract event 0xbd05aabbf548001ebdd6ac80c02f1cfb3b39165f2fae1d420075f22e781ef63b. -// -// Solidity: event DropMessage(uint256 indexed nonce) -func (_L1CrossDomainMessenger *L1CrossDomainMessengerFilterer) WatchDropMessage(opts *bind.WatchOpts, sink chan<- *L1CrossDomainMessengerDropMessage, nonce []*big.Int) (event.Subscription, error) { - - var nonceRule []interface{} - for _, nonceItem := range nonce { - nonceRule = append(nonceRule, nonceItem) - } - - logs, sub, err := _L1CrossDomainMessenger.contract.WatchLogs(opts, "DropMessage", nonceRule) - if err != nil { - return nil, err - } - return event.NewSubscription(func(quit <-chan struct{}) error { - defer sub.Unsubscribe() - for { - select { - case log := <-logs: - // New log arrived, parse the event and forward to the user - event := new(L1CrossDomainMessengerDropMessage) - if err := _L1CrossDomainMessenger.contract.UnpackLog(event, "DropMessage", log); err != nil { - return err - } - event.Raw = log - - select { - case sink <- event: - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - } - }), nil -} - -// ParseDropMessage is a log parse operation binding the contract event 0xbd05aabbf548001ebdd6ac80c02f1cfb3b39165f2fae1d420075f22e781ef63b. -// -// Solidity: event DropMessage(uint256 indexed nonce) -func (_L1CrossDomainMessenger *L1CrossDomainMessengerFilterer) ParseDropMessage(log types.Log) (*L1CrossDomainMessengerDropMessage, error) { - event := new(L1CrossDomainMessengerDropMessage) - if err := _L1CrossDomainMessenger.contract.UnpackLog(event, "DropMessage", log); err != nil { - return nil, err - } - event.Raw = log - return event, nil -} - // L1CrossDomainMessengerFailedRelayedMessageIterator is returned from FilterFailedRelayedMessage and is used to iterate over the raw logs and unpacked data for FailedRelayedMessage events raised by the L1CrossDomainMessenger contract. type L1CrossDomainMessengerFailedRelayedMessageIterator struct { Event *L1CrossDomainMessengerFailedRelayedMessage // Event containing the contract specifics and raw log diff --git a/bindings/bindings/l1crossdomainmessenger_more.go b/bindings/bindings/l1crossdomainmessenger_more.go index 558c5cf37..2cd2a6c10 100644 --- a/bindings/bindings/l1crossdomainmessenger_more.go +++ b/bindings/bindings/l1crossdomainmessenger_more.go @@ -9,11 +9,11 @@ import ( "morph-l2/bindings/solc" ) -const L1CrossDomainMessengerStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1023_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1022_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_paused\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_bool\"},{\"astId\":1006,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_uint256)1022_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_status\",\"offset\":0,\"slot\":\"151\",\"type\":\"t_uint256\"},{\"astId\":1008,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"152\",\"type\":\"t_array(t_uint256)1022_storage\"},{\"astId\":1009,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"xDomainMessageSender\",\"offset\":0,\"slot\":\"201\",\"type\":\"t_address\"},{\"astId\":1010,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"counterpart\",\"offset\":0,\"slot\":\"202\",\"type\":\"t_address\"},{\"astId\":1011,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"feeVault\",\"offset\":0,\"slot\":\"203\",\"type\":\"t_address\"},{\"astId\":1012,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"204\",\"type\":\"t_array(t_uint256)1021_storage\"},{\"astId\":1013,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"finalizedWithdrawals\",\"offset\":0,\"slot\":\"250\",\"type\":\"t_mapping(t_bytes32,t_bool)\"},{\"astId\":1014,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"messageSendTimestamp\",\"offset\":0,\"slot\":\"251\",\"type\":\"t_mapping(t_bytes32,t_uint256)\"},{\"astId\":1015,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"isL1MessageDropped\",\"offset\":0,\"slot\":\"252\",\"type\":\"t_mapping(t_bytes32,t_bool)\"},{\"astId\":1016,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"rollup\",\"offset\":0,\"slot\":\"253\",\"type\":\"t_address\"},{\"astId\":1017,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"254\",\"type\":\"t_address\"},{\"astId\":1018,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"maxReplayTimes\",\"offset\":0,\"slot\":\"255\",\"type\":\"t_uint256\"},{\"astId\":1019,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"replayStates\",\"offset\":0,\"slot\":\"256\",\"type\":\"t_mapping(t_bytes32,t_struct(ReplayState)1024_storage)\"},{\"astId\":1020,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"prevReplayIndex\",\"offset\":0,\"slot\":\"257\",\"type\":\"t_mapping(t_uint256,t_uint256)\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_uint256)1021_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[46]\",\"numberOfBytes\":\"1472\"},\"t_array(t_uint256)1022_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1023_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_bytes32,t_bool)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e bool)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_bool\"},\"t_mapping(t_bytes32,t_struct(ReplayState)1024_storage)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e struct L1CrossDomainMessenger.ReplayState)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_struct(ReplayState)1024_storage\"},\"t_mapping(t_bytes32,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_uint256\"},\"t_mapping(t_uint256,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_uint256\"},\"t_struct(ReplayState)1024_storage\":{\"encoding\":\"inplace\",\"label\":\"struct L1CrossDomainMessenger.ReplayState\",\"numberOfBytes\":\"32\"},\"t_uint128\":{\"encoding\":\"inplace\",\"label\":\"uint128\",\"numberOfBytes\":\"16\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" +const L1CrossDomainMessengerStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1023_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1022_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_paused\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_bool\"},{\"astId\":1006,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_uint256)1022_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"_status\",\"offset\":0,\"slot\":\"151\",\"type\":\"t_uint256\"},{\"astId\":1008,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"152\",\"type\":\"t_array(t_uint256)1022_storage\"},{\"astId\":1009,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"xDomainMessageSender\",\"offset\":0,\"slot\":\"201\",\"type\":\"t_address\"},{\"astId\":1010,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"counterpart\",\"offset\":0,\"slot\":\"202\",\"type\":\"t_address\"},{\"astId\":1011,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"feeVault\",\"offset\":0,\"slot\":\"203\",\"type\":\"t_address\"},{\"astId\":1012,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"204\",\"type\":\"t_array(t_uint256)1021_storage\"},{\"astId\":1013,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"finalizedWithdrawals\",\"offset\":0,\"slot\":\"250\",\"type\":\"t_mapping(t_bytes32,t_bool)\"},{\"astId\":1014,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"messageSendTimestamp\",\"offset\":0,\"slot\":\"251\",\"type\":\"t_mapping(t_bytes32,t_uint256)\"},{\"astId\":1015,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"__isL1MessageDropped\",\"offset\":0,\"slot\":\"252\",\"type\":\"t_mapping(t_bytes32,t_bool)\"},{\"astId\":1016,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"rollup\",\"offset\":0,\"slot\":\"253\",\"type\":\"t_address\"},{\"astId\":1017,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"254\",\"type\":\"t_address\"},{\"astId\":1018,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"maxReplayTimes\",\"offset\":0,\"slot\":\"255\",\"type\":\"t_uint256\"},{\"astId\":1019,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"replayStates\",\"offset\":0,\"slot\":\"256\",\"type\":\"t_mapping(t_bytes32,t_struct(ReplayState)1024_storage)\"},{\"astId\":1020,\"contract\":\"contracts/l1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger\",\"label\":\"prevReplayIndex\",\"offset\":0,\"slot\":\"257\",\"type\":\"t_mapping(t_uint256,t_uint256)\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_uint256)1021_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[46]\",\"numberOfBytes\":\"1472\"},\"t_array(t_uint256)1022_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1023_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_bytes32,t_bool)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e bool)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_bool\"},\"t_mapping(t_bytes32,t_struct(ReplayState)1024_storage)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e struct L1CrossDomainMessenger.ReplayState)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_struct(ReplayState)1024_storage\"},\"t_mapping(t_bytes32,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(bytes32 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_bytes32\",\"value\":\"t_uint256\"},\"t_mapping(t_uint256,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_uint256\"},\"t_struct(ReplayState)1024_storage\":{\"encoding\":\"inplace\",\"label\":\"struct L1CrossDomainMessenger.ReplayState\",\"numberOfBytes\":\"32\"},\"t_uint128\":{\"encoding\":\"inplace\",\"label\":\"uint128\",\"numberOfBytes\":\"16\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" var L1CrossDomainMessengerStorageLayout = new(solc.StorageLayout) -var L1CrossDomainMessengerDeployedBin = "0x6080604052600436106101a7575f3560e01c806386fa4b73116100e7578063c0c53b8b11610087578063e70fc93b11610062578063e70fc93b14610554578063ea7ec5141461057f578063ecc70428146105ab578063f2fde38b146105bf575f80fd5b8063c0c53b8b146104ea578063cb23bcb514610509578063d87e7df114610535575f80fd5b8063a14238e7116100c2578063a14238e71461045c578063b2267a7b1461048a578063b604bf4c1461049d578063bedb86fb146104cb575f80fd5b806386fa4b73146103f05780638da5cb5b1461040f578063946130d814610439575f80fd5b806355004105116101525780636e296e451161012d5780636e296e4514610305578063715018a614610331578063797594b014610345578063846d4d7a14610371575f80fd5b806355004105146102c85780635c975abb146102db5780635f7b1577146102f2575f80fd5b80633b70c18a116101825780633b70c18a1461022c578063407c19551461027d578063478222c21461029c575f80fd5b806329907acd146101ba5780632a6cccb2146101d9578063340735f7146101f8575f80fd5b366101b6576101b46105de565b005b5f80fd5b3480156101c5575f80fd5b506101b46101d4366004612f3a565b610666565b3480156101e4575f80fd5b506101b46101f3366004612fa7565b610a88565b348015610203575f80fd5b50610217610212366004612fde565b610b83565b60405190151581526020015b60405180910390f35b348015610237575f80fd5b5060fe546102589073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610223565b348015610288575f80fd5b506101b461029736600461301a565b610c4c565b3480156102a7575f80fd5b5060cb546102589073ffffffffffffffffffffffffffffffffffffffff1681565b6101b46102d6366004613031565b610d29565b3480156102e6575f80fd5b5060655460ff16610217565b6101b46103003660046130c8565b61149c565b348015610310575f80fd5b5060c9546102589073ffffffffffffffffffffffffffffffffffffffff1681565b34801561033c575f80fd5b506101b46114f0565b348015610350575f80fd5b5060ca546102589073ffffffffffffffffffffffffffffffffffffffff1681565b34801561037c575f80fd5b506103c761038b36600461301a565b6101006020525f90815260409020546fffffffffffffffffffffffffffffffff8082169170010000000000000000000000000000000090041682565b604080516fffffffffffffffffffffffffffffffff938416815292909116602083015201610223565b3480156103fb575f80fd5b506101b461040a366004613166565b611501565b34801561041a575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610258565b348015610444575f80fd5b5061044e60ff5481565b604051908152602001610223565b348015610467575f80fd5b5061021761047636600461301a565b60fa6020525f908152604090205460ff1681565b6101b46104983660046131ef565b611ac8565b3480156104a8575f80fd5b506102176104b736600461301a565b60fc6020525f908152604090205460ff1681565b3480156104d6575f80fd5b506101b46104e5366004613257565b611ae3565b3480156104f5575f80fd5b506101b4610504366004613272565b611b04565b348015610514575f80fd5b5060fd546102589073ffffffffffffffffffffffffffffffffffffffff1681565b348015610540575f80fd5b506101b461054f366004612fa7565b611dd3565b34801561055f575f80fd5b5061044e61056e36600461301a565b60fb6020525f908152604090205481565b34801561058a575f80fd5b5061044e61059936600461301a565b6101016020525f908152604090205481565b3480156105b6575f80fd5b5061044e611efd565b3480156105ca575f80fd5b506101b46105d9366004612fa7565b611f93565b60335473ffffffffffffffffffffffffffffffffffffffff163314610664576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b565b61066e612047565b60c95473ffffffffffffffffffffffffffffffffffffffff1661dead146106f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e00604482015260640161065b565b60fe5473ffffffffffffffffffffffffffffffffffffffff165f61071887878787876120b4565b90505f818051906020012090505f60fb5f8381526020019081526020015f2054116107c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f7175657565640000000000000000000000000000000000000000000000000000606482015260840161065b565b5f81815260fc602052604090205460ff161561083d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4d65737361676520616c72656164792064726f70706564000000000000000000604482015260640161065b565b5f818152610100602052604081205470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff169081900361087d5750845b6040517f916524610000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff8516906391652461906024015f604051808303815f87803b1580156108e2575f80fd5b505af11580156108f4573d5f803e3d5ffd5b5050505f9182525061010160205260409020548015610934577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0161087d565b5f82815260fc602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555187917fbd05aabbf548001ebdd6ac80c02f1cfb3b39165f2fae1d420075f22e781ef63b91a260c980547fffffffffffffffffffffffff000000000000000000000000000000000000000016736f297c61b5c92ef107ffd30cd56affe5a273e8411790556040517f14298c5100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a16906314298c51908990610a2390899060040161331d565b5f604051808303818588803b158015610a3a575f80fd5b505af1158015610a4c573d5f803e3d5ffd5b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead179055505050505050505050505050565b610a906105de565b73ffffffffffffffffffffffffffffffffffffffff8116610b0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6665655661756c742063616e6e6f742062652061646472657373283029000000604482015260640161065b565b60cb805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f4aadc32827849f797733838c61302f7f56d2b6db28caa175eb3f7f8e5aba25f5905f90a35050565b5f84815b6020811015610c40578085901c600116600103610bed57858160208110610bb057610bb061332f565b602002013582604051602001610bd0929190918252602082015260400190565b604051602081830303815290604052805190602001209150610c38565b81868260208110610c0057610c0061332f565b6020020135604051602001610c1f929190918252602082015260400190565b6040516020818303038152906040528051906020012091505b600101610b87565b50909114949350505050565b610c546105de565b5f8111610ce3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f7265706c61792074696d6573206d75737420626520677265617465722074686160448201527f6e20300000000000000000000000000000000000000000000000000000000000606482015260840161065b565b60ff80549082905560408051828152602081018490527fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91015b60405180910390a15050565b610d31612047565b60c95473ffffffffffffffffffffffffffffffffffffffff1661dead14610db4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e00604482015260640161065b565b60fe5460ca5473ffffffffffffffffffffffffffffffffffffffff91821691165f610de28a8a8a8a8a6120b4565b90505f818051906020012090505f60fb5f8381526020019081526020015f205411610e8f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f7175657565640000000000000000000000000000000000000000000000000000606482015260840161065b565b5f81815260fc602052604090205460ff1615610f07576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4d65737361676520616c72656164792064726f70706564000000000000000000604482015260640161065b565b6040517f3e4cbbe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c8116600483015263ffffffff881660248301525f9190861690633e4cbbe690604401602060405180830381865afa158015610f80573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa4919061335c565b905080341015611010576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f496e73756666696369656e74206d73672e76616c756520666f72206665650000604482015260640161065b565b80156110df5760cb546040515f9173ffffffffffffffffffffffffffffffffffffffff169083908381818185875af1925050503d805f811461106d576040519150601f19603f3d011682016040523d82523d5f602084013e611072565b606091505b50509050806110dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f2064656475637420746865206665650000000000000000604482015260640161065b565b505b5f8573ffffffffffffffffffffffffffffffffffffffff1663fd0ad31e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611129573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061114d919061335c565b6040517f9b15978200000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff871690639b159782906111a69088908c908990600401613373565b5f604051808303815f87803b1580156111bd575f80fd5b505af11580156111cf573d5f803e3d5ffd5b5050505f848152610100602090815260408083208151808301909252546fffffffffffffffffffffffffffffffff8082168352700100000000000000000000000000000000909104169181018290529250900361123f575f8281526101016020526040902060018c019055611270565b80602001516001016fffffffffffffffffffffffffffffffff166101015f8481526020019081526020015f20819055505b6fffffffffffffffffffffffffffffffff808316602083015260ff548251909116106112f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f457863656564206d6178696d756d207265706c61792074696d65730000000000604482015260640161065b565b80516fffffffffffffffffffffffffffffffff600191909101811682525f8581526101006020908152604090912083519190930151821670010000000000000000000000000000000002911617905573ffffffffffffffffffffffffffffffffffffffff8c166113653390565b73ffffffffffffffffffffffffffffffffffffffff168b7fa3a1251805b1fc7915884575b42e1fb862e814f0f5c9d670d08bf84697053d618e858d8f6040516113b194939291906133b6565b60405180910390a43482810390831461148c575f8873ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f811461141a576040519150601f19603f3d011682016040523d82523d5f602084013e61141f565b606091505b505090508061148a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f20726566756e6420746865206665650000000000000000604482015260640161065b565b505b5050505050505050505050505050565b6114a4612047565b6114e8868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506121509050565b505050505050565b6114f86105de565b6106645f61266c565b611509612047565b60c95473ffffffffffffffffffffffffffffffffffffffff1661dead1461158c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e00604482015260640161065b565b60fe5473ffffffffffffffffffffffffffffffffffffffff90811690871603611637576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d657373656e6765723a20466f7262696420746f2063616c6c206d657373616760448201527f6520717565756500000000000000000000000000000000000000000000000000606482015260840161065b565b611640866126e2565b60c95473ffffffffffffffffffffffffffffffffffffffff908116908816036116eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d657373656e6765723a20496e76616c6964206d6573736167652073656e646560448201527f7200000000000000000000000000000000000000000000000000000000000000606482015260840161065b565b5f6116f988888888886120b4565b80516020918201205f81815260fa90925260409091205490915060ff16156117a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4d657373656e6765723a207769746864726177616c2068617320616c7265616460448201527f79206265656e2066696e616c697a656400000000000000000000000000000000606482015260840161065b565b60fd546040517f04d772150000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff909116905f9082906304d7721590602401602060405180830381865afa158015611814573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061183891906133ea565b9050806118c7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d657373656e6765723a207769746864726177616c526f6f74206e6f7420666960448201527f6e616c697a656400000000000000000000000000000000000000000000000000606482015260840161065b565b6118d383868987610b83565b61195f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f4d657373656e6765723a20696e76616c6964207769746864726177616c20696e60448201527f636c7573696f6e2070726f6f6600000000000000000000000000000000000000606482015260840161065b565b5060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8b8116919091179091556040515f918a169089906119ba908990613405565b5f6040518083038185875af1925050503d805f81146119f4576040519150601f19603f3d011682016040523d82523d5f602084013e6119f9565b606091505b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead17905590508015611a91575f83815260fa602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555184917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611abc565b60405183907f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f905f90a25b50505050505050505050565b611ad0612047565b611add8484848433612150565b50505050565b611aeb6105de565b8015611afc57611af9612761565b50565b611af96127e6565b5f54610100900460ff1615808015611b2257505f54600160ff909116105b80611b3b5750303b158015611b3b57505f5460ff166001145b611bc7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161065b565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611c23575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff83161580611c5a575073ffffffffffffffffffffffffffffffffffffffff8216155b80611c79575073ffffffffffffffffffffffffffffffffffffffff8416155b15611cb0576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611cce7353000000000000000000000000000000000000078561283d565b60fd805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560fe805492851692909116919091179055600360ff8190556040517fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91611d64915f9190918252602082015260400190565b60405180910390a18015611add575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b611ddb6105de565b73ffffffffffffffffffffffffffffffffffffffff8116611e7e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f726f6c6c757020616464726573732063616e6e6f74206265206164647265737360448201527f2830290000000000000000000000000000000000000000000000000000000000606482015260840161065b565b60fd805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f5272c8ad4bd643b1130291ea29bebd9b3bc583057a6e4d047eb7077039a956309101610d1d565b60fe54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290515f9273ffffffffffffffffffffffffffffffffffffffff169163fd0ad31e9160048083019260209291908290030181865afa158015611f6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f8e919061335c565b905090565b611f9b6105de565b73ffffffffffffffffffffffffffffffffffffffff811661203e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161065b565b611af98161266c565b60655460ff1615610664576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a2070617573656400000000000000000000000000000000604482015260640161065b565b606085858585856040516024016120cf959493929190613420565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8ef1332e00000000000000000000000000000000000000000000000000000000179052905095945050505050565b612158612989565b60fe5460ca54604080517ffd0ad31e000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff93841693909216915f91849163fd0ad31e916004808201926020929091908290030181865afa1580156121d1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121f5919061335c565b90505f612205338a8a858b6120b4565b90505f73ffffffffffffffffffffffffffffffffffffffff8516633e4cbbe6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602481018a9052604401602060405180830381865afa158015612293573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122b7919061335c565b90506122c3898261346f565b34101561232c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496e73756666696369656e74206d73672e76616c756500000000000000000000604482015260640161065b565b80156123fb5760cb546040515f9173ffffffffffffffffffffffffffffffffffffffff169083908381818185875af1925050503d805f8114612389576040519150601f19603f3d011682016040523d82523d5f602084013e61238e565b606091505b50509050806123f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f2064656475637420746865206665650000000000000000604482015260640161065b565b505b6040517f9b15978200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861690639b159782906124519087908b9087906004016134a7565b5f604051808303815f87803b158015612468575f80fd5b505af115801561247a573d5f803e3d5ffd5b505050505f8280519060200120905060fb5f8281526020019081526020015f20545f14612503576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4475706c696361746564206d6573736167650000000000000000000000000000604482015260640161065b565b5f81815260fb6020526040902042905573ffffffffffffffffffffffffffffffffffffffff8b163373ffffffffffffffffffffffffffffffffffffffff167f104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e8c878c8e60405161257694939291906134db565b60405180910390a3348290038a8103908b14612654575f8873ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f81146125e2576040519150601f19603f3d011682016040523d82523d5f602084013e6125e7565b606091505b5050905080612652576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f20726566756e6420746865206665650000000000000000604482015260640161065b565b505b505050505050506126656001609755565b5050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b3073ffffffffffffffffffffffffffffffffffffffff821603611af9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4d657373656e6765723a20466f7262696420746f2063616c6c2073656c660000604482015260640161065b565b612769612047565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586127bc3390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6127ee612a03565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336127bc565b5f54610100900460ff166128d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161065b565b6128db612a6f565b6128e3612b0d565b6128eb612bab565b60c980547fffffffffffffffffffffffff000000000000000000000000000000000000000090811661dead1790915560ca805473ffffffffffffffffffffffffffffffffffffffff858116919093161790558116156129855760cb80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b5050565b6002609754036129f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161065b565b6002609755565b6001609755565b60655460ff16610664576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f7420706175736564000000000000000000000000604482015260640161065b565b5f54610100900460ff16612b05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161065b565b610664612c49565b5f54610100900460ff16612ba3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161065b565b610664612ce8565b5f54610100900460ff16612c41576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161065b565b610664612da8565b5f54610100900460ff16612cdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161065b565b6106643361266c565b5f54610100900460ff16612d7e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161065b565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff166129fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161065b565b803573ffffffffffffffffffffffffffffffffffffffff81168114612e61575f80fd5b919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112612ea2575f80fd5b813567ffffffffffffffff80821115612ebd57612ebd612e66565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612f0357612f03612e66565b81604052838152866020858801011115612f1b575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f805f60a08688031215612f4e575f80fd5b612f5786612e3e565b9450612f6560208701612e3e565b93506040860135925060608601359150608086013567ffffffffffffffff811115612f8e575f80fd5b612f9a88828901612e93565b9150509295509295909350565b5f60208284031215612fb7575f80fd5b612fc082612e3e565b9392505050565b806104008101831015612fd8575f80fd5b92915050565b5f805f806104608587031215612ff2575f80fd5b843593506130038660208701612fc7565b939693955050505061042082013591610440013590565b5f6020828403121561302a575f80fd5b5035919050565b5f805f805f805f60e0888a031215613047575f80fd5b61305088612e3e565b965061305e60208901612e3e565b95506040880135945060608801359350608088013567ffffffffffffffff811115613087575f80fd5b6130938a828b01612e93565b93505060a088013563ffffffff811681146130ac575f80fd5b91506130ba60c08901612e3e565b905092959891949750929550565b5f805f805f8060a087890312156130dd575f80fd5b6130e687612e3e565b955060208701359450604087013567ffffffffffffffff80821115613109575f80fd5b818901915089601f83011261311c575f80fd5b81358181111561312a575f80fd5b8a602082850101111561313b575f80fd5b6020830196508095505050506060870135915061315a60808801612e3e565b90509295509295509295565b5f805f805f805f6104c0888a03121561317d575f80fd5b61318688612e3e565b965061319460208901612e3e565b95506040880135945060608801359350608088013567ffffffffffffffff8111156131bd575f80fd5b6131c98a828b01612e93565b9350506131d98960a08a01612fc7565b91506104a0880135905092959891949750929550565b5f805f8060808587031215613202575f80fd5b61320b85612e3e565b935060208501359250604085013567ffffffffffffffff81111561322d575f80fd5b61323987828801612e93565b949793965093946060013593505050565b8015158114611af9575f80fd5b5f60208284031215613267575f80fd5b8135612fc08161324a565b5f805f60608486031215613284575f80fd5b61328d84612e3e565b925061329b60208501612e3e565b91506132a960408501612e3e565b90509250925092565b5f5b838110156132cc5781810151838201526020016132b4565b50505f910152565b5f81518084526132eb8160208601602086016132b2565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f612fc060208301846132d4565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6020828403121561336c575f80fd5b5051919050565b73ffffffffffffffffffffffffffffffffffffffff8416815263ffffffff83166020820152606060408201525f6133ad60608301846132d4565b95945050505050565b84815283602082015263ffffffff83166040820152608060608201525f6133e060808301846132d4565b9695505050505050565b5f602082840312156133fa575f80fd5b8151612fc08161324a565b5f82516134168184602087016132b2565b9190910192915050565b5f73ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261346460a08301846132d4565b979650505050505050565b80820180821115612fd8577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f6133ad60608301846132d4565b848152836020820152826040820152608060608201525f6133e060808301846132d456fea164736f6c6343000818000a" +var L1CrossDomainMessengerDeployedBin = "0x60806040526004361061019c575f3560e01c806386fa4b73116100dc578063c0c53b8b11610087578063e70fc93b11610062578063e70fc93b1461052a578063ea7ec51414610555578063ecc7042814610581578063f2fde38b14610595575f80fd5b8063c0c53b8b146104c0578063cb23bcb5146104df578063d87e7df11461050b575f80fd5b8063a14238e7116100b7578063a14238e714610460578063b2267a7b1461048e578063bedb86fb146104a1575f80fd5b806386fa4b73146103f45780638da5cb5b14610413578063946130d81461043d575f80fd5b806355004105116101475780636e296e45116101225780636e296e4514610309578063715018a614610335578063797594b014610349578063846d4d7a14610375575f80fd5b806355004105146102cc5780635c975abb146102df5780635f7b1577146102f6575f80fd5b80633b70c18a116101775780633b70c18a14610230578063407c195514610281578063478222c2146102a0575f80fd5b806305804dd7146101af5780632a6cccb2146101f2578063340735f714610211575f80fd5b366101ab576101a96105b4565b005b5f80fd5b3480156101ba575f80fd5b506101dd6101c93660046129f2565b60fc6020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156101fd575f80fd5b506101a961020c366004612a31565b61063c565b34801561021c575f80fd5b506101dd61022b366004612a68565b610737565b34801561023b575f80fd5b5060fe5461025c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101e9565b34801561028c575f80fd5b506101a961029b3660046129f2565b610800565b3480156102ab575f80fd5b5060cb5461025c9073ffffffffffffffffffffffffffffffffffffffff1681565b6101a96102da366004612b78565b6108dd565b3480156102ea575f80fd5b5060655460ff166101dd565b6101a9610304366004612c0f565b611050565b348015610314575f80fd5b5060c95461025c9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610340575f80fd5b506101a96110a4565b348015610354575f80fd5b5060ca5461025c9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610380575f80fd5b506103cb61038f3660046129f2565b6101006020525f90815260409020546fffffffffffffffffffffffffffffffff8082169170010000000000000000000000000000000090041682565b604080516fffffffffffffffffffffffffffffffff9384168152929091166020830152016101e9565b3480156103ff575f80fd5b506101a961040e366004612cad565b6110b5565b34801561041e575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff1661025c565b348015610448575f80fd5b5061045260ff5481565b6040519081526020016101e9565b34801561046b575f80fd5b506101dd61047a3660046129f2565b60fa6020525f908152604090205460ff1681565b6101a961049c366004612d36565b61167c565b3480156104ac575f80fd5b506101a96104bb366004612d9e565b611697565b3480156104cb575f80fd5b506101a96104da366004612db9565b6116b8565b3480156104ea575f80fd5b5060fd5461025c9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610516575f80fd5b506101a9610525366004612a31565b611987565b348015610535575f80fd5b506104526105443660046129f2565b60fb6020525f908152604090205481565b348015610560575f80fd5b5061045261056f3660046129f2565b6101016020525f908152604090205481565b34801561058c575f80fd5b50610452611ab1565b3480156105a0575f80fd5b506101a96105af366004612a31565b611b47565b60335473ffffffffffffffffffffffffffffffffffffffff16331461063a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b565b6106446105b4565b73ffffffffffffffffffffffffffffffffffffffff81166106c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6665655661756c742063616e6e6f7420626520616464726573732830290000006044820152606401610631565b60cb805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f4aadc32827849f797733838c61302f7f56d2b6db28caa175eb3f7f8e5aba25f5905f90a35050565b5f84815b60208110156107f4578085901c6001166001036107a15785816020811061076457610764612df9565b602002013582604051602001610784929190918252602082015260400190565b6040516020818303038152906040528051906020012091506107ec565b818682602081106107b4576107b4612df9565b60200201356040516020016107d3929190918252602082015260400190565b6040516020818303038152906040528051906020012091505b60010161073b565b50909114949350505050565b6108086105b4565b5f8111610897576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f7265706c61792074696d6573206d75737420626520677265617465722074686160448201527f6e203000000000000000000000000000000000000000000000000000000000006064820152608401610631565b60ff80549082905560408051828152602081018490527fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91015b60405180910390a15050565b6108e5611bfb565b60c95473ffffffffffffffffffffffffffffffffffffffff1661dead14610968576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e006044820152606401610631565b60fe5460ca5473ffffffffffffffffffffffffffffffffffffffff91821691165f6109968a8a8a8a8a611c68565b90505f818051906020012090505f60fb5f8381526020019081526020015f205411610a43576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f50726f7669646564206d65737361676520686173206e6f74206265656e20656e60448201527f71756575656400000000000000000000000000000000000000000000000000006064820152608401610631565b5f81815260fc602052604090205460ff1615610abb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4d65737361676520616c72656164792064726f707065640000000000000000006044820152606401610631565b6040517f3e4cbbe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c8116600483015263ffffffff881660248301525f9190861690633e4cbbe690604401602060405180830381865afa158015610b34573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b589190612e26565b905080341015610bc4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f496e73756666696369656e74206d73672e76616c756520666f722066656500006044820152606401610631565b8015610c935760cb546040515f9173ffffffffffffffffffffffffffffffffffffffff169083908381818185875af1925050503d805f8114610c21576040519150601f19603f3d011682016040523d82523d5f602084013e610c26565b606091505b5050905080610c91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f20646564756374207468652066656500000000000000006044820152606401610631565b505b5f8573ffffffffffffffffffffffffffffffffffffffff1663fd0ad31e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cdd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d019190612e26565b6040517f9b15978200000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff871690639b15978290610d5a9088908c908990600401612ea8565b5f604051808303815f87803b158015610d71575f80fd5b505af1158015610d83573d5f803e3d5ffd5b5050505f848152610100602090815260408083208151808301909252546fffffffffffffffffffffffffffffffff80821683527001000000000000000000000000000000009091041691810182905292509003610df3575f8281526101016020526040902060018c019055610e24565b80602001516001016fffffffffffffffffffffffffffffffff166101015f8481526020019081526020015f20819055505b6fffffffffffffffffffffffffffffffff808316602083015260ff54825190911610610eac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f457863656564206d6178696d756d207265706c61792074696d657300000000006044820152606401610631565b80516fffffffffffffffffffffffffffffffff600191909101811682525f8581526101006020908152604090912083519190930151821670010000000000000000000000000000000002911617905573ffffffffffffffffffffffffffffffffffffffff8c16610f193390565b73ffffffffffffffffffffffffffffffffffffffff168b7fa3a1251805b1fc7915884575b42e1fb862e814f0f5c9d670d08bf84697053d618e858d8f604051610f659493929190612eeb565b60405180910390a434828103908314611040575f8873ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f8114610fce576040519150601f19603f3d011682016040523d82523d5f602084013e610fd3565b606091505b505090508061103e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f20726566756e64207468652066656500000000000000006044820152606401610631565b505b5050505050505050505050505050565b611058611bfb565b61109c868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250889250879150611d049050565b505050505050565b6110ac6105b4565b61063a5f612220565b6110bd611bfb565b60c95473ffffffffffffffffffffffffffffffffffffffff1661dead14611140576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d65737361676520697320616c726561647920696e20657865637574696f6e006044820152606401610631565b60fe5473ffffffffffffffffffffffffffffffffffffffff908116908716036111eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d657373656e6765723a20466f7262696420746f2063616c6c206d657373616760448201527f65207175657565000000000000000000000000000000000000000000000000006064820152608401610631565b6111f486612296565b60c95473ffffffffffffffffffffffffffffffffffffffff9081169088160361129f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d657373656e6765723a20496e76616c6964206d6573736167652073656e646560448201527f72000000000000000000000000000000000000000000000000000000000000006064820152608401610631565b5f6112ad8888888888611c68565b80516020918201205f81815260fa90925260409091205490915060ff1615611357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4d657373656e6765723a207769746864726177616c2068617320616c7265616460448201527f79206265656e2066696e616c697a6564000000000000000000000000000000006064820152608401610631565b60fd546040517f04d772150000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff909116905f9082906304d7721590602401602060405180830381865afa1580156113c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113ec9190612f1f565b90508061147b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d657373656e6765723a207769746864726177616c526f6f74206e6f7420666960448201527f6e616c697a6564000000000000000000000000000000000000000000000000006064820152608401610631565b61148783868987610737565b611513576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f4d657373656e6765723a20696e76616c6964207769746864726177616c20696e60448201527f636c7573696f6e2070726f6f66000000000000000000000000000000000000006064820152608401610631565b5060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8b8116919091179091556040515f918a1690899061156e908990612f3a565b5f6040518083038185875af1925050503d805f81146115a8576040519150601f19603f3d011682016040523d82523d5f602084013e6115ad565b606091505b505060c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead17905590508015611645575f83815260fa602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555184917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611670565b60405183907f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f905f90a25b50505050505050505050565b611684611bfb565b6116918484848433611d04565b50505050565b61169f6105b4565b80156116b0576116ad612315565b50565b6116ad61239a565b5f54610100900460ff16158080156116d657505f54600160ff909116105b806116ef5750303b1580156116ef57505f5460ff166001145b61177b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610631565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156117d7575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8316158061180e575073ffffffffffffffffffffffffffffffffffffffff8216155b8061182d575073ffffffffffffffffffffffffffffffffffffffff8416155b15611864576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611882735300000000000000000000000000000000000007856123f1565b60fd805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560fe805492851692909116919091179055600360ff8190556040517fd700562df02eb66951f6f5275df7ebd7c0ec58b3422915789b3b1877aab2e52b91611918915f9190918252602082015260400190565b60405180910390a18015611691575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b61198f6105b4565b73ffffffffffffffffffffffffffffffffffffffff8116611a32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f726f6c6c757020616464726573732063616e6e6f74206265206164647265737360448201527f28302900000000000000000000000000000000000000000000000000000000006064820152608401610631565b60fd805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f5272c8ad4bd643b1130291ea29bebd9b3bc583057a6e4d047eb7077039a9563091016108d1565b60fe54604080517ffd0ad31e00000000000000000000000000000000000000000000000000000000815290515f9273ffffffffffffffffffffffffffffffffffffffff169163fd0ad31e9160048083019260209291908290030181865afa158015611b1e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b429190612e26565b905090565b611b4f6105b4565b73ffffffffffffffffffffffffffffffffffffffff8116611bf2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610631565b6116ad81612220565b60655460ff161561063a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610631565b60608585858585604051602401611c83959493929190612f55565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8ef1332e00000000000000000000000000000000000000000000000000000000179052905095945050505050565b611d0c61253d565b60fe5460ca54604080517ffd0ad31e000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff93841693909216915f91849163fd0ad31e916004808201926020929091908290030181865afa158015611d85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611da99190612e26565b90505f611db9338a8a858b611c68565b90505f73ffffffffffffffffffffffffffffffffffffffff8516633e4cbbe6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602481018a9052604401602060405180830381865afa158015611e47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e6b9190612e26565b9050611e778982612fa4565b341015611ee0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496e73756666696369656e74206d73672e76616c7565000000000000000000006044820152606401610631565b8015611faf5760cb546040515f9173ffffffffffffffffffffffffffffffffffffffff169083908381818185875af1925050503d805f8114611f3d576040519150601f19603f3d011682016040523d82523d5f602084013e611f42565b606091505b5050905080611fad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f20646564756374207468652066656500000000000000006044820152606401610631565b505b6040517f9b15978200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861690639b159782906120059087908b908790600401612fdc565b5f604051808303815f87803b15801561201c575f80fd5b505af115801561202e573d5f803e3d5ffd5b505050505f8280519060200120905060fb5f8281526020019081526020015f20545f146120b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4475706c696361746564206d65737361676500000000000000000000000000006044820152606401610631565b5f81815260fb6020526040902042905573ffffffffffffffffffffffffffffffffffffffff8b163373ffffffffffffffffffffffffffffffffffffffff167f104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e8c878c8e60405161212a9493929190613010565b60405180910390a3348290038a8103908b14612208575f8873ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f8114612196576040519150601f19603f3d011682016040523d82523d5f602084013e61219b565b606091505b5050905080612206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4661696c656420746f20726566756e64207468652066656500000000000000006044820152606401610631565b505b505050505050506122196001609755565b5050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b3073ffffffffffffffffffffffffffffffffffffffff8216036116ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4d657373656e6765723a20466f7262696420746f2063616c6c2073656c6600006044820152606401610631565b61231d611bfb565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586123703390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6123a26125b7565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612370565b5f54610100900460ff16612487576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610631565b61248f612623565b6124976126c1565b61249f61275f565b60c980547fffffffffffffffffffffffff000000000000000000000000000000000000000090811661dead1790915560ca805473ffffffffffffffffffffffffffffffffffffffff858116919093161790558116156125395760cb80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b5050565b6002609754036125a9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610631565b6002609755565b6001609755565b60655460ff1661063a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610631565b5f54610100900460ff166126b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610631565b61063a6127fd565b5f54610100900460ff16612757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610631565b61063a61289c565b5f54610100900460ff166127f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610631565b61063a61295c565b5f54610100900460ff16612893576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610631565b61063a33612220565b5f54610100900460ff16612932576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610631565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff166125b0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610631565b5f60208284031215612a02575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114612a2c575f80fd5b919050565b5f60208284031215612a41575f80fd5b612a4a82612a09565b9392505050565b806104008101831015612a62575f80fd5b92915050565b5f805f806104608587031215612a7c575f80fd5b84359350612a8d8660208701612a51565b939693955050505061042082013591610440013590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112612ae0575f80fd5b813567ffffffffffffffff80821115612afb57612afb612aa4565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612b4157612b41612aa4565b81604052838152866020858801011115612b59575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f805f805f60e0888a031215612b8e575f80fd5b612b9788612a09565b9650612ba560208901612a09565b95506040880135945060608801359350608088013567ffffffffffffffff811115612bce575f80fd5b612bda8a828b01612ad1565b93505060a088013563ffffffff81168114612bf3575f80fd5b9150612c0160c08901612a09565b905092959891949750929550565b5f805f805f8060a08789031215612c24575f80fd5b612c2d87612a09565b955060208701359450604087013567ffffffffffffffff80821115612c50575f80fd5b818901915089601f830112612c63575f80fd5b813581811115612c71575f80fd5b8a6020828501011115612c82575f80fd5b60208301965080955050505060608701359150612ca160808801612a09565b90509295509295509295565b5f805f805f805f6104c0888a031215612cc4575f80fd5b612ccd88612a09565b9650612cdb60208901612a09565b95506040880135945060608801359350608088013567ffffffffffffffff811115612d04575f80fd5b612d108a828b01612ad1565b935050612d208960a08a01612a51565b91506104a0880135905092959891949750929550565b5f805f8060808587031215612d49575f80fd5b612d5285612a09565b935060208501359250604085013567ffffffffffffffff811115612d74575f80fd5b612d8087828801612ad1565b949793965093946060013593505050565b80151581146116ad575f80fd5b5f60208284031215612dae575f80fd5b8135612a4a81612d91565b5f805f60608486031215612dcb575f80fd5b612dd484612a09565b9250612de260208501612a09565b9150612df060408501612a09565b90509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215612e36575f80fd5b5051919050565b5f5b83811015612e57578181015183820152602001612e3f565b50505f910152565b5f8151808452612e76816020860160208601612e3d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b73ffffffffffffffffffffffffffffffffffffffff8416815263ffffffff83166020820152606060408201525f612ee26060830184612e5f565b95945050505050565b84815283602082015263ffffffff83166040820152608060608201525f612f156080830184612e5f565b9695505050505050565b5f60208284031215612f2f575f80fd5b8151612a4a81612d91565b5f8251612f4b818460208701612e3d565b9190910192915050565b5f73ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152612f9960a0830184612e5f565b979650505050505050565b80820180821115612a62577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f612ee26060830184612e5f565b848152836020820152826040820152608060608201525f612f156080830184612e5f56fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L1CrossDomainMessengerStorageLayoutJSON), L1CrossDomainMessengerStorageLayout); err != nil { diff --git a/bindings/bindings/l1messagequeuewithgaspriceoracle.go b/bindings/bindings/l1messagequeuewithgaspriceoracle.go index 34bda65f5..fca2a8623 100644 --- a/bindings/bindings/l1messagequeuewithgaspriceoracle.go +++ b/bindings/bindings/l1messagequeuewithgaspriceoracle.go @@ -31,8 +31,8 @@ var ( // L1MessageQueueWithGasPriceOracleMetaData contains all meta data concerning the L1MessageQueueWithGasPriceOracle contract. var L1MessageQueueWithGasPriceOracleMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_enforcedTxGateway\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"startIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"}],\"name\":\"DequeueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"DropTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"queueIndex\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"QueueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGateway\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGateway\",\"type\":\"address\"}],\"name\":\"UpdateEnforcedTxGateway\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGasOracle\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGasOracle\",\"type\":\"address\"}],\"name\":\"UpdateGasOracle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldL2BaseFee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"UpdateL2BaseFee\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_oldMaxGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"UpdateMaxGasLimit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldWhitelistChecker\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"UpdateWhitelistChecker\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"ENFORCED_TX_GATEWAAY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ROLLUP_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendEnforcedTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"calculateIntrinsicGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"computeTransactionHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"dropCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"estimateCrossDomainMessageFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"getCrossDomainMessage\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_whitelistChecker\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"isMessageDropped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2BaseFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxGasLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextCrossDomainMessageIndex\",\"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\":\"pendingQueueIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_startIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"popCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"setL2BaseFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"updateMaxGasLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"updateWhitelistChecker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"whitelistChecker\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", - Bin: "0x60e060405234801562000010575f80fd5b506040516200194138038062001941833981016040819052620000339162000185565b6001600160a01b03831615806200005157506001600160a01b038216155b806200006457506001600160a01b038116155b156200008357604051630ecc6fdf60e41b815260040160405180910390fd5b6200008d620000ab565b6001600160a01b0392831660805290821660a0521660c052620001cc565b5f54610100900460ff1615620001175760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000167575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811462000180575f80fd5b919050565b5f805f6060848603121562000198575f80fd5b620001a38462000169565b9250620001b36020850162000169565b9150620001c36040850162000169565b90509250925092565b60805160a05160c05161172e620002135f395f81816103510152610bfb01525f818161024b015261040c01525f81816102c8015281816108eb0152610aa3015261172e5ff3fe608060405234801561000f575f80fd5b506004361061019a575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ac578063e3176bd5146103c6578063f2fde38b146103cf578063fd0ad31e146103e2575f80fd5b8063d5ad4a9714610373578063d99bc80e14610386578063da35a26f14610399575f80fd5b8063bb7862ca116100c3578063bb7862ca14610319578063bdc6f0a014610339578063c27606771461034c575f80fd5b80639b159782146102ea578063a85006ca146102fd578063ae453cd514610306575f80fd5b80635f9cd92e116101485780638da5cb5b116101235780638da5cb5b1461029257806391652461146102b0578063927ede2d146102c3575f80fd5b80635f9cd92e1461022b578063715018a61461023e5780638770d70714610246575f80fd5b80633e6dada1116101785780633e6dada1146101ec5780635ad9945a1461020f5780635e45da2314610222575f80fd5b806329aa604b1461019e5780633c7f5283146101c45780633e4cbbe6146101d9575b5f80fd5b6101b16101ac366004611399565b6103ea565b6040519081526020015b60405180910390f35b6101d76101d23660046113b0565b610409565b005b6101b16101e73660046113f3565b61057a565b6101ff6101fa366004611399565b61062e565b60405190151581526020016101bb565b6101b161021d366004611460565b610650565b6101b160685481565b6101d76102393660046114dc565b610840565b6101d76108d5565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101bb565b60335473ffffffffffffffffffffffffffffffffffffffff1661026d565b6101d76102be366004611399565b6108e8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d76102f83660046114f5565b610aa0565b6101b160675481565b6101b1610314366004611399565b610b82565b606b5461026d9073ffffffffffffffffffffffffffffffffffffffff1681565b6101d761034736600461154b565b610bf8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d7610381366004611399565b610d29565b6101d7610394366004611399565b610d6f565b6101d76103a73660046115be565b610db5565b6101b16103ba3660046115e8565b60100261520801919050565b6101b160655481565b6101d76103dd3660046114dc565b610f6e565b6066546101b1565b606681815481106103f9575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104935760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008111156104e55760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d657373616765730000000000000000000000604482015260640161048a565b81606754146105365760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d61746368000000000000000000000000604482015260640161048a565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa1580156105e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061060c9190611627565b1561061857505f610628565b606554610625908361164d565b90505b92915050565b600881901c5f90815260696020526040812054600160ff84161b161515610628565b5f607e816106fa565b5f8161066757506001919050565b5b811561067d5760089190911c90600101610668565b919050565b8060808310600181146106ba5761069884610659565b60808101835360018301925084816020036008021b83528083019250506106db565b84841516600181146106ce578483536106d3565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061070d60018c83610682565b905061071b60018983610682565b905061072789826106e3565b905061073560018b83610682565b9050600186146001811461079d5760388710600181146107825761075888610659565b8060b701845360018401935088816020036008021b84528084019350508789843791870191610797565b87608001835360018301925087898437918701915b506107ae565b6107ab5f89355f1a84610682565b91505b506107b98c826106e3565b90508181035f8060388310600181146107ec576107d584610659565b60f78101600882021b8517935060010191506107f7565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b61084861100b565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108dd61100b565b6108e65f611072565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109935760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b60675481106109e45760405162461bcd60e51b815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d6573736167650000000000604482015260640161048a565b600881901c5f90815260696020526040902054600160ff83161b1615610a4c5760405162461bcd60e51b815260206004820152601760248201527f6d65737361676520616c72656164792064726f70706564000000000000000000604482015260640161048a565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610b4b5760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161048a565b610b568383836110e8565b3373111100000000000000000000000000000000111101610b7b81865f8787876111e4565b5050505050565b6066545f908210610bd55760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e6765000000000000604482015260640161048a565b60668281548110610be857610be8611689565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610ca35760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f6174657761790000000000000000000000000000000000000000000000000000606482015260840161048a565b73ffffffffffffffffffffffffffffffffffffffff86163b15610d085760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f41000000000000000000000000000000000000000000000000604482015260640161048a565b610d138383836110e8565b610d218686868686866111e4565b505050505050565b610d3161100b565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c5910161056e565b610d7761100b565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead366329910161056e565b5f54610100900460ff1615808015610dd357505f54600160ff909116105b80610dec5750303b158015610dec57505f5460ff166001145b610e5e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161048a565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610eba575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610ec2611295565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015610f69575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610f7661100b565b73ffffffffffffffffffffffffffffffffffffffff8116610fff5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161048a565b61100881611072565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146108e65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161048a565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156111605760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d6974000000000000000000000000000000000000000000000000000000606482015260840161048a565b6010810261520801808410156111de5760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e7369632067617300000000000000000000000000606482015260840161048a565b50505050565b6066545f6111f78883888a898989610650565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611283908a9087908b908b908b906116b6565b60405180910390a35050505050505050565b5f54610100900460ff166113115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e65f54610100900460ff166113905760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161048a565b6108e633611072565b5f602082840312156113a9575f80fd5b5035919050565b5f80604083850312156113c1575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff8116811461067d575f80fd5b5f8060408385031215611404575f80fd5b61140d836113d0565b946020939093013593505050565b5f8083601f84011261142b575f80fd5b50813567ffffffffffffffff811115611442575f80fd5b602083019150836020828501011115611459575f80fd5b9250929050565b5f805f805f805f60c0888a031215611476575f80fd5b61147f886113d0565b9650602088013595506040880135945061149b606089016113d0565b93506080880135925060a088013567ffffffffffffffff8111156114bd575f80fd5b6114c98a828b0161141b565b989b979a50959850939692959293505050565b5f602082840312156114ec575f80fd5b610625826113d0565b5f805f8060608587031215611508575f80fd5b611511856113d0565b935060208501359250604085013567ffffffffffffffff811115611533575f80fd5b61153f8782880161141b565b95989497509550505050565b5f805f805f8060a08789031215611560575f80fd5b611569876113d0565b9550611577602088016113d0565b94506040870135935060608701359250608087013567ffffffffffffffff8111156115a0575f80fd5b6115ac89828a0161141b565b979a9699509497509295939492505050565b5f80604083850312156115cf575f80fd5b823591506115df602084016113d0565b90509250929050565b5f80602083850312156115f9575f80fd5b823567ffffffffffffffff81111561160f575f80fd5b61161b8582860161141b565b90969095509350505050565b5f60208284031215611637575f80fd5b81518015158114611646575f80fd5b9392505050565b8082028115828204841417610628577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_rollup\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_enforcedTxGateway\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"startIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"}],\"name\":\"DequeueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"queueIndex\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"QueueTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGateway\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGateway\",\"type\":\"address\"}],\"name\":\"UpdateEnforcedTxGateway\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldGasOracle\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newGasOracle\",\"type\":\"address\"}],\"name\":\"UpdateGasOracle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldL2BaseFee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"UpdateL2BaseFee\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_oldMaxGasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"UpdateMaxGasLimit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldWhitelistChecker\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"UpdateWhitelistChecker\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"ENFORCED_TX_GATEWAAY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ROLLUP_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"appendEnforcedTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"calculateIntrinsicGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"computeTransactionHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"estimateCrossDomainMessageFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queueIndex\",\"type\":\"uint256\"}],\"name\":\"getCrossDomainMessage\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_whitelistChecker\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2BaseFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxGasLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextCrossDomainMessageIndex\",\"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\":\"pendingQueueIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_startIndex\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"popCrossDomainMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newL2BaseFee\",\"type\":\"uint256\"}],\"name\":\"setL2BaseFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newMaxGasLimit\",\"type\":\"uint256\"}],\"name\":\"updateMaxGasLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newWhitelistChecker\",\"type\":\"address\"}],\"name\":\"updateWhitelistChecker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"whitelistChecker\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", + Bin: "0x60e060405234801562000010575f80fd5b506040516200171438038062001714833981016040819052620000339162000185565b6001600160a01b03831615806200005157506001600160a01b038216155b806200006457506001600160a01b038116155b156200008357604051630ecc6fdf60e41b815260040160405180910390fd5b6200008d620000ab565b6001600160a01b0392831660805290821660a0521660c052620001cc565b5f54610100900460ff1615620001175760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161462000167575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811462000180575f80fd5b919050565b5f805f6060848603121562000198575f80fd5b620001a38462000169565b9250620001b36020850162000169565b9150620001c36040850162000169565b90509250925092565b60805160a05160c0516115086200020c5f395f818161030501526109d501525f818161021201526103c001525f818161027c015261087d01526115085ff3fe608060405234801561000f575f80fd5b5060043610610184575f3560e01c8063a85006ca116100dd578063d99bc80e11610088578063e3176bd511610063578063e3176bd51461037a578063f2fde38b14610383578063fd0ad31e14610396575f80fd5b8063d99bc80e1461033a578063da35a26f1461034d578063e172d3a114610360575f80fd5b8063bdc6f0a0116100b8578063bdc6f0a0146102ed578063c276067714610300578063d5ad4a9714610327575f80fd5b8063a85006ca146102b1578063ae453cd5146102ba578063bb7862ca146102cd575f80fd5b80635f9cd92e1161013d5780638da5cb5b116101185780638da5cb5b14610259578063927ede2d146102775780639b1597821461029e575f80fd5b80635f9cd92e146101f2578063715018a6146102055780638770d7071461020d575f80fd5b80633e4cbbe61161016d5780633e4cbbe6146101c35780635ad9945a146101d65780635e45da23146101e9575f80fd5b806329aa604b146101885780633c7f5283146101ae575b5f80fd5b61019b610196366004611173565b61039e565b6040519081526020015b60405180910390f35b6101c16101bc36600461118a565b6103bd565b005b61019b6101d13660046111cd565b61052e565b61019b6101e436600461123a565b6105e2565b61019b60685481565b6101c16102003660046112b6565b6107d2565b6101c1610867565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a5565b60335473ffffffffffffffffffffffffffffffffffffffff16610234565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b6101c16102ac3660046112cf565b61087a565b61019b60675481565b61019b6102c8366004611173565b61095c565b606b546102349073ffffffffffffffffffffffffffffffffffffffff1681565b6101c16102fb366004611325565b6109d2565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b6101c1610335366004611173565b610b03565b6101c1610348366004611173565b610b49565b6101c161035b366004611398565b610b8f565b61019b61036e3660046113c2565b60100261520801919050565b61019b60655481565b6101c16103913660046112b6565b610d48565b60665461019b565b606681815481106103ad575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104475760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008111156104995760405162461bcd60e51b815260206004820152601560248201527f706f7020746f6f206d616e79206d657373616765730000000000000000000000604482015260640161043e565b81606754146104ea5760405162461bcd60e51b815260206004820152601460248201527f737461727420696e646578206d69736d61746368000000000000000000000000604482015260640161043e565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa15801561059c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c09190611401565b156105cc57505f6105dc565b6065546105d99083611427565b90505b92915050565b5f607e8161068c565b5f816105f957506001919050565b5b811561060f5760089190911c906001016105fa565b919050565b80608083106001811461064c5761062a846105eb565b60808101835360018301925084816020036008021b835280830192505061066d565b848415166001811461066057848353610665565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061069f60018c83610614565b90506106ad60018983610614565b90506106b98982610675565b90506106c760018b83610614565b9050600186146001811461072f576038871060018114610714576106ea886105eb565b8060b701845360018401935088816020036008021b84528084019350508789843791870191610729565b87608001835360018301925087898437918701915b50610740565b61073d5f89355f1a84610614565b91505b5061074b8c82610675565b90508181035f80603883106001811461077e57610767846105eb565b60f78101600882021b851793506001019150610789565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b6107da610de5565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61086f610de5565b6108785f610e4c565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109255760405162461bcd60e51b815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e676572000000000000000000000000000000000000000000606482015260840161043e565b610930838383610ec2565b337311110000000000000000000000000000000011110161095581865f878787610fbe565b5050505050565b6066545f9082106109af5760405162461bcd60e51b815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e6765000000000000604482015260640161043e565b606682815481106109c2576109c2611463565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610a7d5760405162461bcd60e51b815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f6174657761790000000000000000000000000000000000000000000000000000606482015260840161043e565b73ffffffffffffffffffffffffffffffffffffffff86163b15610ae25760405162461bcd60e51b815260206004820152600860248201527f6f6e6c7920454f41000000000000000000000000000000000000000000000000604482015260640161043e565b610aed838383610ec2565b610afb868686868686610fbe565b505050505050565b610b0b610de5565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c59101610522565b610b51610de5565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead3663299101610522565b5f54610100900460ff1615808015610bad57505f54600160ff909116105b80610bc65750303b158015610bc657505f5460ff166001145b610c385760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161043e565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610c94575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610c9c61106f565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015610d43575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610d50610de5565b73ffffffffffffffffffffffffffffffffffffffff8116610dd95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161043e565b610de281610e4c565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146108785760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161043e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606854831115610f3a5760405162461bcd60e51b815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d6974000000000000000000000000000000000000000000000000000000606482015260840161043e565b601081026152080180841015610fb85760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e7369632067617300000000000000000000000000606482015260840161043e565b50505050565b6066545f610fd18883888a8989896105e2565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e9061105d908a9087908b908b908b90611490565b60405180910390a35050505050505050565b5f54610100900460ff166110eb5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161043e565b6108785f54610100900460ff1661116a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161043e565b61087833610e4c565b5f60208284031215611183575f80fd5b5035919050565b5f806040838503121561119b575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff8116811461060f575f80fd5b5f80604083850312156111de575f80fd5b6111e7836111aa565b946020939093013593505050565b5f8083601f840112611205575f80fd5b50813567ffffffffffffffff81111561121c575f80fd5b602083019150836020828501011115611233575f80fd5b9250929050565b5f805f805f805f60c0888a031215611250575f80fd5b611259886111aa565b96506020880135955060408801359450611275606089016111aa565b93506080880135925060a088013567ffffffffffffffff811115611297575f80fd5b6112a38a828b016111f5565b989b979a50959850939692959293505050565b5f602082840312156112c6575f80fd5b6105d9826111aa565b5f805f80606085870312156112e2575f80fd5b6112eb856111aa565b935060208501359250604085013567ffffffffffffffff81111561130d575f80fd5b611319878288016111f5565b95989497509550505050565b5f805f805f8060a0878903121561133a575f80fd5b611343876111aa565b9550611351602088016111aa565b94506040870135935060608701359250608087013567ffffffffffffffff81111561137a575f80fd5b61138689828a016111f5565b979a9699509497509295939492505050565b5f80604083850312156113a9575f80fd5b823591506113b9602084016111aa565b90509250929050565b5f80602083850312156113d3575f80fd5b823567ffffffffffffffff8111156113e9575f80fd5b6113f5858286016111f5565b90969095509350505050565b5f60208284031215611411575f80fd5b81518015158114611420575f80fd5b9392505050565b80820281158282048414176105dc577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a", } // L1MessageQueueWithGasPriceOracleABI is the input ABI used to generate the binding from. @@ -419,37 +419,6 @@ func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleCallerS return _L1MessageQueueWithGasPriceOracle.Contract.GetCrossDomainMessage(&_L1MessageQueueWithGasPriceOracle.CallOpts, _queueIndex) } -// IsMessageDropped is a free data retrieval call binding the contract method 0x3e6dada1. -// -// Solidity: function isMessageDropped(uint256 _queueIndex) view returns(bool) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleCaller) IsMessageDropped(opts *bind.CallOpts, _queueIndex *big.Int) (bool, error) { - var out []interface{} - err := _L1MessageQueueWithGasPriceOracle.contract.Call(opts, &out, "isMessageDropped", _queueIndex) - - if err != nil { - return *new(bool), err - } - - out0 := *abi.ConvertType(out[0], new(bool)).(*bool) - - return out0, err - -} - -// IsMessageDropped is a free data retrieval call binding the contract method 0x3e6dada1. -// -// Solidity: function isMessageDropped(uint256 _queueIndex) view returns(bool) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleSession) IsMessageDropped(_queueIndex *big.Int) (bool, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.IsMessageDropped(&_L1MessageQueueWithGasPriceOracle.CallOpts, _queueIndex) -} - -// IsMessageDropped is a free data retrieval call binding the contract method 0x3e6dada1. -// -// Solidity: function isMessageDropped(uint256 _queueIndex) view returns(bool) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleCallerSession) IsMessageDropped(_queueIndex *big.Int) (bool, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.IsMessageDropped(&_L1MessageQueueWithGasPriceOracle.CallOpts, _queueIndex) -} - // L2BaseFee is a free data retrieval call binding the contract method 0xe3176bd5. // // Solidity: function l2BaseFee() view returns(uint256) @@ -709,27 +678,6 @@ func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransac return _L1MessageQueueWithGasPriceOracle.Contract.AppendEnforcedTransaction(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _sender, _target, _value, _gasLimit, _data) } -// DropCrossDomainMessage is a paid mutator transaction binding the contract method 0x91652461. -// -// Solidity: function dropCrossDomainMessage(uint256 _index) returns() -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransactor) DropCrossDomainMessage(opts *bind.TransactOpts, _index *big.Int) (*types.Transaction, error) { - return _L1MessageQueueWithGasPriceOracle.contract.Transact(opts, "dropCrossDomainMessage", _index) -} - -// DropCrossDomainMessage is a paid mutator transaction binding the contract method 0x91652461. -// -// Solidity: function dropCrossDomainMessage(uint256 _index) returns() -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleSession) DropCrossDomainMessage(_index *big.Int) (*types.Transaction, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.DropCrossDomainMessage(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _index) -} - -// DropCrossDomainMessage is a paid mutator transaction binding the contract method 0x91652461. -// -// Solidity: function dropCrossDomainMessage(uint256 _index) returns() -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleTransactorSession) DropCrossDomainMessage(_index *big.Int) (*types.Transaction, error) { - return _L1MessageQueueWithGasPriceOracle.Contract.DropCrossDomainMessage(&_L1MessageQueueWithGasPriceOracle.TransactOpts, _index) -} - // Initialize is a paid mutator transaction binding the contract method 0xda35a26f. // // Solidity: function initialize(uint256 _maxGasLimit, address _whitelistChecker) returns() @@ -1012,140 +960,6 @@ func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFiltere return event, nil } -// L1MessageQueueWithGasPriceOracleDropTransactionIterator is returned from FilterDropTransaction and is used to iterate over the raw logs and unpacked data for DropTransaction events raised by the L1MessageQueueWithGasPriceOracle contract. -type L1MessageQueueWithGasPriceOracleDropTransactionIterator struct { - Event *L1MessageQueueWithGasPriceOracleDropTransaction // Event containing the contract specifics and raw log - - contract *bind.BoundContract // Generic contract to use for unpacking event data - event string // Event name to use for unpacking event data - - logs chan types.Log // Log channel receiving the found contract events - sub ethereum.Subscription // Subscription for errors, completion and termination - done bool // Whether the subscription completed delivering logs - fail error // Occurred error to stop iteration -} - -// Next advances the iterator to the subsequent event, returning whether there -// are any more events found. In case of a retrieval or parsing error, false is -// returned and Error() can be queried for the exact failure. -func (it *L1MessageQueueWithGasPriceOracleDropTransactionIterator) Next() bool { - // If the iterator failed, stop iterating - if it.fail != nil { - return false - } - // If the iterator completed, deliver directly whatever's available - if it.done { - select { - case log := <-it.logs: - it.Event = new(L1MessageQueueWithGasPriceOracleDropTransaction) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - default: - return false - } - } - // Iterator still in progress, wait for either a data or an error event - select { - case log := <-it.logs: - it.Event = new(L1MessageQueueWithGasPriceOracleDropTransaction) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - case err := <-it.sub.Err(): - it.done = true - it.fail = err - return it.Next() - } -} - -// Error returns any retrieval or parsing error occurred during filtering. -func (it *L1MessageQueueWithGasPriceOracleDropTransactionIterator) Error() error { - return it.fail -} - -// Close terminates the iteration process, releasing any pending underlying -// resources. -func (it *L1MessageQueueWithGasPriceOracleDropTransactionIterator) Close() error { - it.sub.Unsubscribe() - return nil -} - -// L1MessageQueueWithGasPriceOracleDropTransaction represents a DropTransaction event raised by the L1MessageQueueWithGasPriceOracle contract. -type L1MessageQueueWithGasPriceOracleDropTransaction struct { - Index *big.Int - Raw types.Log // Blockchain specific contextual infos -} - -// FilterDropTransaction is a free log retrieval operation binding the contract event 0x43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf. -// -// Solidity: event DropTransaction(uint256 index) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFilterer) FilterDropTransaction(opts *bind.FilterOpts) (*L1MessageQueueWithGasPriceOracleDropTransactionIterator, error) { - - logs, sub, err := _L1MessageQueueWithGasPriceOracle.contract.FilterLogs(opts, "DropTransaction") - if err != nil { - return nil, err - } - return &L1MessageQueueWithGasPriceOracleDropTransactionIterator{contract: _L1MessageQueueWithGasPriceOracle.contract, event: "DropTransaction", logs: logs, sub: sub}, nil -} - -// WatchDropTransaction is a free log subscription operation binding the contract event 0x43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf. -// -// Solidity: event DropTransaction(uint256 index) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFilterer) WatchDropTransaction(opts *bind.WatchOpts, sink chan<- *L1MessageQueueWithGasPriceOracleDropTransaction) (event.Subscription, error) { - - logs, sub, err := _L1MessageQueueWithGasPriceOracle.contract.WatchLogs(opts, "DropTransaction") - if err != nil { - return nil, err - } - return event.NewSubscription(func(quit <-chan struct{}) error { - defer sub.Unsubscribe() - for { - select { - case log := <-logs: - // New log arrived, parse the event and forward to the user - event := new(L1MessageQueueWithGasPriceOracleDropTransaction) - if err := _L1MessageQueueWithGasPriceOracle.contract.UnpackLog(event, "DropTransaction", log); err != nil { - return err - } - event.Raw = log - - select { - case sink <- event: - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - } - }), nil -} - -// ParseDropTransaction is a log parse operation binding the contract event 0x43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf. -// -// Solidity: event DropTransaction(uint256 index) -func (_L1MessageQueueWithGasPriceOracle *L1MessageQueueWithGasPriceOracleFilterer) ParseDropTransaction(log types.Log) (*L1MessageQueueWithGasPriceOracleDropTransaction, error) { - event := new(L1MessageQueueWithGasPriceOracleDropTransaction) - if err := _L1MessageQueueWithGasPriceOracle.contract.UnpackLog(event, "DropTransaction", log); err != nil { - return nil, err - } - event.Raw = log - return event, nil -} - // L1MessageQueueWithGasPriceOracleInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the L1MessageQueueWithGasPriceOracle contract. type L1MessageQueueWithGasPriceOracleInitializedIterator struct { Event *L1MessageQueueWithGasPriceOracleInitialized // Event containing the contract specifics and raw log diff --git a/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go b/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go index a58058b80..95974e781 100644 --- a/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go +++ b/bindings/bindings/l1messagequeuewithgaspriceoracle_more.go @@ -9,11 +9,11 @@ import ( "morph-l2/bindings/solc" ) -const L1MessageQueueWithGasPriceOracleStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1013_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1012_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"l2BaseFee\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_uint256\"},{\"astId\":1006,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_bytes32)dyn_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"pendingQueueIndex\",\"offset\":0,\"slot\":\"103\",\"type\":\"t_uint256\"},{\"astId\":1008,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"maxGasLimit\",\"offset\":0,\"slot\":\"104\",\"type\":\"t_uint256\"},{\"astId\":1009,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"droppedMessageBitmap\",\"offset\":0,\"slot\":\"105\",\"type\":\"t_struct(BitMap)1014_storage\"},{\"astId\":1010,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__skippedMessageBitmap\",\"offset\":0,\"slot\":\"106\",\"type\":\"t_mapping(t_uint256,t_uint256)\"},{\"astId\":1011,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"whitelistChecker\",\"offset\":0,\"slot\":\"107\",\"type\":\"t_address\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_bytes32)dyn_storage\":{\"encoding\":\"dynamic_array\",\"label\":\"bytes32[]\",\"numberOfBytes\":\"32\"},\"t_array(t_uint256)1012_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1013_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_uint256,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_uint256\"},\"t_struct(BitMap)1014_storage\":{\"encoding\":\"inplace\",\"label\":\"struct BitMapsUpgradeable.BitMap\",\"numberOfBytes\":\"32\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" +const L1MessageQueueWithGasPriceOracleStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initialized\",\"offset\":0,\"slot\":\"0\",\"type\":\"t_uint8\"},{\"astId\":1001,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_initializing\",\"offset\":1,\"slot\":\"0\",\"type\":\"t_bool\"},{\"astId\":1002,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"1\",\"type\":\"t_array(t_uint256)1013_storage\"},{\"astId\":1003,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"_owner\",\"offset\":0,\"slot\":\"51\",\"type\":\"t_address\"},{\"astId\":1004,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__gap\",\"offset\":0,\"slot\":\"52\",\"type\":\"t_array(t_uint256)1012_storage\"},{\"astId\":1005,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"l2BaseFee\",\"offset\":0,\"slot\":\"101\",\"type\":\"t_uint256\"},{\"astId\":1006,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"messageQueue\",\"offset\":0,\"slot\":\"102\",\"type\":\"t_array(t_bytes32)dyn_storage\"},{\"astId\":1007,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"pendingQueueIndex\",\"offset\":0,\"slot\":\"103\",\"type\":\"t_uint256\"},{\"astId\":1008,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"maxGasLimit\",\"offset\":0,\"slot\":\"104\",\"type\":\"t_uint256\"},{\"astId\":1009,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__droppedMessageBitmap\",\"offset\":0,\"slot\":\"105\",\"type\":\"t_struct(BitMap)1014_storage\"},{\"astId\":1010,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"__skippedMessageBitmap\",\"offset\":0,\"slot\":\"106\",\"type\":\"t_mapping(t_uint256,t_uint256)\"},{\"astId\":1011,\"contract\":\"contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol:L1MessageQueueWithGasPriceOracle\",\"label\":\"whitelistChecker\",\"offset\":0,\"slot\":\"107\",\"type\":\"t_address\"}],\"types\":{\"t_address\":{\"encoding\":\"inplace\",\"label\":\"address\",\"numberOfBytes\":\"20\"},\"t_array(t_bytes32)dyn_storage\":{\"encoding\":\"dynamic_array\",\"label\":\"bytes32[]\",\"numberOfBytes\":\"32\"},\"t_array(t_uint256)1012_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[49]\",\"numberOfBytes\":\"1568\"},\"t_array(t_uint256)1013_storage\":{\"encoding\":\"inplace\",\"label\":\"uint256[50]\",\"numberOfBytes\":\"1600\"},\"t_bool\":{\"encoding\":\"inplace\",\"label\":\"bool\",\"numberOfBytes\":\"1\"},\"t_bytes32\":{\"encoding\":\"inplace\",\"label\":\"bytes32\",\"numberOfBytes\":\"32\"},\"t_mapping(t_uint256,t_uint256)\":{\"encoding\":\"mapping\",\"label\":\"mapping(uint256 =\u003e uint256)\",\"numberOfBytes\":\"32\",\"key\":\"t_uint256\",\"value\":\"t_uint256\"},\"t_struct(BitMap)1014_storage\":{\"encoding\":\"inplace\",\"label\":\"struct BitMapsUpgradeable.BitMap\",\"numberOfBytes\":\"32\"},\"t_uint256\":{\"encoding\":\"inplace\",\"label\":\"uint256\",\"numberOfBytes\":\"32\"},\"t_uint8\":{\"encoding\":\"inplace\",\"label\":\"uint8\",\"numberOfBytes\":\"1\"}}}" var L1MessageQueueWithGasPriceOracleStorageLayout = new(solc.StorageLayout) -var L1MessageQueueWithGasPriceOracleDeployedBin = "0x608060405234801561000f575f80fd5b506004361061019a575f3560e01c80639b159782116100e8578063d5ad4a9711610093578063e172d3a11161006e578063e172d3a1146103ac578063e3176bd5146103c6578063f2fde38b146103cf578063fd0ad31e146103e2575f80fd5b8063d5ad4a9714610373578063d99bc80e14610386578063da35a26f14610399575f80fd5b8063bb7862ca116100c3578063bb7862ca14610319578063bdc6f0a014610339578063c27606771461034c575f80fd5b80639b159782146102ea578063a85006ca146102fd578063ae453cd514610306575f80fd5b80635f9cd92e116101485780638da5cb5b116101235780638da5cb5b1461029257806391652461146102b0578063927ede2d146102c3575f80fd5b80635f9cd92e1461022b578063715018a61461023e5780638770d70714610246575f80fd5b80633e6dada1116101785780633e6dada1146101ec5780635ad9945a1461020f5780635e45da2314610222575f80fd5b806329aa604b1461019e5780633c7f5283146101c45780633e4cbbe6146101d9575b5f80fd5b6101b16101ac366004611553565b6103ea565b6040519081526020015b60405180910390f35b6101d76101d236600461156a565b610409565b005b6101b16101e73660046115ad565b6105c8565b6101ff6101fa366004611553565b61067c565b60405190151581526020016101bb565b6101b161021d36600461161a565b61069e565b6101b160685481565b6101d7610239366004611696565b61088e565b6101d7610923565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101bb565b60335473ffffffffffffffffffffffffffffffffffffffff1661026d565b6101d76102be366004611553565b610936565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d76102f83660046116af565b610b3c565b6101b160675481565b6101b1610314366004611553565b610c38565b606b5461026d9073ffffffffffffffffffffffffffffffffffffffff1681565b6101d7610347366004611705565b610cc8565b61026d7f000000000000000000000000000000000000000000000000000000000000000081565b6101d7610381366004611553565b610e2d565b6101d7610394366004611553565b610e73565b6101d76103a7366004611778565b610eb9565b6101b16103ba3660046117a2565b60100261520801919050565b6101b160655481565b6101d76103dd366004611696565b61108c565b6066546101b1565b606681815481106103f9575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146104ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b610100811115610519576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f706f7020746f6f206d616e79206d65737361676573000000000000000000000060448201526064016104a4565b8160675414610584576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f737461727420696e646578206d69736d6174636800000000000000000000000060448201526064016104a4565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa158015610636573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061065a91906117e1565b1561066657505f610676565b6065546106739083611807565b90505b92915050565b600881901c5f90815260696020526040812054600160ff84161b161515610676565b5f607e81610748565b5f816106b557506001919050565b5b81156106cb5760089190911c906001016106b6565b919050565b806080831060018114610708576106e6846106a7565b60808101835360018301925084816020036008021b8352808301925050610729565b848415166001811461071c57848353610721565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b6005604051018061075b60018c836106d0565b9050610769600189836106d0565b90506107758982610731565b905061078360018b836106d0565b905060018614600181146107eb5760388710600181146107d0576107a6886106a7565b8060b701845360018401935088816020036008021b845280840193505087898437918701916107e5565b87608001835360018301925087898437918701915b506107fc565b6107f95f89355f1a846106d0565b91505b506108078c82610731565b90508181035f80603883106001811461083a57610823846106a7565b60f78101600882021b851793506001019150610845565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b610896611143565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61092b611143565b6109345f6111c4565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146109fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016104a4565b6067548110610a66576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f63616e6e6f742064726f702070656e64696e67206d657373616765000000000060448201526064016104a4565b600881901c5f90815260696020526040902054600160ff83161b1615610ae8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6d65737361676520616c72656164792064726f7070656400000000000000000060448201526064016104a4565b600881901c5f9081526069602052604090208054600160ff84161b1790556040518181527f43a375005206d20a83abc71722cba68c24434a8dc1f583775be7c3fde0396cbf9060200160405180910390a150565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610c01576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e67657200000000000000000000000000000000000000000060648201526084016104a4565b610c0c83838361123a565b3373111100000000000000000000000000000000111101610c3181865f87878761136a565b5050505050565b6066545f908210610ca5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e676500000000000060448201526064016104a4565b60668281548110610cb857610cb8611843565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610d8d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f617465776179000000000000000000000000000000000000000000000000000060648201526084016104a4565b73ffffffffffffffffffffffffffffffffffffffff86163b15610e0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f6f6e6c7920454f4100000000000000000000000000000000000000000000000060448201526064016104a4565b610e1783838361123a565b610e2586868686868661136a565b505050505050565b610e35611143565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c591016105bc565b610e7b611143565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead36632991016105bc565b5f54610100900460ff1615808015610ed757505f54600160ff909116105b80610ef05750303b158015610ef057505f5460ff166001145b610f7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016104a4565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fd8575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610fe061141b565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015611087575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b611094611143565b73ffffffffffffffffffffffffffffffffffffffff8116611137576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016104a4565b611140816111c4565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610934576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016104a4565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6068548311156112cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d697400000000000000000000000000000000000000000000000000000060648201526084016104a4565b601081026152080180841015611364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e736963206761730000000000000000000000000060648201526084016104a4565b50505050565b6066545f61137d8883888a89898961069e565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611409908a9087908b908b908b90611870565b60405180910390a35050505050505050565b5f54610100900460ff166114b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016104a4565b6109345f54610100900460ff1661154a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016104a4565b610934336111c4565b5f60208284031215611563575f80fd5b5035919050565b5f806040838503121561157b575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff811681146106cb575f80fd5b5f80604083850312156115be575f80fd5b6115c78361158a565b946020939093013593505050565b5f8083601f8401126115e5575f80fd5b50813567ffffffffffffffff8111156115fc575f80fd5b602083019150836020828501011115611613575f80fd5b9250929050565b5f805f805f805f60c0888a031215611630575f80fd5b6116398861158a565b965060208801359550604088013594506116556060890161158a565b93506080880135925060a088013567ffffffffffffffff811115611677575f80fd5b6116838a828b016115d5565b989b979a50959850939692959293505050565b5f602082840312156116a6575f80fd5b6106738261158a565b5f805f80606085870312156116c2575f80fd5b6116cb8561158a565b935060208501359250604085013567ffffffffffffffff8111156116ed575f80fd5b6116f9878288016115d5565b95989497509550505050565b5f805f805f8060a0878903121561171a575f80fd5b6117238761158a565b95506117316020880161158a565b94506040870135935060608701359250608087013567ffffffffffffffff81111561175a575f80fd5b61176689828a016115d5565b979a9699509497509295939492505050565b5f8060408385031215611789575f80fd5b823591506117996020840161158a565b90509250929050565b5f80602083850312156117b3575f80fd5b823567ffffffffffffffff8111156117c9575f80fd5b6117d5858286016115d5565b90969095509350505050565b5f602082840312156117f1575f80fd5b81518015158114611800575f80fd5b9392505050565b8082028115828204841417610676577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a" +var L1MessageQueueWithGasPriceOracleDeployedBin = "0x608060405234801561000f575f80fd5b5060043610610184575f3560e01c8063a85006ca116100dd578063d99bc80e11610088578063e3176bd511610063578063e3176bd51461037a578063f2fde38b14610383578063fd0ad31e14610396575f80fd5b8063d99bc80e1461033a578063da35a26f1461034d578063e172d3a114610360575f80fd5b8063bdc6f0a0116100b8578063bdc6f0a0146102ed578063c276067714610300578063d5ad4a9714610327575f80fd5b8063a85006ca146102b1578063ae453cd5146102ba578063bb7862ca146102cd575f80fd5b80635f9cd92e1161013d5780638da5cb5b116101185780638da5cb5b14610259578063927ede2d146102775780639b1597821461029e575f80fd5b80635f9cd92e146101f2578063715018a6146102055780638770d7071461020d575f80fd5b80633e4cbbe61161016d5780633e4cbbe6146101c35780635ad9945a146101d65780635e45da23146101e9575f80fd5b806329aa604b146101885780633c7f5283146101ae575b5f80fd5b61019b6101963660046112df565b61039e565b6040519081526020015b60405180910390f35b6101c16101bc3660046112f6565b6103bd565b005b61019b6101d1366004611339565b61057c565b61019b6101e43660046113a6565b610630565b61019b60685481565b6101c1610200366004611422565b610820565b6101c16108b5565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a5565b60335473ffffffffffffffffffffffffffffffffffffffff16610234565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b6101c16102ac36600461143b565b6108c8565b61019b60675481565b61019b6102c83660046112df565b6109c4565b606b546102349073ffffffffffffffffffffffffffffffffffffffff1681565b6101c16102fb366004611491565b610a54565b6102347f000000000000000000000000000000000000000000000000000000000000000081565b6101c16103353660046112df565b610bb9565b6101c16103483660046112df565b610bff565b6101c161035b366004611504565b610c45565b61019b61036e36600461152e565b60100261520801919050565b61019b60655481565b6101c1610391366004611422565b610e18565b60665461019b565b606681815481106103ad575f80fd5b5f91825260209091200154905081565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610461576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f6e6c792063616c6c61626c652062792074686520726f6c6c7570000000000060448201526064015b60405180910390fd5b6101008111156104cd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f706f7020746f6f206d616e79206d6573736167657300000000000000000000006044820152606401610458565b8160675414610538576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f737461727420696e646578206d69736d617463680000000000000000000000006044820152606401610458565b80820160675560408051838152602081018390527f3d48b97f20730c965868963266b0d25d8abe3f06babb60fc3b2b80c9e8907f2691015b60405180910390a15050565b606b546040517fefc7840100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92169063efc7840190602401602060405180830381865afa1580156105ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061060e919061156d565b1561061a57505f61062a565b6065546106279083611593565b90505b92915050565b5f607e816106da565b5f8161064757506001919050565b5b811561065d5760089190911c90600101610648565b919050565b80608083106001811461069a5761067884610639565b60808101835360018301925084816020036008021b83528083019250506106bb565b84841516600181146106ae578483536106b3565b608083535b506001820191505b509392505050565b806094815360609290921b60018301525060150190565b600560405101806106ed60018c83610662565b90506106fb60018983610662565b905061070789826106c3565b905061071560018b83610662565b9050600186146001811461077d5760388710600181146107625761073888610639565b8060b701845360018401935088816020036008021b84528084019350508789843791870191610777565b87608001835360018301925087898437918701915b5061078e565b61078b5f89355f1a84610662565b91505b506107998c826106c3565b90508181035f8060388310600181146107cc576107b584610639565b60f78101600882021b8517935060010191506107d7565b8360c0019250600191505b5086816008021b821791506001810190508060080292508451831c8284610100031b17915080850394505080845250508181038220925050508092505050979650505050505050565b610828610ecf565b606b5460405173ffffffffffffffffffffffffffffffffffffffff8084169216907ff91b2a410a89d46f14ee984a57e6d7892c217f116905371180998e20cef237e5905f90a3606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6108bd610ecf565b6108c65f610f50565b565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff161461098d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c792063616c6c61626c6520627920746865204c3143726f7373446f6d6160448201527f696e4d657373656e6765720000000000000000000000000000000000000000006064820152608401610458565b610998838383610fc6565b33731111000000000000000000000000000000001111016109bd81865f8787876110f6565b5050505050565b6066545f908210610a31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6d65737361676520696e646578206f7574206f662072616e67650000000000006044820152606401610458565b60668281548110610a4457610a446115cf565b905f5260205f2001549050919050565b337f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1614610b19576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f6e6c792063616c6c61626c652062792074686520456e666f7263656454784760448201527f61746577617900000000000000000000000000000000000000000000000000006064820152608401610458565b73ffffffffffffffffffffffffffffffffffffffff86163b15610b98576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f6f6e6c7920454f410000000000000000000000000000000000000000000000006044820152606401610458565b610ba3838383610fc6565b610bb18686868686866110f6565b505050505050565b610bc1610ecf565b606880549082905560408051828152602081018490527fa030881e03ff723954dd0d35500564afab9603555d09d4456a32436f2b2373c59101610570565b610c07610ecf565b606580549082905560408051828152602081018490527fc5271ba80b67178cc31f04a3755325121400925878dc608432b6fcaead3663299101610570565b5f54610100900460ff1615808015610c6357505f54600160ff909116105b80610c7c5750303b158015610c7c57505f5460ff166001145b610d08576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610458565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610d64575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610d6c6111a7565b6068839055606b80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015610e13575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610e20610ecf565b73ffffffffffffffffffffffffffffffffffffffff8116610ec3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610458565b610ecc81610f50565b50565b60335473ffffffffffffffffffffffffffffffffffffffff1633146108c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610458565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606854831115611058576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f476173206c696d6974206d757374206e6f7420657863656564206d617847617360448201527f4c696d69740000000000000000000000000000000000000000000000000000006064820152608401610458565b6010810261520801808410156110f0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f496e73756666696369656e7420676173206c696d69742c206d7573742062652060448201527f61626f766520696e7472696e73696320676173000000000000000000000000006064820152608401610458565b50505050565b6066545f6111098883888a898989610630565b606680546001810182555f919091527f46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e943540181905560405190915073ffffffffffffffffffffffffffffffffffffffff80891691908a16907f69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e90611195908a9087908b908b908b906115fc565b60405180910390a35050505050505050565b5f54610100900460ff1661123d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610458565b6108c65f54610100900460ff166112d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610458565b6108c633610f50565b5f602082840312156112ef575f80fd5b5035919050565b5f8060408385031215611307575f80fd5b50508035926020909101359150565b803573ffffffffffffffffffffffffffffffffffffffff8116811461065d575f80fd5b5f806040838503121561134a575f80fd5b61135383611316565b946020939093013593505050565b5f8083601f840112611371575f80fd5b50813567ffffffffffffffff811115611388575f80fd5b60208301915083602082850101111561139f575f80fd5b9250929050565b5f805f805f805f60c0888a0312156113bc575f80fd5b6113c588611316565b965060208801359550604088013594506113e160608901611316565b93506080880135925060a088013567ffffffffffffffff811115611403575f80fd5b61140f8a828b01611361565b989b979a50959850939692959293505050565b5f60208284031215611432575f80fd5b61062782611316565b5f805f806060858703121561144e575f80fd5b61145785611316565b935060208501359250604085013567ffffffffffffffff811115611479575f80fd5b61148587828801611361565b95989497509550505050565b5f805f805f8060a087890312156114a6575f80fd5b6114af87611316565b95506114bd60208801611316565b94506040870135935060608701359250608087013567ffffffffffffffff8111156114e6575f80fd5b6114f289828a01611361565b979a9699509497509295939492505050565b5f8060408385031215611515575f80fd5b8235915061152560208401611316565b90509250929050565b5f806020838503121561153f575f80fd5b823567ffffffffffffffff811115611555575f80fd5b61156185828601611361565b90969095509350505050565b5f6020828403121561157d575f80fd5b8151801515811461158c575f80fd5b9392505050565b808202811582820484141761062a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b85815267ffffffffffffffff8516602082015283604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010194935050505056fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L1MessageQueueWithGasPriceOracleStorageLayoutJSON), L1MessageQueueWithGasPriceOracleStorageLayout); err != nil { diff --git a/contracts/contracts/l1/IL1CrossDomainMessenger.sol b/contracts/contracts/l1/IL1CrossDomainMessenger.sol index ce99bbfaf..2e190c701 100644 --- a/contracts/contracts/l1/IL1CrossDomainMessenger.sol +++ b/contracts/contracts/l1/IL1CrossDomainMessenger.sol @@ -37,10 +37,6 @@ interface IL1CrossDomainMessenger is ICrossDomainMessenger { bytes message ); - /// @notice Emitted when have message dropped. - /// @param nonce The index of the message to be dropped. - event DropMessage(uint256 indexed nonce); - /***************************** * Public Mutating Functions * *****************************/ @@ -80,12 +76,4 @@ interface IL1CrossDomainMessenger is ICrossDomainMessenger { uint32 newGasLimit, address refundAddress ) external payable; - - /// @notice Drop a skipped message. - /// @param from The address of the sender of the message. - /// @param to The address of the recipient of the message. - /// @param value The msg.value passed to the message call. - /// @param messageNonce The nonce for the message to drop. - /// @param message The content of the message. - function dropMessage(address from, address to, uint256 value, uint256 messageNonce, bytes memory message) external; } diff --git a/contracts/contracts/l1/L1CrossDomainMessenger.sol b/contracts/contracts/l1/L1CrossDomainMessenger.sol index 475e981d2..baa4b7fcf 100644 --- a/contracts/contracts/l1/L1CrossDomainMessenger.sol +++ b/contracts/contracts/l1/L1CrossDomainMessenger.sol @@ -42,7 +42,7 @@ contract L1CrossDomainMessenger is IL1CrossDomainMessenger, CrossDomainMessenger mapping(bytes32 => uint256) public messageSendTimestamp; /// @notice Mapping from L1 message hash to drop status. - mapping(bytes32 => bool) public isL1MessageDropped; + mapping(bytes32 => bool) public __isL1MessageDropped; /// @notice The address of Rollup contract. address public rollup; @@ -192,7 +192,7 @@ contract L1CrossDomainMessenger is IL1CrossDomainMessenger, CrossDomainMessenger require(messageSendTimestamp[_xDomainCalldataHash] > 0, "Provided message has not been enqueued"); // cannot replay dropped message - require(!isL1MessageDropped[_xDomainCalldataHash], "Message already dropped"); + require(!__isL1MessageDropped[_xDomainCalldataHash], "Message already dropped"); // compute and deduct the messaging fee to fee vault. uint256 _fee = IL1MessageQueue(_messageQueue).estimateCrossDomainMessageFee(_from, _newGasLimit); @@ -243,61 +243,6 @@ contract L1CrossDomainMessenger is IL1CrossDomainMessenger, CrossDomainMessenger } } - /// @inheritdoc IL1CrossDomainMessenger - function dropMessage( - address _from, - address _to, - uint256 _value, - uint256 _messageNonce, - bytes memory _message - ) external override whenNotPaused notInExecution { - // The criteria for dropping a message: - // 1. The message is a L1 message. - // 2. The message has not been dropped before. - // 3. the message and all of its replacement are finalized in L1. - // 4. the message and all of its replacement are skipped. - // - // Possible denial of service attack: - // + replayMessage is called every time someone want to drop the message. - // + replayMessage is called so many times for a skipped message, thus results a long list. - // - // We limit the number of `replayMessage` calls of each message, which may solve the above problem. - - address _messageQueue = messageQueue; - - // check message exists - bytes memory _xDomainCalldata = _encodeXDomainCalldata(_from, _to, _value, _messageNonce, _message); - bytes32 _xDomainCalldataHash = keccak256(_xDomainCalldata); - require(messageSendTimestamp[_xDomainCalldataHash] > 0, "Provided message has not been enqueued"); - - // check message not dropped - require(!isL1MessageDropped[_xDomainCalldataHash], "Message already dropped"); - - // check message is finalized - uint256 _lastIndex = replayStates[_xDomainCalldataHash].lastIndex; - if (_lastIndex == 0) _lastIndex = _messageNonce; - - // check message is skipped and drop it. - // @note If the list is very long, the message may never be dropped. - while (true) { - IL1MessageQueue(_messageQueue).dropCrossDomainMessage(_lastIndex); - _lastIndex = prevReplayIndex[_lastIndex]; - if (_lastIndex == 0) break; - unchecked { - _lastIndex = _lastIndex - 1; - } - } - - isL1MessageDropped[_xDomainCalldataHash] = true; - emit DropMessage(_messageNonce); - - // set execution context - xDomainMessageSender = Constants.DROP_XDOMAIN_MESSAGE_SENDER; - IMessageDropCallback(_from).onDropMessage{value: _value}(_message); - // clear execution context - xDomainMessageSender = Constants.DEFAULT_XDOMAIN_MESSAGE_SENDER; - } - /************************ * Restricted Functions * ************************/ diff --git a/contracts/contracts/l1/rollup/IL1MessageQueue.sol b/contracts/contracts/l1/rollup/IL1MessageQueue.sol index 3e9a4734b..8f33381f5 100644 --- a/contracts/contracts/l1/rollup/IL1MessageQueue.sol +++ b/contracts/contracts/l1/rollup/IL1MessageQueue.sol @@ -35,10 +35,6 @@ interface IL1MessageQueue { /// @param count The number of messages popped. event DequeueTransaction(uint256 startIndex, uint256 count); - /// @notice Emitted when a message is dropped from L1. - /// @param index The index of message dropped. - event DropTransaction(uint256 index); - /// @notice Emitted when owner updates gas oracle contract. /// @param _oldGasOracle The address of old gas oracle contract. /// @param _newGasOracle The address of new gas oracle contract. @@ -95,10 +91,6 @@ interface IL1MessageQueue { bytes calldata data ) external view returns (bytes32); - /// @notice Return whether the message is dropped. - /// @param queueIndex The queue index of the message to check. - function isMessageDropped(uint256 queueIndex) external view returns (bool); - /***************************** * Public Mutating Functions * *****************************/ @@ -132,7 +124,4 @@ interface IL1MessageQueue { /// @param startIndex The start index to pop. /// @param count The number of messages to pop. function popCrossDomainMessage(uint256 startIndex, uint256 count) external; - - /// @notice Drop a skipped message from the queue. - function dropCrossDomainMessage(uint256 index) external; } diff --git a/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol b/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol index de353fe91..3d86a753c 100644 --- a/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol +++ b/contracts/contracts/l1/rollup/L1MessageQueueWithGasPriceOracle.sol @@ -48,8 +48,8 @@ contract L1MessageQueueWithGasPriceOracle is OwnableUpgradeable, IL1MessageQueue /// @notice The max gas limit of L1 transactions. uint256 public maxGasLimit; - /// @dev The bitmap for dropped messages, where `droppedMessageBitmap[i]` keeps the bits from `[i*256, (i+1)*256)`. - BitMapsUpgradeable.BitMap private droppedMessageBitmap; + /// @dev The bitmap for dropped messages, where `droppedMessageBitmap[i]` keeps the bits from `[i*256, (i+1)*256)`. Deprecated. + BitMapsUpgradeable.BitMap private __droppedMessageBitmap; /// @dev The bitmap for skipped messages, where `skippedMessageBitmap[i]` keeps the bits from `[i*256, (i+1)*256)`. Deprecated. mapping(uint256 => uint256) private __skippedMessageBitmap; @@ -260,11 +260,6 @@ contract L1MessageQueueWithGasPriceOracle is OwnableUpgradeable, IL1MessageQueue return hash; } - /// @inheritdoc IL1MessageQueue - function isMessageDropped(uint256 _queueIndex) external view returns (bool) { - return droppedMessageBitmap.get(_queueIndex); - } - /***************************** * Public Mutating Functions * *****************************/ @@ -325,16 +320,6 @@ contract L1MessageQueueWithGasPriceOracle is OwnableUpgradeable, IL1MessageQueue emit DequeueTransaction(_startIndex, _count); } - /// @inheritdoc IL1MessageQueue - function dropCrossDomainMessage(uint256 _index) external onlyMessenger { - require(_index < pendingQueueIndex, "cannot drop pending message"); - - require(!droppedMessageBitmap.get(_index), "message already dropped"); - droppedMessageBitmap.set(_index); - - emit DropTransaction(_index); - } - /************************ * Restricted Functions * ************************/ diff --git a/contracts/contracts/test/L1CrossDomainMessenger.t.sol b/contracts/contracts/test/L1CrossDomainMessenger.t.sol index 47af5645e..0dcb9f1fd 100644 --- a/contracts/contracts/test/L1CrossDomainMessenger.t.sol +++ b/contracts/contracts/test/L1CrossDomainMessenger.t.sol @@ -427,69 +427,6 @@ contract L1CrossDomainMessengerTest is L1GatewayBaseTest { assertEq(nonce + 2, l1CrossDomainMessenger.messageNonce()); } - function test_dropMessage_notEnqueued_reverts() external { - address sender = address(this); - address to = address(bob); - bytes memory data = "send message"; - // hevm.deal(sender, 10 ether); - - // send value zero - uint256 value = 0; - uint256 nonce = l1MessageQueueWithGasPriceOracle.nextCrossDomainMessageIndex(); - - // Expect revert when the message has not been enqueued. - hevm.expectRevert("Provided message has not been enqueued"); - l1CrossDomainMessenger.dropMessage(sender, to, value, nonce, data); - } - - function test_dropMessage_succeeds(uint256 amount, address recipient, bytes memory dataToCall) public { - amount = bound(amount, 1, address(this).balance); - bytes memory message = abi.encodeCall( - IL2ETHGateway.finalizeDepositETH, - (address(this), recipient, amount, dataToCall) - ); - - l1ETHGateway.depositETHAndCall{value: amount}(recipient, amount, dataToCall, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // Drop message 0 and verify balance - revertOnReceive = false; - uint256 balance = address(this).balance; - l1CrossDomainMessenger.dropMessage(address(l1ETHGateway), address(counterpartGateway), amount, 0, message); - assertEq(balance + amount, address(this).balance); - } - - function test_dropMessage_dropAgain_reverts(uint256 amount, address recipient, bytes memory dataToCall) public { - amount = bound(amount, 1, address(this).balance); - bytes memory message = abi.encodeCall( - IL2ETHGateway.finalizeDepositETH, - (address(this), recipient, amount, dataToCall) - ); - - l1ETHGateway.depositETHAndCall{value: amount}(recipient, amount, dataToCall, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // Drop message 0 and verify balance - revertOnReceive = false; - uint256 balance = address(this).balance; - l1CrossDomainMessenger.dropMessage(address(l1ETHGateway), address(counterpartGateway), amount, 0, message); - assertEq(balance + amount, address(this).balance); - - // Expect revert when trying to drop the same message again. - hevm.expectRevert("Message already dropped"); - l1CrossDomainMessenger.dropMessage(address(l1ETHGateway), address(counterpartGateway), amount, 0, message); - } - function test_updateMaxReplayTimes_succeeds(uint256 _maxReplayTimes) external { hevm.assume(_maxReplayTimes > 0); // not owner, revert @@ -529,8 +466,6 @@ contract L1CrossDomainMessengerTest is L1GatewayBaseTest { l1CrossDomainMessenger.proveAndRelayMessage(address(0), address(0), 0, 0, new bytes(0), wdProof, wdRoot); hevm.expectRevert("Pausable: paused"); l1CrossDomainMessenger.replayMessage(address(0), address(0), 0, 0, new bytes(0), 0, address(0)); - hevm.expectRevert("Pausable: paused"); - l1CrossDomainMessenger.dropMessage(address(0), address(0), 0, 0, new bytes(0)); // unpause hevm.prank(multisig); diff --git a/contracts/contracts/test/L1CustomERC20Gateway.t.sol b/contracts/contracts/test/L1CustomERC20Gateway.t.sol index 8ac88ce0c..f1a63821c 100644 --- a/contracts/contracts/test/L1CustomERC20Gateway.t.sol +++ b/contracts/contracts/test/L1CustomERC20Gateway.t.sol @@ -182,31 +182,6 @@ contract L1CustomERC20GatewayTest is L1GatewayBaseTest { _depositERC20WithRecipientAndCalldata(false, amount, recipient, dataToCall, gasLimit, feePerGas); } - function test_dropMessage_succeeds(uint256 amount, address recipient, bytes memory dataToCall) public { - gateway.updateTokenMapping(address(l1Token), address(l2Token)); - - amount = bound(amount, 1, l1Token.balanceOf(address(this))); - bytes memory message = abi.encodeCall( - IL2ERC20Gateway.finalizeDepositERC20, - (address(l1Token), address(l2Token), address(this), recipient, amount, dataToCall) - ); - gateway.depositERC20AndCall(address(l1Token), recipient, amount, dataToCall, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // drop message 0 - hevm.expectEmit(true, true, false, true); - emit IL1ERC20Gateway.RefundERC20(address(l1Token), address(this), amount); - - uint256 balance = l1Token.balanceOf(address(this)); - l1CrossDomainMessenger.dropMessage(address(gateway), address(counterpartGateway), 0, 0, message); - assertEq(balance + amount, l1Token.balanceOf(address(this))); - } - function test_onDropMessage_beforeDropMessage_reverts() public { uint256 amount = 1000; diff --git a/contracts/contracts/test/L1ERC1155Gateway.t.sol b/contracts/contracts/test/L1ERC1155Gateway.t.sol index b81e92702..18fc2f8a1 100644 --- a/contracts/contracts/test/L1ERC1155Gateway.t.sol +++ b/contracts/contracts/test/L1ERC1155Gateway.t.sol @@ -157,70 +157,6 @@ contract L1ERC1155GatewayTest is L1GatewayBaseTest, ERC1155TokenReceiver { _testBatchDepositERC1155WithRecipient(tokenCount, amount, recipient, gasLimit, feePerGas); } - function test_dropMessage_succeeds(uint256 tokenId, uint256 amount) public { - gateway.updateTokenMapping(address(l1Token), address(l2Token)); - - tokenId = bound(tokenId, 0, TOKEN_COUNT - 1); - amount = bound(amount, 1, MAX_TOKEN_BALANCE); - bytes memory message = abi.encodeCall( - IL2ERC1155Gateway.finalizeDepositERC1155, - (address(l1Token), address(l2Token), address(this), address(this), tokenId, amount) - ); - gateway.depositERC1155(address(l1Token), tokenId, amount, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // drop message 0 - hevm.expectEmit(true, true, false, true); - emit IL1ERC1155Gateway.RefundERC1155(address(l1Token), address(this), tokenId, amount); - - uint256 balance = l1Token.balanceOf(address(this), tokenId); - l1CrossDomainMessenger.dropMessage(address(gateway), address(counterpartGateway), 0, 0, message); - assertEq(balance + amount, l1Token.balanceOf(address(this), tokenId)); - } - - function test_dropMessageBatch_succeeds(uint256 tokenCount, uint256 amount) public { - tokenCount = bound(tokenCount, 1, TOKEN_COUNT); - amount = bound(amount, 1, MAX_TOKEN_BALANCE); - gateway.updateTokenMapping(address(l1Token), address(l2Token)); - - uint256[] memory _tokenIds = new uint256[](tokenCount); - uint256[] memory _amounts = new uint256[](tokenCount); - for (uint256 i = 0; i < tokenCount; i++) { - _tokenIds[i] = i; - _amounts[i] = amount; - } - - bytes memory message = abi.encodeCall( - IL2ERC1155Gateway.finalizeBatchDepositERC1155, - (address(l1Token), address(l2Token), address(this), address(this), _tokenIds, _amounts) - ); - gateway.batchDepositERC1155(address(l1Token), _tokenIds, _amounts, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // drop message 0 - hevm.expectEmit(true, true, false, true); - emit IL1ERC1155Gateway.BatchRefundERC1155(address(l1Token), address(this), _tokenIds, _amounts); - - uint256[] memory balances = new uint256[](tokenCount); - for (uint256 i = 0; i < tokenCount; i++) { - balances[i] = l1Token.balanceOf(address(this), _tokenIds[i]); - } - l1CrossDomainMessenger.dropMessage(address(gateway), address(counterpartGateway), 0, 0, message); - for (uint256 i = 0; i < tokenCount; i++) { - assertEq(balances[i] + _amounts[i], l1Token.balanceOf(address(this), _tokenIds[i])); - } - } - function test_onDropMessage_revert(uint256 tokenId, uint256 amount) external { gateway.updateTokenMapping(address(l1Token), address(l2Token)); tokenId = bound(tokenId, 0, TOKEN_COUNT - 1); diff --git a/contracts/contracts/test/L1ERC721Gateway.t.sol b/contracts/contracts/test/L1ERC721Gateway.t.sol index 17db63c8c..b71e36b6c 100644 --- a/contracts/contracts/test/L1ERC721Gateway.t.sol +++ b/contracts/contracts/test/L1ERC721Gateway.t.sol @@ -174,65 +174,6 @@ contract L1ERC721GatewayTest is L1GatewayBaseTest, ERC721TokenReceiver { _testBatchDepositERC721WithRecipient(tokenCount, recipient, gasLimit, feePerGas); } - function test_dropMessage_succeeds(uint256 tokenId) public { - gateway.updateTokenMapping(address(l1Token), address(l2Token)); - - tokenId = bound(tokenId, 0, TOKEN_COUNT - 1); - bytes memory message = abi.encodeCall( - IL2ERC721Gateway.finalizeDepositERC721, - (address(l1Token), address(l2Token), address(this), address(this), tokenId) - ); - gateway.depositERC721(address(l1Token), tokenId, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // drop message 0 - hevm.expectEmit(true, true, false, true); - emit IL1ERC721Gateway.RefundERC721(address(l1Token), address(this), tokenId); - - assertEq(l1Token.ownerOf(tokenId), address(gateway)); - l1CrossDomainMessenger.dropMessage(address(gateway), address(counterpartGateway), 0, 0, message); - assertEq(l1Token.ownerOf(tokenId), address(this)); - } - - function test_dropMessageBatch_succeeds(uint256 tokenCount) public { - tokenCount = bound(tokenCount, 1, TOKEN_COUNT); - gateway.updateTokenMapping(address(l1Token), address(l2Token)); - - uint256[] memory _tokenIds = new uint256[](tokenCount); - for (uint256 i = 0; i < tokenCount; i++) { - _tokenIds[i] = i; - } - - bytes memory message = abi.encodeCall( - IL2ERC721Gateway.finalizeBatchDepositERC721, - (address(l1Token), address(l2Token), address(this), address(this), _tokenIds) - ); - gateway.batchDepositERC721(address(l1Token), _tokenIds, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // drop message 0 - hevm.expectEmit(true, true, false, true); - emit IL1ERC721Gateway.BatchRefundERC721(address(l1Token), address(this), _tokenIds); - for (uint256 i = 0; i < tokenCount; i++) { - assertEq(l1Token.ownerOf(_tokenIds[i]), address(gateway)); - } - - l1CrossDomainMessenger.dropMessage(address(gateway), address(counterpartGateway), 0, 0, message); - for (uint256 i = 0; i < tokenCount; i++) { - assertEq(l1Token.ownerOf(_tokenIds[i]), address(this)); - } - } - function test_finalizeWithdrawERC721_counterError_fails(address sender, address recipient, uint256 tokenId) public { hevm.assume(recipient != address(0)); tokenId = bound(tokenId, 0, TOKEN_COUNT - 1); diff --git a/contracts/contracts/test/L1ETHGateway.t.sol b/contracts/contracts/test/L1ETHGateway.t.sol index 488e2777c..d7e979b44 100644 --- a/contracts/contracts/test/L1ETHGateway.t.sol +++ b/contracts/contracts/test/L1ETHGateway.t.sol @@ -167,35 +167,6 @@ contract L1ETHGatewayTest is L1GatewayBaseTest { _depositETHWithRecipientAndCalldata(true, amount, recipient, dataToCall, gasLimit, feePerGas); } - function test_dropMessage_succeeds(uint256 amount, address recipient, bytes memory dataToCall) public { - amount = bound(amount, 1, address(this).balance); - bytes memory message = abi.encodeCall( - IL2ETHGateway.finalizeDepositETH, - (address(this), recipient, amount, dataToCall) - ); - l1ETHGateway.depositETHAndCall{value: amount}(recipient, amount, dataToCall, defaultGasLimit); - - // pop message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // ETH transfer failed, revert - revertOnReceive = true; - hevm.expectRevert("ETH transfer failed"); - l1CrossDomainMessenger.dropMessage(address(l1ETHGateway), address(counterpartGateway), amount, 0, message); - - // drop message 0 - hevm.expectEmit(true, true, false, true); - emit IL1ETHGateway.RefundETH(address(this), amount); - - revertOnReceive = false; - uint256 balance = address(this).balance; - l1CrossDomainMessenger.dropMessage(address(l1ETHGateway), address(counterpartGateway), amount, 0, message); - assertEq(balance + amount, address(this).balance); - } - function test_finalizeWithdrawETH_counterErr_fails( address sender, address recipient, diff --git a/contracts/contracts/test/L1MessageQueue.t.sol b/contracts/contracts/test/L1MessageQueue.t.sol index 2620f2e65..c11fa8f39 100644 --- a/contracts/contracts/test/L1MessageQueue.t.sol +++ b/contracts/contracts/test/L1MessageQueue.t.sol @@ -238,78 +238,6 @@ contract L1MessageQueueTest is L1MessageBaseTest { l1MessageQueue.popCrossDomainMessage(1, 2); } - function test_dropCrossDomainMessage_cannotDropPending_reverts() external { - bytes memory _calldata = "0x0"; - uint256 gasLimit = l1MessageQueue.calculateIntrinsicGasFee(_calldata); - - // Store alice as messenger and rollup. - upgradeStorage(address(alice), address(alice), address(alice)); - - // Expect revert when (_index < pendingQueueIndex) is false. - hevm.prank(alice); - l1MessageQueue.appendCrossDomainMessage(alice, gasLimit, _calldata); - hevm.prank(alice); - hevm.expectRevert("cannot drop pending message"); - l1MessageQueue.dropCrossDomainMessage(0); - } - - function test_pop_dropCrossDomainMessage_succeeds() external { - // store alice as messenger and rollup - upgradeStorage(address(alice), address(alice), address(alice)); - assertEq(alice, l1MessageQueue.MESSENGER()); - assertEq(alice, l1MessageQueue.ROLLUP_CONTRACT()); - bytes memory _calldata = "0x0"; - uint256 gasLimit = l1MessageQueue.calculateIntrinsicGasFee(_calldata); - // append 10 message - hevm.startPrank(alice); - for (uint64 i = 0; i < 10; i++) { - l1MessageQueue.appendCrossDomainMessage(alice, gasLimit, _calldata); - } - - // Verify the event QueueTransaction is emitted successfully. - hevm.expectEmit(false, false, false, true); - emit IL1MessageQueue.DequeueTransaction(0, 10); - - // pop all 10 message - l1MessageQueue.popCrossDomainMessage(0, 10); - - // drop all 10 message - for (uint64 i = 0; i < 10; i++) { - l1MessageQueue.dropCrossDomainMessage(i); - assertTrue(l1MessageQueue.isMessageDropped(i)); - } - hevm.stopPrank(); - } - - function test_dropCrossDomainMessage_dropAgain_reverts() external { - // store alice as messenger and rollup - upgradeStorage(address(alice), address(alice), address(alice)); - assertEq(alice, l1MessageQueue.MESSENGER()); - assertEq(alice, l1MessageQueue.ROLLUP_CONTRACT()); - bytes memory _calldata = "0x0"; - uint256 gasLimit = l1MessageQueue.calculateIntrinsicGasFee(_calldata); - // append 10 message - hevm.startPrank(alice); - for (uint64 i = 0; i < 10; i++) { - l1MessageQueue.appendCrossDomainMessage(alice, gasLimit, _calldata); - } - - // pop all 10 message - l1MessageQueue.popCrossDomainMessage(0, 10); - - // drop all 10 message - for (uint64 i = 0; i < 10; i++) { - l1MessageQueue.dropCrossDomainMessage(i); - assertTrue(l1MessageQueue.isMessageDropped(i)); - } - hevm.stopPrank(); - - // Expect revert when message already dropped. - hevm.prank(alice); - hevm.expectRevert("message already dropped"); - l1MessageQueue.dropCrossDomainMessage(1); - } - function test_updateMaxGasLimit_notOwner_reverts() external { // Verify the modifier onlyOwner works successfully. // It throws an error "Ownable: caller is not the owner" when msg.sender is not the owner. diff --git a/contracts/contracts/test/L1StandardERC20Gateway.t.sol b/contracts/contracts/test/L1StandardERC20Gateway.t.sol index 00bbe5e65..d9440daf9 100644 --- a/contracts/contracts/test/L1StandardERC20Gateway.t.sol +++ b/contracts/contracts/test/L1StandardERC20Gateway.t.sol @@ -287,40 +287,6 @@ contract L1StandardERC20GatewayTest is L1GatewayBaseTest { assertEq(balanceBefore + amount - fee, balanceAfter); } - function test_dropMessage_succeeds(uint256 amount, address recipient, bytes memory dataToCall) public { - amount = bound(amount, 1, l1Token.balanceOf(address(this)) / 2); - bytes memory message = abi.encodeCall( - IL2ERC20Gateway.finalizeDepositERC20, - ( - address(l1Token), - address(l2Token), - address(this), - recipient, - amount, - abi.encode( - true, - abi.encode(dataToCall, abi.encode(l1Token.symbol(), l1Token.name(), l1Token.decimals())) - ) - ) - ); - l1StandardERC20Gateway.depositERC20AndCall(address(l1Token), recipient, amount, dataToCall, defaultGasLimit); - l1StandardERC20Gateway.depositERC20AndCall(address(l1Token), recipient, amount, dataToCall, defaultGasLimit); - - // pop message 0 and 1 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 2); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 2); - hevm.stopPrank(); - - // drop message 1 - hevm.expectEmit(true, true, false, true); - emit IL1ERC20Gateway.RefundERC20(address(l1Token), address(this), amount); - - uint256 balance = l1Token.balanceOf(address(this)); - l1CrossDomainMessenger.dropMessage(address(l1StandardERC20Gateway), address(counterpartGateway), 0, 1, message); - assertEq(balance + amount, l1Token.balanceOf(address(this))); - } - function test_finalizeWithdrawERC20_beforeFinalizeWithdrawERC20_reverts() public { address recipient = address(2048); address _from = address(counterpartGateway); diff --git a/contracts/contracts/test/L1WETHGateway.t.sol b/contracts/contracts/test/L1WETHGateway.t.sol index f4de6bac1..1a8aa309d 100644 --- a/contracts/contracts/test/L1WETHGateway.t.sol +++ b/contracts/contracts/test/L1WETHGateway.t.sol @@ -197,29 +197,6 @@ contract L1WETHGatewayTest is L1GatewayBaseTest { _depositERC20WithRecipientAndCalldata(true, amount, recipient, dataToCall, gasLimit, feePerGas); } - function test_dropMessage_succeeds(uint256 amount, address recipient, bytes memory dataToCall) public { - amount = bound(amount, 1, l1weth.balanceOf(address(this))); - bytes memory message = abi.encodeCall( - IL2ERC20Gateway.finalizeDepositERC20, - (address(l1weth), address(l2weth), address(this), recipient, amount, dataToCall) - ); - gateway.depositERC20AndCall(address(l1weth), recipient, amount, dataToCall, defaultGasLimit); - - // skip message 0 - hevm.startPrank(address(rollup)); - l1MessageQueueWithGasPriceOracle.popCrossDomainMessage(0, 1); - assertEq(l1MessageQueueWithGasPriceOracle.pendingQueueIndex(), 1); - hevm.stopPrank(); - - // drop message 0 - hevm.expectEmit(true, true, false, true); - emit IL1ERC20Gateway.RefundERC20(address(l1weth), address(this), amount); - - uint256 balance = l1weth.balanceOf(address(this)); - l1CrossDomainMessenger.dropMessage(address(gateway), address(counterpartGateway), amount, 0, message); - assertEq(balance + amount, l1weth.balanceOf(address(this))); - } - function test_finalizeWithdrawERC20_counterErr_fails( address sender, address recipient, From ca399cb35307df83f821515d5da644435016b1a3 Mon Sep 17 00:00:00 2001 From: kukoo Date: Fri, 20 Dec 2024 11:37:23 +0800 Subject: [PATCH 20/33] Update message queue gas limit config (#683) --- contracts/src/deploy-config/holesky.ts | 2 +- contracts/src/deploy-config/l1.ts | 2 +- contracts/src/deploy-config/qanetl1.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/contracts/src/deploy-config/holesky.ts b/contracts/src/deploy-config/holesky.ts index 76ceef573..8999df585 100644 --- a/contracts/src/deploy-config/holesky.ts +++ b/contracts/src/deploy-config/holesky.ts @@ -8,7 +8,7 @@ const config = { l2ChainID: 2810, // L1MessageQueue config - l1MessageQueueMaxGasLimit: 100000000, + l1MessageQueueMaxGasLimit: 30000000, // gasPriceOracle config l2BaseFee: 0.1, // Gwei diff --git a/contracts/src/deploy-config/l1.ts b/contracts/src/deploy-config/l1.ts index bc0c67ad6..e625e22db 100644 --- a/contracts/src/deploy-config/l1.ts +++ b/contracts/src/deploy-config/l1.ts @@ -11,7 +11,7 @@ const config = { l2ChainID: 53077, // L1MessageQueue config - l1MessageQueueMaxGasLimit: 100000000, + l1MessageQueueMaxGasLimit: 30000000, // gasPriceOracle config l2BaseFee: 0.1, // Gwei diff --git a/contracts/src/deploy-config/qanetl1.ts b/contracts/src/deploy-config/qanetl1.ts index 56fe986fa..2b324ab43 100644 --- a/contracts/src/deploy-config/qanetl1.ts +++ b/contracts/src/deploy-config/qanetl1.ts @@ -8,7 +8,7 @@ const config = { l2ChainID: 53077, // L1MessageQueue config - l1MessageQueueMaxGasLimit: 100000000, + l1MessageQueueMaxGasLimit: 30000000, // gasPriceOracle config l2BaseFee: 0.1, // Gwei From a4630ebb7d56467ae47e6929d47c9e850de1da49 Mon Sep 17 00:00:00 2001 From: kukoo Date: Mon, 23 Dec 2024 10:47:59 +0800 Subject: [PATCH 21/33] Fee vault fix (#674) --- bindings/bin/l2txfeevault_deployed.hex | 2 +- bindings/bindings/l2txfeevault.go | 2 +- bindings/bindings/l2txfeevault_more.go | 2 +- .../contracts/l2/system/L2TxFeeVault.sol | 9 ++++++-- contracts/contracts/test/L2TxFeeVault.t.sol | 22 +++++++------------ 5 files changed, 18 insertions(+), 19 deletions(-) diff --git a/bindings/bin/l2txfeevault_deployed.hex b/bindings/bin/l2txfeevault_deployed.hex index 82032012b..5622a70b5 100644 --- a/bindings/bin/l2txfeevault_deployed.hex +++ b/bindings/bin/l2txfeevault_deployed.hex @@ -1 +1 @@ -0x608060405260043610610140575f3560e01c806384411d65116100bb578063da13f9a211610071578063f2fde38b11610057578063f2fde38b146103c4578063feec756c146103e3578063ff4f354614610402575f80fd5b8063da13f9a214610377578063eff1337c14610396575f80fd5b80639e7adc79116100a15780639e7adc79146102f5578063a03fa7e314610314578063cc198d7414610333575f80fd5b806384411d65146102b55780638da5cb5b146102ca575f80fd5b80633ccfd60b1161011057806366d003ac116100f657806366d003ac14610256578063708125ad14610282578063715018a6146102a1575f80fd5b80633ccfd60b1461021f578063457e1a4914610233575f80fd5b8063151eeb551461014b5780632ccb1b301461018e5780632e1a7d4d146101af5780633cb747bf146101ce575f80fd5b3661014757005b5f80fd5b348015610156575f80fd5b5061017961016536600461130d565b60056020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610199575f80fd5b506101ad6101a836600461132d565b610421565b005b3480156101ba575f80fd5b506101ad6101c9366004611355565b610750565b3480156101d9575f80fd5b506002546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610185565b34801561022a575f80fd5b506101ad610a55565b34801561023e575f80fd5b5061024860015481565b604051908152602001610185565b348015610261575f80fd5b506003546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561028d575f80fd5b506101ad61029c3660046113a8565b610ac8565b3480156102ac575f80fd5b506101ad610ce2565b3480156102c0575f80fd5b5061024860045481565b3480156102d5575f80fd5b505f546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610300575f80fd5b506101ad61030f36600461130d565b610d53565b34801561031f575f80fd5b506101ad61032e36600461130d565b610e2f565b34801561033e575f80fd5b5061017961034d36600461130d565b73ffffffffffffffffffffffffffffffffffffffff165f9081526006602052604090205460ff1690565b348015610382575f80fd5b506101ad6103913660046113a8565b610ebd565b3480156103a1575f80fd5b506101796103b036600461130d565b60066020525f908152604090205460ff1681565b3480156103cf575f80fd5b506101ad6103de36600461130d565b611018565b3480156103ee575f80fd5b506101ad6103fd36600461130d565b6110ea565b34801561040d575f80fd5b506101ad61041c366004611355565b6111c6565b335f9081526005602052604090205460ff168061045457505f5473ffffffffffffffffffffffffffffffffffffffff1633145b6104a55760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821661052e5760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526006602052604090205460ff166105c85760405162461bcd60e51b815260206004820152602760248201527f4665655661756c743a20726563697069656e742061646472657373206e6f742060448201527f616c6c6f77656400000000000000000000000000000000000000000000000000606482015260840161049c565b478082111561063f5760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f207472616e7366657200000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517f0a429aba3d89849a2db0153e4534d95c46a1d83c8109d73893f55ebc44010ff49181900360600190a15f8373ffffffffffffffffffffffffffffffffffffffff16836040515f6040518083038185875af1925050503d805f81146106f4576040519150601f19603f3d011682016040523d82523d5f602084013e6106f9565b606091505b505090508061074a5760405162461bcd60e51b815260206004820152601d60248201527f4665655661756c743a20455448207472616e73666572206661696c6564000000604482015260640161049c565b50505050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146107b65760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b60035473ffffffffffffffffffffffffffffffffffffffff166108415760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b6001548110156108df5760405162461bcd60e51b815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a40161049c565b47808211156109565760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f20776974686472617700000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba9181900360600190a1600254600354604080516020810182525f80825291517fb2267a7b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9485169463b2267a7b948894610a23949190921692859290600401611498565b5f604051808303818588803b158015610a3a575f80fd5b505af1158015610a4c573d5f803e3d5ffd5b50505050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610abb5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b47610ac581610750565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610b2e5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610cdd575f73ffffffffffffffffffffffffffffffffffffffff16838281518110610b6257610b6261152e565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610bf35760405162461bcd60e51b815260206004820152602660248201527f4665655661756c743a20616464726573732063616e6e6f74206265206164647260448201527f6573732830290000000000000000000000000000000000000000000000000000606482015260840161049c565b8160065f858481518110610c0957610c0961152e565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbd84b6b3e1d029fd61a717f6020a8f35b358486e0971c00d4e64b516503f85e7838281518110610c9357610c9361152e565b602002602001015183604051610ccd92919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610b30565b505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610d485760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b610d515f611271565b565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610db95760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f1c928c417a10a21c3cddad148c5dba5d710e4b1442d6d8a36de345935ad84612905f90a35050565b335f9081526005602052604090205460ff1680610e6257505f5473ffffffffffffffffffffffffffffffffffffffff1633145b610eae5760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f77656400604482015260640161049c565b47610eb98282610421565b5050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610f235760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610cdd578160055f858481518110610f4457610f4461152e565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbb5d3e442e800faa1089a4f57bae4f36808d3cf15d051033d78a72147782f24c838281518110610fce57610fce61152e565b60200260200101518360405161100892919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610f25565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461107e5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff81166110e15760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f2061646472657373000000604482015260640161049c565b610ac581611271565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146111505760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f7e1e96961a397c8aa26162fe259cc837afc95e33aad4945ddc61c18dabb7a6ad905f90a35050565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461122c5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b600180549082905560408051828152602081018490527f0d3c80219fe57713b9f9c83d1e51426792d0c14d8e330e65b102571816140965910160405180910390a15050565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611308575f80fd5b919050565b5f6020828403121561131d575f80fd5b611326826112e5565b9392505050565b5f806040838503121561133e575f80fd5b611347836112e5565b946020939093013593505050565b5f60208284031215611365575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b80358015158114611308575f80fd5b5f80604083850312156113b9575f80fd5b823567ffffffffffffffff808211156113d0575f80fd5b818501915085601f8301126113e3575f80fd5b81356020828211156113f7576113f761136c565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110868211171561143a5761143a61136c565b604052928352818301935084810182019289841115611457575f80fd5b948201945b8386101561147c5761146d866112e5565b8552948201949382019361145c565b965061148b9050878201611399565b9450505050509250929050565b73ffffffffffffffffffffffffffffffffffffffff851681525f60208560208401526080604084015284518060808501525f5b818110156114e75786810183015185820160a0015282016114cb565b505f60a0828601015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a +0x608060405260043610610140575f3560e01c806384411d65116100bb578063da13f9a211610071578063f2fde38b11610057578063f2fde38b146103c4578063feec756c146103e3578063ff4f354614610402575f80fd5b8063da13f9a214610377578063eff1337c14610396575f80fd5b80639e7adc79116100a15780639e7adc79146102f5578063a03fa7e314610314578063cc198d7414610333575f80fd5b806384411d65146102b55780638da5cb5b146102ca575f80fd5b80633ccfd60b1161011057806366d003ac116100f657806366d003ac14610256578063708125ad14610282578063715018a6146102a1575f80fd5b80633ccfd60b1461021f578063457e1a4914610233575f80fd5b8063151eeb551461014b5780632ccb1b301461018e5780632e1a7d4d146101af5780633cb747bf146101ce575f80fd5b3661014757005b5f80fd5b348015610156575f80fd5b506101796101653660046115d6565b60056020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610199575f80fd5b506101ad6101a83660046115f6565b610421565b005b3480156101ba575f80fd5b506101ad6101c936600461161e565b61074d565b3480156101d9575f80fd5b506002546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610185565b34801561022a575f80fd5b506101ad610add565b34801561023e575f80fd5b5061024860015481565b604051908152602001610185565b348015610261575f80fd5b506003546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561028d575f80fd5b506101ad61029c366004611671565b610b50565b3480156102ac575f80fd5b506101ad610d6a565b3480156102c0575f80fd5b5061024860045481565b3480156102d5575f80fd5b505f546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610300575f80fd5b506101ad61030f3660046115d6565b610ddb565b34801561031f575f80fd5b506101ad61032e3660046115d6565b610f40565b34801561033e575f80fd5b5061017961034d3660046115d6565b73ffffffffffffffffffffffffffffffffffffffff165f9081526006602052604090205460ff1690565b348015610382575f80fd5b506101ad610391366004611671565b610fce565b3480156103a1575f80fd5b506101796103b03660046115d6565b60066020525f908152604090205460ff1681565b3480156103cf575f80fd5b506101ad6103de3660046115d6565b6111e3565b3480156103ee575f80fd5b506101ad6103fd3660046115d6565b6112b5565b34801561040d575f80fd5b506101ad61041c36600461161e565b61141a565b335f9081526005602052604090205460ff168061045457505f5473ffffffffffffffffffffffffffffffffffffffff1633145b6104a55760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821661052e5760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526006602052604090205460ff166105c85760405162461bcd60e51b815260206004820152602760248201527f4665655661756c743a20726563697069656e742061646472657373206e6f742060448201527f616c6c6f77656400000000000000000000000000000000000000000000000000606482015260840161049c565b478082111561063f5760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f207472616e7366657200000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556040805183815273ffffffffffffffffffffffffffffffffffffffff85166020820152338183015290517f0a429aba3d89849a2db0153e4534d95c46a1d83c8109d73893f55ebc44010ff49181900360600190a15f8373ffffffffffffffffffffffffffffffffffffffff16836040515f6040518083038185875af1925050503d805f81146106f1576040519150601f19603f3d011682016040523d82523d5f602084013e6106f6565b606091505b50509050806107475760405162461bcd60e51b815260206004820152601d60248201527f4665655661756c743a20455448207472616e73666572206661696c6564000000604482015260640161049c565b50505050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146107b35760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b60025473ffffffffffffffffffffffffffffffffffffffff1661083e5760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a206d657373656e67657220616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b60035473ffffffffffffffffffffffffffffffffffffffff166108c95760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b6001548110156109675760405162461bcd60e51b815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a40161049c565b47808211156109de5760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f20776974686472617700000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba9181900360600190a1600254600354604080516020810182525f80825291517fb2267a7b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9485169463b2267a7b948894610aab949190921692859290600401611761565b5f604051808303818588803b158015610ac2575f80fd5b505af1158015610ad4573d5f803e3d5ffd5b50505050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610b435760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b47610b4d8161074d565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610bb65760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610d65575f73ffffffffffffffffffffffffffffffffffffffff16838281518110610bea57610bea6117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610c7b5760405162461bcd60e51b815260206004820152602e60248201527f4665655661756c743a207265636569766520616464726573732063616e6e6f7460448201527f2062652061646472657373283029000000000000000000000000000000000000606482015260840161049c565b8160065f858481518110610c9157610c916117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbd84b6b3e1d029fd61a717f6020a8f35b358486e0971c00d4e64b516503f85e7838281518110610d1b57610d1b6117f7565b602002602001015183604051610d5592919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610bb8565b505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610dd05760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b610dd95f61153a565b565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610e415760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff8116610eca5760405162461bcd60e51b815260206004820152603460248201527f4665655661756c743a206e6577206d657373656e67657220616464726573732060448201527f63616e6e6f742062652061646472657373283029000000000000000000000000606482015260840161049c565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f1c928c417a10a21c3cddad148c5dba5d710e4b1442d6d8a36de345935ad84612905f90a35050565b335f9081526005602052604090205460ff1680610f7357505f5473ffffffffffffffffffffffffffffffffffffffff1633145b610fbf5760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f77656400604482015260640161049c565b47610fca8282610421565b5050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146110345760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610d65575f73ffffffffffffffffffffffffffffffffffffffff16838281518110611068576110686117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16036110f95760405162461bcd60e51b815260206004820152603760248201527f4665655661756c743a207472616e7366657220616c6c6f77656420616464726560448201527f73732063616e6e6f742062652061646472657373283029000000000000000000606482015260840161049c565b8160055f85848151811061110f5761110f6117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbb5d3e442e800faa1089a4f57bae4f36808d3cf15d051033d78a72147782f24c838281518110611199576111996117f7565b6020026020010151836040516111d392919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101611036565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146112495760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff81166112ac5760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f2061646472657373000000604482015260640161049c565b610b4d8161153a565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461131b5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff81166113a45760405162461bcd60e51b815260206004820152603460248201527f4665655661756c743a206e657720726563697069656e7420616464726573732060448201527f63616e6e6f742062652061646472657373283029000000000000000000000000606482015260840161049c565b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f7e1e96961a397c8aa26162fe259cc837afc95e33aad4945ddc61c18dabb7a6ad905f90a35050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146114805760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f81116114f55760405162461bcd60e51b815260206004820152603160248201527f4665655661756c743a206e6577206d696e696d756d207769746864726177206160448201527f6d6f756e742063616e6e6f742062652030000000000000000000000000000000606482015260840161049c565b600180549082905560408051828152602081018490527f0d3c80219fe57713b9f9c83d1e51426792d0c14d8e330e65b102571816140965910160405180910390a15050565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146115d1575f80fd5b919050565b5f602082840312156115e6575f80fd5b6115ef826115ae565b9392505050565b5f8060408385031215611607575f80fd5b611610836115ae565b946020939093013593505050565b5f6020828403121561162e575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b803580151581146115d1575f80fd5b5f8060408385031215611682575f80fd5b823567ffffffffffffffff80821115611699575f80fd5b818501915085601f8301126116ac575f80fd5b81356020828211156116c0576116c0611635565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110868211171561170357611703611635565b604052928352818301935084810182019289841115611720575f80fd5b948201945b8386101561174557611736866115ae565b85529482019493820193611725565b96506117549050878201611662565b9450505050509250929050565b73ffffffffffffffffffffffffffffffffffffffff851681525f60208560208401526080604084015284518060808501525f5b818110156117b05786810183015185820160a001528201611794565b505f60a0828601015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a diff --git a/bindings/bindings/l2txfeevault.go b/bindings/bindings/l2txfeevault.go index 382e7ead6..91258acb0 100644 --- a/bindings/bindings/l2txfeevault.go +++ b/bindings/bindings/l2txfeevault.go @@ -32,7 +32,7 @@ var ( // L2TxFeeVaultMetaData contains all meta data concerning the L2TxFeeVault contract. var L2TxFeeVaultMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_minWithdrawalAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_oldOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldMessenger\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newMessenger\",\"type\":\"address\"}],\"name\":\"UpdateMessenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldMinWithdrawAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newMinWithdrawAmount\",\"type\":\"uint256\"}],\"name\":\"UpdateMinWithdrawAmount\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateReceiveAllowed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldRecipient\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newRecipient\",\"type\":\"address\"}],\"name\":\"UpdateRecipient\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateTransferAllowed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"}],\"name\":\"isReceiveAllowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"minWithdrawAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiveAddr\",\"type\":\"address\"}],\"name\":\"receiveAllowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"allowed\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalProcessed\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"transferAddr\",\"type\":\"address\"}],\"name\":\"transferAllowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"allowed\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"}],\"name\":\"transferTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newMessenger\",\"type\":\"address\"}],\"name\":\"updateMessenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newMinWithdrawAmount\",\"type\":\"uint256\"}],\"name\":\"updateMinWithdrawAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_accounts\",\"type\":\"address[]\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"updateReceiveAllowed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newRecipient\",\"type\":\"address\"}],\"name\":\"updateRecipient\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_accounts\",\"type\":\"address[]\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"updateTransferAllowedStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", - Bin: "0x608060405234801562000010575f80fd5b5060405162001687380380620016878339810160408190526200003391620000d3565b6200003e8362000068565b600155600380546001600160a01b0319166001600160a01b03929092169190911790555062000111565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b0381168114620000ce575f80fd5b919050565b5f805f60608486031215620000e6575f80fd5b620000f184620000b7565b92506200010160208501620000b7565b9150604084015190509250925092565b611568806200011f5f395ff3fe608060405260043610610140575f3560e01c806384411d65116100bb578063da13f9a211610071578063f2fde38b11610057578063f2fde38b146103c4578063feec756c146103e3578063ff4f354614610402575f80fd5b8063da13f9a214610377578063eff1337c14610396575f80fd5b80639e7adc79116100a15780639e7adc79146102f5578063a03fa7e314610314578063cc198d7414610333575f80fd5b806384411d65146102b55780638da5cb5b146102ca575f80fd5b80633ccfd60b1161011057806366d003ac116100f657806366d003ac14610256578063708125ad14610282578063715018a6146102a1575f80fd5b80633ccfd60b1461021f578063457e1a4914610233575f80fd5b8063151eeb551461014b5780632ccb1b301461018e5780632e1a7d4d146101af5780633cb747bf146101ce575f80fd5b3661014757005b5f80fd5b348015610156575f80fd5b5061017961016536600461130d565b60056020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610199575f80fd5b506101ad6101a836600461132d565b610421565b005b3480156101ba575f80fd5b506101ad6101c9366004611355565b610750565b3480156101d9575f80fd5b506002546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610185565b34801561022a575f80fd5b506101ad610a55565b34801561023e575f80fd5b5061024860015481565b604051908152602001610185565b348015610261575f80fd5b506003546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561028d575f80fd5b506101ad61029c3660046113a8565b610ac8565b3480156102ac575f80fd5b506101ad610ce2565b3480156102c0575f80fd5b5061024860045481565b3480156102d5575f80fd5b505f546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610300575f80fd5b506101ad61030f36600461130d565b610d53565b34801561031f575f80fd5b506101ad61032e36600461130d565b610e2f565b34801561033e575f80fd5b5061017961034d36600461130d565b73ffffffffffffffffffffffffffffffffffffffff165f9081526006602052604090205460ff1690565b348015610382575f80fd5b506101ad6103913660046113a8565b610ebd565b3480156103a1575f80fd5b506101796103b036600461130d565b60066020525f908152604090205460ff1681565b3480156103cf575f80fd5b506101ad6103de36600461130d565b611018565b3480156103ee575f80fd5b506101ad6103fd36600461130d565b6110ea565b34801561040d575f80fd5b506101ad61041c366004611355565b6111c6565b335f9081526005602052604090205460ff168061045457505f5473ffffffffffffffffffffffffffffffffffffffff1633145b6104a55760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821661052e5760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526006602052604090205460ff166105c85760405162461bcd60e51b815260206004820152602760248201527f4665655661756c743a20726563697069656e742061646472657373206e6f742060448201527f616c6c6f77656400000000000000000000000000000000000000000000000000606482015260840161049c565b478082111561063f5760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f207472616e7366657200000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517f0a429aba3d89849a2db0153e4534d95c46a1d83c8109d73893f55ebc44010ff49181900360600190a15f8373ffffffffffffffffffffffffffffffffffffffff16836040515f6040518083038185875af1925050503d805f81146106f4576040519150601f19603f3d011682016040523d82523d5f602084013e6106f9565b606091505b505090508061074a5760405162461bcd60e51b815260206004820152601d60248201527f4665655661756c743a20455448207472616e73666572206661696c6564000000604482015260640161049c565b50505050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146107b65760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b60035473ffffffffffffffffffffffffffffffffffffffff166108415760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b6001548110156108df5760405162461bcd60e51b815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a40161049c565b47808211156109565760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f20776974686472617700000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba9181900360600190a1600254600354604080516020810182525f80825291517fb2267a7b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9485169463b2267a7b948894610a23949190921692859290600401611498565b5f604051808303818588803b158015610a3a575f80fd5b505af1158015610a4c573d5f803e3d5ffd5b50505050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610abb5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b47610ac581610750565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610b2e5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610cdd575f73ffffffffffffffffffffffffffffffffffffffff16838281518110610b6257610b6261152e565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610bf35760405162461bcd60e51b815260206004820152602660248201527f4665655661756c743a20616464726573732063616e6e6f74206265206164647260448201527f6573732830290000000000000000000000000000000000000000000000000000606482015260840161049c565b8160065f858481518110610c0957610c0961152e565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbd84b6b3e1d029fd61a717f6020a8f35b358486e0971c00d4e64b516503f85e7838281518110610c9357610c9361152e565b602002602001015183604051610ccd92919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610b30565b505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610d485760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b610d515f611271565b565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610db95760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f1c928c417a10a21c3cddad148c5dba5d710e4b1442d6d8a36de345935ad84612905f90a35050565b335f9081526005602052604090205460ff1680610e6257505f5473ffffffffffffffffffffffffffffffffffffffff1633145b610eae5760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f77656400604482015260640161049c565b47610eb98282610421565b5050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610f235760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610cdd578160055f858481518110610f4457610f4461152e565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbb5d3e442e800faa1089a4f57bae4f36808d3cf15d051033d78a72147782f24c838281518110610fce57610fce61152e565b60200260200101518360405161100892919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610f25565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461107e5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff81166110e15760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f2061646472657373000000604482015260640161049c565b610ac581611271565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146111505760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f7e1e96961a397c8aa26162fe259cc837afc95e33aad4945ddc61c18dabb7a6ad905f90a35050565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461122c5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b600180549082905560408051828152602081018490527f0d3c80219fe57713b9f9c83d1e51426792d0c14d8e330e65b102571816140965910160405180910390a15050565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611308575f80fd5b919050565b5f6020828403121561131d575f80fd5b611326826112e5565b9392505050565b5f806040838503121561133e575f80fd5b611347836112e5565b946020939093013593505050565b5f60208284031215611365575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b80358015158114611308575f80fd5b5f80604083850312156113b9575f80fd5b823567ffffffffffffffff808211156113d0575f80fd5b818501915085601f8301126113e3575f80fd5b81356020828211156113f7576113f761136c565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110868211171561143a5761143a61136c565b604052928352818301935084810182019289841115611457575f80fd5b948201945b8386101561147c5761146d866112e5565b8552948201949382019361145c565b965061148b9050878201611399565b9450505050509250929050565b73ffffffffffffffffffffffffffffffffffffffff851681525f60208560208401526080604084015284518060808501525f5b818110156114e75786810183015185820160a0015282016114cb565b505f60a0828601015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a", + Bin: "0x608060405234801562000010575f80fd5b5060405162001950380380620019508339810160408190526200003391620000d3565b6200003e8362000068565b600155600380546001600160a01b0319166001600160a01b03929092169190911790555062000111565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b0381168114620000ce575f80fd5b919050565b5f805f60608486031215620000e6575f80fd5b620000f184620000b7565b92506200010160208501620000b7565b9150604084015190509250925092565b611831806200011f5f395ff3fe608060405260043610610140575f3560e01c806384411d65116100bb578063da13f9a211610071578063f2fde38b11610057578063f2fde38b146103c4578063feec756c146103e3578063ff4f354614610402575f80fd5b8063da13f9a214610377578063eff1337c14610396575f80fd5b80639e7adc79116100a15780639e7adc79146102f5578063a03fa7e314610314578063cc198d7414610333575f80fd5b806384411d65146102b55780638da5cb5b146102ca575f80fd5b80633ccfd60b1161011057806366d003ac116100f657806366d003ac14610256578063708125ad14610282578063715018a6146102a1575f80fd5b80633ccfd60b1461021f578063457e1a4914610233575f80fd5b8063151eeb551461014b5780632ccb1b301461018e5780632e1a7d4d146101af5780633cb747bf146101ce575f80fd5b3661014757005b5f80fd5b348015610156575f80fd5b506101796101653660046115d6565b60056020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610199575f80fd5b506101ad6101a83660046115f6565b610421565b005b3480156101ba575f80fd5b506101ad6101c936600461161e565b61074d565b3480156101d9575f80fd5b506002546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610185565b34801561022a575f80fd5b506101ad610add565b34801561023e575f80fd5b5061024860015481565b604051908152602001610185565b348015610261575f80fd5b506003546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561028d575f80fd5b506101ad61029c366004611671565b610b50565b3480156102ac575f80fd5b506101ad610d6a565b3480156102c0575f80fd5b5061024860045481565b3480156102d5575f80fd5b505f546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610300575f80fd5b506101ad61030f3660046115d6565b610ddb565b34801561031f575f80fd5b506101ad61032e3660046115d6565b610f40565b34801561033e575f80fd5b5061017961034d3660046115d6565b73ffffffffffffffffffffffffffffffffffffffff165f9081526006602052604090205460ff1690565b348015610382575f80fd5b506101ad610391366004611671565b610fce565b3480156103a1575f80fd5b506101796103b03660046115d6565b60066020525f908152604090205460ff1681565b3480156103cf575f80fd5b506101ad6103de3660046115d6565b6111e3565b3480156103ee575f80fd5b506101ad6103fd3660046115d6565b6112b5565b34801561040d575f80fd5b506101ad61041c36600461161e565b61141a565b335f9081526005602052604090205460ff168061045457505f5473ffffffffffffffffffffffffffffffffffffffff1633145b6104a55760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821661052e5760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526006602052604090205460ff166105c85760405162461bcd60e51b815260206004820152602760248201527f4665655661756c743a20726563697069656e742061646472657373206e6f742060448201527f616c6c6f77656400000000000000000000000000000000000000000000000000606482015260840161049c565b478082111561063f5760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f207472616e7366657200000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556040805183815273ffffffffffffffffffffffffffffffffffffffff85166020820152338183015290517f0a429aba3d89849a2db0153e4534d95c46a1d83c8109d73893f55ebc44010ff49181900360600190a15f8373ffffffffffffffffffffffffffffffffffffffff16836040515f6040518083038185875af1925050503d805f81146106f1576040519150601f19603f3d011682016040523d82523d5f602084013e6106f6565b606091505b50509050806107475760405162461bcd60e51b815260206004820152601d60248201527f4665655661756c743a20455448207472616e73666572206661696c6564000000604482015260640161049c565b50505050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146107b35760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b60025473ffffffffffffffffffffffffffffffffffffffff1661083e5760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a206d657373656e67657220616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b60035473ffffffffffffffffffffffffffffffffffffffff166108c95760405162461bcd60e51b815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f74206265206164647265737328302900000000000000000000000000000000606482015260840161049c565b6001548110156109675760405162461bcd60e51b815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a40161049c565b47808211156109de5760405162461bcd60e51b815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f20776974686472617700000000000000000000000000000000000000000000606482015260840161049c565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba9181900360600190a1600254600354604080516020810182525f80825291517fb2267a7b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9485169463b2267a7b948894610aab949190921692859290600401611761565b5f604051808303818588803b158015610ac2575f80fd5b505af1158015610ad4573d5f803e3d5ffd5b50505050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610b435760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b47610b4d8161074d565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610bb65760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610d65575f73ffffffffffffffffffffffffffffffffffffffff16838281518110610bea57610bea6117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610c7b5760405162461bcd60e51b815260206004820152602e60248201527f4665655661756c743a207265636569766520616464726573732063616e6e6f7460448201527f2062652061646472657373283029000000000000000000000000000000000000606482015260840161049c565b8160065f858481518110610c9157610c916117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbd84b6b3e1d029fd61a717f6020a8f35b358486e0971c00d4e64b516503f85e7838281518110610d1b57610d1b6117f7565b602002602001015183604051610d5592919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610bb8565b505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610dd05760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b610dd95f61153a565b565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610e415760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff8116610eca5760405162461bcd60e51b815260206004820152603460248201527f4665655661756c743a206e6577206d657373656e67657220616464726573732060448201527f63616e6e6f742062652061646472657373283029000000000000000000000000606482015260840161049c565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f1c928c417a10a21c3cddad148c5dba5d710e4b1442d6d8a36de345935ad84612905f90a35050565b335f9081526005602052604090205460ff1680610f7357505f5473ffffffffffffffffffffffffffffffffffffffff1633145b610fbf5760405162461bcd60e51b815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f77656400604482015260640161049c565b47610fca8282610421565b5050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146110345760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f5b8251811015610d65575f73ffffffffffffffffffffffffffffffffffffffff16838281518110611068576110686117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16036110f95760405162461bcd60e51b815260206004820152603760248201527f4665655661756c743a207472616e7366657220616c6c6f77656420616464726560448201527f73732063616e6e6f742062652061646472657373283029000000000000000000606482015260840161049c565b8160055f85848151811061110f5761110f6117f7565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbb5d3e442e800faa1089a4f57bae4f36808d3cf15d051033d78a72147782f24c838281518110611199576111996117f7565b6020026020010151836040516111d392919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101611036565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146112495760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff81166112ac5760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f2061646472657373000000604482015260640161049c565b610b4d8161153a565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461131b5760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b73ffffffffffffffffffffffffffffffffffffffff81166113a45760405162461bcd60e51b815260206004820152603460248201527f4665655661756c743a206e657720726563697069656e7420616464726573732060448201527f63616e6e6f742062652061646472657373283029000000000000000000000000606482015260840161049c565b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f7e1e96961a397c8aa26162fe259cc837afc95e33aad4945ddc61c18dabb7a6ad905f90a35050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146114805760405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604482015260640161049c565b5f81116114f55760405162461bcd60e51b815260206004820152603160248201527f4665655661756c743a206e6577206d696e696d756d207769746864726177206160448201527f6d6f756e742063616e6e6f742062652030000000000000000000000000000000606482015260840161049c565b600180549082905560408051828152602081018490527f0d3c80219fe57713b9f9c83d1e51426792d0c14d8e330e65b102571816140965910160405180910390a15050565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146115d1575f80fd5b919050565b5f602082840312156115e6575f80fd5b6115ef826115ae565b9392505050565b5f8060408385031215611607575f80fd5b611610836115ae565b946020939093013593505050565b5f6020828403121561162e575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b803580151581146115d1575f80fd5b5f8060408385031215611682575f80fd5b823567ffffffffffffffff80821115611699575f80fd5b818501915085601f8301126116ac575f80fd5b81356020828211156116c0576116c0611635565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110868211171561170357611703611635565b604052928352818301935084810182019289841115611720575f80fd5b948201945b8386101561174557611736866115ae565b85529482019493820193611725565b96506117549050878201611662565b9450505050509250929050565b73ffffffffffffffffffffffffffffffffffffffff851681525f60208560208401526080604084015284518060808501525f5b818110156117b05786810183015185820160a001528201611794565b505f60a0828601015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a", } // L2TxFeeVaultABI is the input ABI used to generate the binding from. diff --git a/bindings/bindings/l2txfeevault_more.go b/bindings/bindings/l2txfeevault_more.go index 5e8c0bfc6..fe5c98bd6 100644 --- a/bindings/bindings/l2txfeevault_more.go +++ b/bindings/bindings/l2txfeevault_more.go @@ -13,7 +13,7 @@ const L2TxFeeVaultStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\ var L2TxFeeVaultStorageLayout = new(solc.StorageLayout) -var L2TxFeeVaultDeployedBin = "0x608060405260043610610140575f3560e01c806384411d65116100bb578063da13f9a211610071578063f2fde38b11610057578063f2fde38b146103c4578063feec756c146103e3578063ff4f354614610402575f80fd5b8063da13f9a214610377578063eff1337c14610396575f80fd5b80639e7adc79116100a15780639e7adc79146102f5578063a03fa7e314610314578063cc198d7414610333575f80fd5b806384411d65146102b55780638da5cb5b146102ca575f80fd5b80633ccfd60b1161011057806366d003ac116100f657806366d003ac14610256578063708125ad14610282578063715018a6146102a1575f80fd5b80633ccfd60b1461021f578063457e1a4914610233575f80fd5b8063151eeb551461014b5780632ccb1b301461018e5780632e1a7d4d146101af5780633cb747bf146101ce575f80fd5b3661014757005b5f80fd5b348015610156575f80fd5b50610179610165366004611515565b60056020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610199575f80fd5b506101ad6101a8366004611535565b610421565b005b3480156101ba575f80fd5b506101ad6101c936600461155d565b6107d2565b3480156101d9575f80fd5b506002546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610185565b34801561022a575f80fd5b506101ad610b3f565b34801561023e575f80fd5b5061024860015481565b604051908152602001610185565b348015610261575f80fd5b506003546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561028d575f80fd5b506101ad61029c3660046115b0565b610bcc565b3480156102ac575f80fd5b506101ad610e1a565b3480156102c0575f80fd5b5061024860045481565b3480156102d5575f80fd5b505f546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610300575f80fd5b506101ad61030f366004611515565b610ea5565b34801561031f575f80fd5b506101ad61032e366004611515565b610f9b565b34801561033e575f80fd5b5061017961034d366004611515565b73ffffffffffffffffffffffffffffffffffffffff165f9081526006602052604090205460ff1690565b348015610382575f80fd5b506101ad6103913660046115b0565b611043565b3480156103a1575f80fd5b506101796103b0366004611515565b60066020525f908152604090205460ff1681565b3480156103cf575f80fd5b506101ad6103de366004611515565b6111b8565b3480156103ee575f80fd5b506101ad6103fd366004611515565b6112be565b34801561040d575f80fd5b506101ad61041c36600461155d565b6113b4565b335f9081526005602052604090205460ff168061045457505f5473ffffffffffffffffffffffffffffffffffffffff1633145b6104bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216610562576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f7420626520616464726573732830290000000000000000000000000000000060648201526084016104b6565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526006602052604090205460ff16610616576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4665655661756c743a20726563697069656e742061646472657373206e6f742060448201527f616c6c6f7765640000000000000000000000000000000000000000000000000060648201526084016104b6565b47808211156106a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f207472616e736665720000000000000000000000000000000000000000000060648201526084016104b6565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517f0a429aba3d89849a2db0153e4534d95c46a1d83c8109d73893f55ebc44010ff49181900360600190a15f8373ffffffffffffffffffffffffffffffffffffffff16836040515f6040518083038185875af1925050503d805f811461075c576040519150601f19603f3d011682016040523d82523d5f602084013e610761565b606091505b50509050806107cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f4665655661756c743a20455448207472616e73666572206661696c656400000060448201526064016104b6565b50505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610852576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b60035473ffffffffffffffffffffffffffffffffffffffff166108f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f7420626520616464726573732830290000000000000000000000000000000060648201526084016104b6565b6001548110156109af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4016104b6565b4780821115610a40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f2077697468647261770000000000000000000000000000000000000000000060648201526084016104b6565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba9181900360600190a1600254600354604080516020810182525f80825291517fb2267a7b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9485169463b2267a7b948894610b0d9491909216928592906004016116a0565b5f604051808303818588803b158015610b24575f80fd5b505af1158015610b36573d5f803e3d5ffd5b50505050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610bbf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b47610bc9816107d2565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610c4c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b5f5b8251811015610e15575f73ffffffffffffffffffffffffffffffffffffffff16838281518110610c8057610c80611736565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610d2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4665655661756c743a20616464726573732063616e6e6f74206265206164647260448201527f657373283029000000000000000000000000000000000000000000000000000060648201526084016104b6565b8160065f858481518110610d4157610d41611736565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbd84b6b3e1d029fd61a717f6020a8f35b358486e0971c00d4e64b516503f85e7838281518110610dcb57610dcb611736565b602002602001015183604051610e0592919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610c4e565b505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610e9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b610ea35f611479565b565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610f25576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f1c928c417a10a21c3cddad148c5dba5d710e4b1442d6d8a36de345935ad84612905f90a35050565b335f9081526005602052604090205460ff1680610fce57505f5473ffffffffffffffffffffffffffffffffffffffff1633145b611034576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064016104b6565b4761103f8282610421565b5050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146110c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b5f5b8251811015610e15578160055f8584815181106110e4576110e4611736565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbb5d3e442e800faa1089a4f57bae4f36808d3cf15d051033d78a72147782f24c83828151811061116e5761116e611736565b6020026020010151836040516111a892919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a16001016110c5565b5f5473ffffffffffffffffffffffffffffffffffffffff163314611238576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b73ffffffffffffffffffffffffffffffffffffffff81166112b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f206164647265737300000060448201526064016104b6565b610bc981611479565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461133e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f7e1e96961a397c8aa26162fe259cc837afc95e33aad4945ddc61c18dabb7a6ad905f90a35050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314611434576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b600180549082905560408051828152602081018490527f0d3c80219fe57713b9f9c83d1e51426792d0c14d8e330e65b102571816140965910160405180910390a15050565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611510575f80fd5b919050565b5f60208284031215611525575f80fd5b61152e826114ed565b9392505050565b5f8060408385031215611546575f80fd5b61154f836114ed565b946020939093013593505050565b5f6020828403121561156d575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b80358015158114611510575f80fd5b5f80604083850312156115c1575f80fd5b823567ffffffffffffffff808211156115d8575f80fd5b818501915085601f8301126115eb575f80fd5b81356020828211156115ff576115ff611574565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110868211171561164257611642611574565b60405292835281830193508481018201928984111561165f575f80fd5b948201945b8386101561168457611675866114ed565b85529482019493820193611664565b965061169390508782016115a1565b9450505050509250929050565b73ffffffffffffffffffffffffffffffffffffffff851681525f60208560208401526080604084015284518060808501525f5b818110156116ef5786810183015185820160a0015282016116d3565b505f60a0828601015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a" +var L2TxFeeVaultDeployedBin = "0x608060405260043610610140575f3560e01c806384411d65116100bb578063da13f9a211610071578063f2fde38b11610057578063f2fde38b146103c4578063feec756c146103e3578063ff4f354614610402575f80fd5b8063da13f9a214610377578063eff1337c14610396575f80fd5b80639e7adc79116100a15780639e7adc79146102f5578063a03fa7e314610314578063cc198d7414610333575f80fd5b806384411d65146102b55780638da5cb5b146102ca575f80fd5b80633ccfd60b1161011057806366d003ac116100f657806366d003ac14610256578063708125ad14610282578063715018a6146102a1575f80fd5b80633ccfd60b1461021f578063457e1a4914610233575f80fd5b8063151eeb551461014b5780632ccb1b301461018e5780632e1a7d4d146101af5780633cb747bf146101ce575f80fd5b3661014757005b5f80fd5b348015610156575f80fd5b50610179610165366004611860565b60056020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b348015610199575f80fd5b506101ad6101a8366004611880565b610421565b005b3480156101ba575f80fd5b506101ad6101c93660046118a8565b6107cf565b3480156101d9575f80fd5b506002546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610185565b34801561022a575f80fd5b506101ad610be1565b34801561023e575f80fd5b5061024860015481565b604051908152602001610185565b348015610261575f80fd5b506003546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561028d575f80fd5b506101ad61029c3660046118fb565b610c6e565b3480156102ac575f80fd5b506101ad610ebc565b3480156102c0575f80fd5b5061024860045481565b3480156102d5575f80fd5b505f546101fa9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610300575f80fd5b506101ad61030f366004611860565b610f47565b34801561031f575f80fd5b506101ad61032e366004611860565b6110e0565b34801561033e575f80fd5b5061017961034d366004611860565b73ffffffffffffffffffffffffffffffffffffffff165f9081526006602052604090205460ff1690565b348015610382575f80fd5b506101ad6103913660046118fb565b611188565b3480156103a1575f80fd5b506101796103b0366004611860565b60066020525f908152604090205460ff1681565b3480156103cf575f80fd5b506101ad6103de366004611860565b6113d1565b3480156103ee575f80fd5b506101ad6103fd366004611860565b6114d7565b34801561040d575f80fd5b506101ad61041c3660046118a8565b611670565b335f9081526005602052604090205460ff168061045457505f5473ffffffffffffffffffffffffffffffffffffffff1633145b6104bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216610562576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f7420626520616464726573732830290000000000000000000000000000000060648201526084016104b6565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526006602052604090205460ff16610616576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4665655661756c743a20726563697069656e742061646472657373206e6f742060448201527f616c6c6f7765640000000000000000000000000000000000000000000000000060648201526084016104b6565b47808211156106a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f207472616e736665720000000000000000000000000000000000000000000060648201526084016104b6565b60048054830190556040805183815273ffffffffffffffffffffffffffffffffffffffff85166020820152338183015290517f0a429aba3d89849a2db0153e4534d95c46a1d83c8109d73893f55ebc44010ff49181900360600190a15f8373ffffffffffffffffffffffffffffffffffffffff16836040515f6040518083038185875af1925050503d805f8114610759576040519150601f19603f3d011682016040523d82523d5f602084013e61075e565b606091505b50509050806107c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f4665655661756c743a20455448207472616e73666572206661696c656400000060448201526064016104b6565b50505050565b5f5473ffffffffffffffffffffffffffffffffffffffff16331461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b60025473ffffffffffffffffffffffffffffffffffffffff166108f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206d657373656e67657220616464726573732063616e6e60448201527f6f7420626520616464726573732830290000000000000000000000000000000060648201526084016104b6565b60035473ffffffffffffffffffffffffffffffffffffffff16610999576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a20726563697069656e7420616464726573732063616e6e60448201527f6f7420626520616464726573732830290000000000000000000000000000000060648201526084016104b6565b600154811015610a51576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4016104b6565b4780821115610ae2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4665655661756c743a20696e73756666696369656e742062616c616e6365207460448201527f6f2077697468647261770000000000000000000000000000000000000000000060648201526084016104b6565b60048054830190556003546040805184815273ffffffffffffffffffffffffffffffffffffffff90921660208301523382820152517fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba9181900360600190a1600254600354604080516020810182525f80825291517fb2267a7b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9485169463b2267a7b948894610baf9491909216928592906004016119eb565b5f604051808303818588803b158015610bc6575f80fd5b505af1158015610bd8573d5f803e3d5ffd5b50505050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610c61576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b47610c6b816107cf565b50565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610cee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b5f5b8251811015610eb7575f73ffffffffffffffffffffffffffffffffffffffff16838281518110610d2257610d22611a81565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610dcd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4665655661756c743a207265636569766520616464726573732063616e6e6f7460448201527f206265206164647265737328302900000000000000000000000000000000000060648201526084016104b6565b8160065f858481518110610de357610de3611a81565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbd84b6b3e1d029fd61a717f6020a8f35b358486e0971c00d4e64b516503f85e7838281518110610e6d57610e6d611a81565b602002602001015183604051610ea792919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a1600101610cf0565b505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610f3c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b610f455f6117c4565b565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610fc7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b73ffffffffffffffffffffffffffffffffffffffff811661106a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f4665655661756c743a206e6577206d657373656e67657220616464726573732060448201527f63616e6e6f74206265206164647265737328302900000000000000000000000060648201526084016104b6565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f1c928c417a10a21c3cddad148c5dba5d710e4b1442d6d8a36de345935ad84612905f90a35050565b335f9081526005602052604090205460ff168061111357505f5473ffffffffffffffffffffffffffffffffffffffff1633145b611179576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4665655661756c743a2063616c6c6572206973206e6f7420616c6c6f7765640060448201526064016104b6565b476111848282610421565b5050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314611208576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b5f5b8251811015610eb7575f73ffffffffffffffffffffffffffffffffffffffff1683828151811061123c5761123c611a81565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16036112e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4665655661756c743a207472616e7366657220616c6c6f77656420616464726560448201527f73732063616e6e6f74206265206164647265737328302900000000000000000060648201526084016104b6565b8160055f8584815181106112fd576112fd611a81565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fbb5d3e442e800faa1089a4f57bae4f36808d3cf15d051033d78a72147782f24c83828151811061138757611387611a81565b6020026020010151836040516113c192919073ffffffffffffffffffffffffffffffffffffffff9290921682521515602082015260400190565b60405180910390a160010161120a565b5f5473ffffffffffffffffffffffffffffffffffffffff163314611451576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b73ffffffffffffffffffffffffffffffffffffffff81166114ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f206164647265737300000060448201526064016104b6565b610c6b816117c4565b5f5473ffffffffffffffffffffffffffffffffffffffff163314611557576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b73ffffffffffffffffffffffffffffffffffffffff81166115fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f4665655661756c743a206e657720726563697069656e7420616464726573732060448201527f63616e6e6f74206265206164647265737328302900000000000000000000000060648201526084016104b6565b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f7e1e96961a397c8aa26162fe259cc837afc95e33aad4945ddc61c18dabb7a6ad905f90a35050565b5f5473ffffffffffffffffffffffffffffffffffffffff1633146116f0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016104b6565b5f811161177f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f4665655661756c743a206e6577206d696e696d756d207769746864726177206160448201527f6d6f756e742063616e6e6f74206265203000000000000000000000000000000060648201526084016104b6565b600180549082905560408051828152602081018490527f0d3c80219fe57713b9f9c83d1e51426792d0c14d8e330e65b102571816140965910160405180910390a15050565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461185b575f80fd5b919050565b5f60208284031215611870575f80fd5b61187982611838565b9392505050565b5f8060408385031215611891575f80fd5b61189a83611838565b946020939093013593505050565b5f602082840312156118b8575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b8035801515811461185b575f80fd5b5f806040838503121561190c575f80fd5b823567ffffffffffffffff80821115611923575f80fd5b818501915085601f830112611936575f80fd5b813560208282111561194a5761194a6118bf565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110868211171561198d5761198d6118bf565b6040529283528183019350848101820192898411156119aa575f80fd5b948201945b838610156119cf576119c086611838565b855294820194938201936119af565b96506119de90508782016118ec565b9450505050509250929050565b73ffffffffffffffffffffffffffffffffffffffff851681525f60208560208401526080604084015284518060808501525f5b81811015611a3a5786810183015185820160a001528201611a1e565b505f60a0828601015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L2TxFeeVaultStorageLayoutJSON), L2TxFeeVaultStorageLayout); err != nil { diff --git a/contracts/contracts/l2/system/L2TxFeeVault.sol b/contracts/contracts/l2/system/L2TxFeeVault.sol index 0c10c0128..84dd2a181 100644 --- a/contracts/contracts/l2/system/L2TxFeeVault.sol +++ b/contracts/contracts/l2/system/L2TxFeeVault.sol @@ -134,6 +134,7 @@ contract L2TxFeeVault is OwnableBase { /// @notice Triggers a withdrawal of funds to the L1 fee wallet. /// @param _value The amount of ETH to withdraw. function withdraw(uint256 _value) public onlyOwner { + require(messenger != address(0), "FeeVault: messenger address cannot be address(0)"); require(recipient != address(0), "FeeVault: recipient address cannot be address(0)"); require( _value >= minWithdrawAmount, @@ -178,7 +179,7 @@ contract L2TxFeeVault is OwnableBase { totalProcessed += _value; } - emit Transfer(_value, recipient, msg.sender); + emit Transfer(_value, _to, msg.sender); (bool success, ) = _to.call{value: _value}(""); require(success, "FeeVault: ETH transfer failed"); } @@ -199,6 +200,7 @@ contract L2TxFeeVault is OwnableBase { /// @param _status The transfer allowed status to update. function updateTransferAllowedStatus(address[] memory _accounts, bool _status) external onlyOwner { for (uint256 i = 0; i < _accounts.length; i++) { + require(_accounts[i] != address(0), "FeeVault: transfer allowed address cannot be address(0)"); transferAllowed[_accounts[i]] = _status; emit UpdateTransferAllowed(_accounts[i], _status); } @@ -209,7 +211,7 @@ contract L2TxFeeVault is OwnableBase { /// @param _status The receive allowed status to update. function updateReceiveAllowed(address[] memory _accounts, bool _status) external onlyOwner { for (uint256 i = 0; i < _accounts.length; i++) { - require(_accounts[i] != address(0), "FeeVault: address cannot be address(0)"); + require(_accounts[i] != address(0), "FeeVault: receive address cannot be address(0)"); receiveAllowed[_accounts[i]] = _status; emit UpdateReceiveAllowed(_accounts[i], _status); } @@ -218,6 +220,7 @@ contract L2TxFeeVault is OwnableBase { /// @notice Update the address of messenger. /// @param _newMessenger The address of messenger to update. function updateMessenger(address _newMessenger) external onlyOwner { + require(_newMessenger != address(0), "FeeVault: new messenger address cannot be address(0)"); address _oldMessenger = messenger; messenger = _newMessenger; @@ -227,6 +230,7 @@ contract L2TxFeeVault is OwnableBase { /// @notice Update the address of recipient. /// @param _newRecipient The address of recipient to update. function updateRecipient(address _newRecipient) external onlyOwner { + require(_newRecipient != address(0), "FeeVault: new recipient address cannot be address(0)"); address _oldRecipient = recipient; recipient = _newRecipient; @@ -236,6 +240,7 @@ contract L2TxFeeVault is OwnableBase { /// @notice Update the minimum withdraw amount. /// @param _newMinWithdrawAmount The minimum withdraw amount to update. function updateMinWithdrawAmount(uint256 _newMinWithdrawAmount) external onlyOwner { + require(_newMinWithdrawAmount > 0, "FeeVault: new minimum withdraw amount cannot be 0"); uint256 _oldMinWithdrawAmount = minWithdrawAmount; minWithdrawAmount = _newMinWithdrawAmount; diff --git a/contracts/contracts/test/L2TxFeeVault.t.sol b/contracts/contracts/test/L2TxFeeVault.t.sol index e8575e2d1..c56e9eca8 100644 --- a/contracts/contracts/test/L2TxFeeVault.t.sol +++ b/contracts/contracts/test/L2TxFeeVault.t.sol @@ -73,12 +73,6 @@ contract L2TxFeeVaultTest is DSTestPlus { vault.withdraw(amount); } - function test_withdraw_zeroReceiptAddress_reverts() public { - vault.updateRecipient(address(0)); - hevm.expectRevert("FeeVault: recipient address cannot be address(0)"); - vault.withdraw(); - } - function test_withdrawOnce_succeeds() public { hevm.deal(address(vault), 11 ether); @@ -251,7 +245,7 @@ contract L2TxFeeVaultTest is DSTestPlus { hevm.deal(address(vault), 11 ether); hevm.expectEmit(true, true, true, true); - emit L2TxFeeVault.Transfer(address(vault).balance, vault.recipient(), address(this)); + emit L2TxFeeVault.Transfer(address(vault).balance, to, address(this)); vault.transferTo(to); assertEq(address(to).balance, 11 ether); @@ -275,7 +269,7 @@ contract L2TxFeeVaultTest is DSTestPlus { hevm.deal(address(vault), 11 ether); hevm.expectEmit(true, true, true, true); - emit L2TxFeeVault.Transfer(address(vault).balance, vault.recipient(), allowed); + emit L2TxFeeVault.Transfer(address(vault).balance, to, allowed); hevm.prank(allowed); vault.transferTo(to); @@ -291,14 +285,14 @@ contract L2TxFeeVaultTest is DSTestPlus { hevm.deal(address(vault), 20 ether); hevm.expectEmit(true, true, true, true); - emit L2TxFeeVault.Transfer(10 ether, vault.recipient(), address(this)); + emit L2TxFeeVault.Transfer(10 ether, to, address(this)); vault.transferTo(to, 10 ether); assertEq(address(to).balance, 10 ether); assertEq(address(vault).balance, 10 ether); hevm.expectEmit(true, true, true, true); - emit L2TxFeeVault.Transfer(5 ether, vault.recipient(), address(this)); + emit L2TxFeeVault.Transfer(5 ether, to, address(this)); vault.transferTo(to, 5 ether); assertEq(address(to).balance, 15 ether); @@ -326,13 +320,13 @@ contract L2TxFeeVaultTest is DSTestPlus { function test_updateTransferAllowedStatus_withZeroAddress_succeeds() public { address[] memory allowedTransfer = new address[](1); - allowedTransfer[0] = address(0); + allowedTransfer[0] = address(1); hevm.expectEmit(true, true, true, true); emit L2TxFeeVault.UpdateTransferAllowed(allowedTransfer[0], true); vault.updateTransferAllowedStatus(allowedTransfer, true); - assertTrue(vault.transferAllowed(address(0))); + assertTrue(vault.transferAllowed(address(1))); } function test_updateReceiveAllowed_notOwner_reverts() public { @@ -347,7 +341,7 @@ contract L2TxFeeVaultTest is DSTestPlus { address[] memory allowedReceive = new address[](1); allowedReceive[0] = address(0); - hevm.expectRevert("FeeVault: address cannot be address(0)"); + hevm.expectRevert("FeeVault: receive address cannot be address(0)"); vault.updateReceiveAllowed(allowedReceive, true); } @@ -419,7 +413,7 @@ contract L2TxFeeVaultTest is DSTestPlus { function test_updateMinWithdrawAmount_zeroMinWithdrawAmount_succeeds() public { uint256 oldAmount = vault.minWithdrawAmount(); - uint256 newAmount = 0 ether; + uint256 newAmount = 1 ether; hevm.expectEmit(true, true, true, true); emit L2TxFeeVault.UpdateMinWithdrawAmount(oldAmount, newAmount); From 7e788c9e6cd215c8dbd2a0d874f0bbf3dedfb96f Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Mon, 23 Dec 2024 17:57:57 +0800 Subject: [PATCH 22/33] feat(tx-submitter): add tip fee bump functionality (#682) Co-authored-by: WorldDogs --- tx-submitter/entry.go | 4 + tx-submitter/flags/flags.go | 33 ++++++-- tx-submitter/mock/l1mock.go | 87 +++++++++++++++++++++ tx-submitter/services/rollup.go | 47 ++++++++---- tx-submitter/services/rollup_test.go | 110 ++++++++++++++++++++++++++- tx-submitter/utils/config.go | 15 ++-- 6 files changed, 269 insertions(+), 27 deletions(-) create mode 100644 tx-submitter/mock/l1mock.go diff --git a/tx-submitter/entry.go b/tx-submitter/entry.go index 2687ed8e3..aa639ea9d 100644 --- a/tx-submitter/entry.go +++ b/tx-submitter/entry.go @@ -69,6 +69,10 @@ func Main() func(ctx *cli.Context) error { "rough_estimate_per_l1_msg", cfg.RollupTxGasPerL1Msg, "log_level", cfg.LogLevel, "leveldb_pathname", cfg.LeveldbPathName, + "min_tip", cfg.MinTip, + "max_tip", cfg.MaxTip, + "max_base", cfg.MaxBaseFee, + "tip_bump", cfg.TipFeeBump, ) ctx, cancel := context.WithCancel(context.Background()) diff --git a/tx-submitter/flags/flags.go b/tx-submitter/flags/flags.go index 041cf2db5..e7de38ff6 100644 --- a/tx-submitter/flags/flags.go +++ b/tx-submitter/flags/flags.go @@ -214,11 +214,29 @@ var ( Value: "StakingEventStore.json", } - CalldataFeeBumpFlag = cli.Uint64Flag{ - Name: "call_data_fee_bump", - Usage: "The fee bump for call data", - Value: 100, //fee = x * origin_fee/100 - EnvVar: prefixEnvVar("CALL_DATA_FEE_BUMP"), + TipFeeBumpFlag = cli.Uint64Flag{ + Name: "TIP_FEE_BUMP", + Usage: "The fee bump for tip", + Value: 120, //bumpTip = tip * TipFeeBump/100 + EnvVar: prefixEnvVar("TIP_FEE_BUMP"), + } + MaxTipFlag = cli.Uint64Flag{ + Name: "max_tip", + Usage: "The maximum tip for a transaction", + Value: 10e9, //10gwei + EnvVar: prefixEnvVar("MAX_TIP"), + } + MinTipFlag = cli.Uint64Flag{ + Name: "min_tip", + Usage: "The minimum tip for a transaction", + Value: 5e8, //0.5gwei + EnvVar: prefixEnvVar("MIN_TIP"), + } + MaxBaseFeeFlag = cli.Uint64Flag{ + Name: "max_base_fee", + Usage: "The maximum base fee for a transaction", + Value: 100e9, //100gwei + EnvVar: prefixEnvVar("MAX_BASE_FEE"), } MaxTxsInPendingPoolFlag = cli.Uint64Flag{ @@ -345,7 +363,10 @@ var optionalFlags = []cli.Flag{ PrivateKeyFlag, L2SequencerAddressFlag, L2GovAddressFlag, - CalldataFeeBumpFlag, + TipFeeBumpFlag, + MaxTipFlag, + MinTipFlag, + MaxBaseFeeFlag, MaxTxsInPendingPoolFlag, // external sign diff --git a/tx-submitter/mock/l1mock.go b/tx-submitter/mock/l1mock.go new file mode 100644 index 000000000..10dccef62 --- /dev/null +++ b/tx-submitter/mock/l1mock.go @@ -0,0 +1,87 @@ +package mock + +import ( + "context" + "math/big" + + "github.com/morph-l2/go-ethereum" + "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/core/types" +) + +type L1ClientWrapper struct { + Block *types.Block + TipCap *big.Int +} + +func NewL1ClientWrapper() *L1ClientWrapper { + return &L1ClientWrapper{} +} + +func (c *L1ClientWrapper) BlockByNumber(ctx context.Context, number *big.Int) (*types.Block, error) { + return nil, nil +} + +func (c *L1ClientWrapper) BalanceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) { + return big.NewInt(0), nil +} + +func (c *L1ClientWrapper) TransactionByHash(ctx context.Context, hash common.Hash) (tx *types.Transaction, isPending bool, err error) { + return nil, false, nil +} + +func (c *L1ClientWrapper) NonceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (uint64, error) { + return 0, nil +} + +func (c *L1ClientWrapper) TransactionReceipt(ctx context.Context, txHash common.Hash) (*types.Receipt, error) { + return nil, nil +} + +func (c *L1ClientWrapper) HeaderByNumber(ctx context.Context, number *big.Int) (*types.Header, error) { + return c.Block.Header(), nil +} + +func (c *L1ClientWrapper) BlockNumber(ctx context.Context) (uint64, error) { + return c.Block.NumberU64(), nil +} + +func (c *L1ClientWrapper) SubscribeNewHead(ctx context.Context, ch chan<- *types.Header) (ethereum.Subscription, error) { + ch <- c.Block.Header() + return nil, nil +} + +func (c *L1ClientWrapper) SetBlock(block *types.Block) { + c.Block = block +} +func (c *L1ClientWrapper) CodeAt(ctx context.Context, contract common.Address, blockNumber *big.Int) ([]byte, error) { + return nil, nil +} + +func (c *L1ClientWrapper) CallContract(ctx context.Context, call ethereum.CallMsg, blockNumber *big.Int) ([]byte, error) { + return nil, nil +} +func (c *L1ClientWrapper) PendingCodeAt(ctx context.Context, account common.Address) ([]byte, error) { + return nil, nil +} +func (c *L1ClientWrapper) PendingNonceAt(ctx context.Context, account common.Address) (uint64, error) { + return 0, nil +} +func (c *L1ClientWrapper) SuggestGasPrice(ctx context.Context) (*big.Int, error) { + return big.NewInt(0), nil +} +func (c *L1ClientWrapper) SuggestGasTipCap(ctx context.Context) (*big.Int, error) { + return c.TipCap, nil +} +func (c *L1ClientWrapper) EstimateGas(ctx context.Context, call ethereum.CallMsg) (gas uint64, err error) { + return 0, nil +} +func (c *L1ClientWrapper) SendTransaction(ctx context.Context, tx *types.Transaction) error { + return nil +} +func (c *L1ClientWrapper) FilterLogs(ctx context.Context, query ethereum.FilterQuery) ([]types.Log, error) { + return nil, nil +} +func (c *L1ClientWrapper) SubscribeFilterLogs(ctx context.Context, query ethereum.FilterQuery, ch chan<- types.Log) (ethereum.Subscription, error) { + return nil, nil +} diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index d944b5bd4..995906ec8 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -849,14 +849,32 @@ func (r *Rollup) buildSignatureInput(batch *eth.RPCRollupBatch) (*bindings.IRoll } func (r *Rollup) GetGasTipAndCap() (*big.Int, *big.Int, *big.Int, error) { - tip, err := r.L1Client.SuggestGasTipCap(context.Background()) + + head, err := r.L1Client.HeaderByNumber(context.Background(), nil) if err != nil { return nil, nil, nil, err } - head, err := r.L1Client.HeaderByNumber(context.Background(), nil) + if head.BaseFee != nil { + log.Info("market fee info", "feecap", head.BaseFee) + if r.cfg.MaxBaseFee > 0 && head.BaseFee.Cmp(big.NewInt(int64(r.cfg.MaxBaseFee))) > 0 { + return nil, nil, nil, fmt.Errorf("base fee is too high, base fee %v exceeds max %v", head.BaseFee, r.cfg.MaxBaseFee) + } + } + + tip, err := r.L1Client.SuggestGasTipCap(context.Background()) if err != nil { return nil, nil, nil, err } + log.Info("market fee info", "tip", tip) + + if r.cfg.TipFeeBump > 0 { + tip = new(big.Int).Mul(tip, big.NewInt(int64(r.cfg.TipFeeBump))) + tip = new(big.Int).Div(tip, big.NewInt(100)) + } + if r.cfg.MaxTip > 0 && tip.Cmp(big.NewInt(int64(r.cfg.MaxTip))) > 0 { + return nil, nil, nil, fmt.Errorf("tip is too high, tip %v exceeds max %v", tip, r.cfg.MaxTip) + } + var gasFeeCap *big.Int if head.BaseFee != nil { gasFeeCap = new(big.Int).Add( @@ -873,15 +891,11 @@ func (r *Rollup) GetGasTipAndCap() (*big.Int, *big.Int, *big.Int, error) { blobFee = eip4844.CalcBlobFee(*head.ExcessBlobGas) } - //calldata fee bump x*fee/100 - if r.cfg.CalldataFeeBump > 0 { - // feecap - gasFeeCap = new(big.Int).Mul(gasFeeCap, big.NewInt(int64(r.cfg.CalldataFeeBump))) - gasFeeCap = new(big.Int).Div(gasFeeCap, big.NewInt(100)) - // tip - tip = new(big.Int).Mul(tip, big.NewInt(int64(r.cfg.CalldataFeeBump))) - tip = new(big.Int).Div(tip, big.NewInt(100)) - } + log.Info("fee info after bump", + "tip", tip, + "feecap", gasFeeCap, + "blobfee", blobFee, + ) return tip, gasFeeCap, blobFee, nil } @@ -1099,7 +1113,7 @@ func (r *Rollup) SendTx(tx *types.Transaction) error { return errors.New("nil tx") } // l1 health check - if !r.bm.IsGrowth() { + if r.bm != nil && !r.bm.IsGrowth() { return fmt.Errorf("block not growth in %d blocks time", r.cfg.BlockNotIncreasedThreshold) } @@ -1110,7 +1124,9 @@ func (r *Rollup) SendTx(tx *types.Transaction) error { // after send tx // add to pending txs - r.pendingTxs.Add(tx) + if r.pendingTxs != nil { + r.pendingTxs.Add(tx) + } return nil @@ -1183,6 +1199,11 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *types.Transaction) (*types.Transact blobFeeCap = bumpedBlobFeeCap } } + + if r.cfg.MinTip > 0 && tip.Cmp(big.NewInt(int64(r.cfg.MinTip))) < 0 { + log.Info("replace tip is too low, update tip to min tip ", "tip", tip, "min_tip", r.cfg.MinTip) + tip = big.NewInt(int64(r.cfg.MinTip)) + } } var newTx *types.Transaction diff --git a/tx-submitter/services/rollup_test.go b/tx-submitter/services/rollup_test.go index 3476d8f8f..390ddaec6 100644 --- a/tx-submitter/services/rollup_test.go +++ b/tx-submitter/services/rollup_test.go @@ -1,15 +1,19 @@ package services import ( + "context" "math/big" "testing" - "github.com/holiman/uint256" + "morph-l2/tx-submitter/mock" + "morph-l2/tx-submitter/utils" + "github.com/morph-l2/go-ethereum/common" "github.com/morph-l2/go-ethereum/core/types" - "github.com/stretchr/testify/require" + "github.com/morph-l2/go-ethereum/crypto" - "morph-l2/tx-submitter/utils" + "github.com/holiman/uint256" + "github.com/stretchr/testify/require" ) func TestSendTx(t *testing.T) { @@ -49,3 +53,103 @@ func TestSendTx(t *testing.T) { err = sendTx(nil, 1, blobTx) require.ErrorContains(t, err, utils.ErrExceedFeeLimit.Error()) } + +func TestGetGasTipAndCap(t *testing.T) { + l1Mock := mock.NewL1ClientWrapper() + initTip := big.NewInt(1e9) + + baseFee := big.NewInt(1e9) + excessBlobGas := uint64(1) + block := types.NewBlockWithHeader( + &types.Header{ + BaseFee: baseFee, + ExcessBlobGas: &excessBlobGas, + }, + ) + l1Mock.TipCap = initTip + l1Mock.Block = block + config := utils.Config{ + MaxTip: 10e9, + MaxBaseFee: 100e9, + MinTip: 1e9, + TipFeeBump: 100, + } + r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + tip, feecap, blobfee, err := r.GetGasTipAndCap() + require.NoError(t, err) + require.NotNil(t, tip) + require.NotNil(t, feecap) + require.NotNil(t, blobfee) + require.Equal(t, initTip, tip) + + config = utils.Config{ + MaxTip: 10e9, + MaxBaseFee: 100e9, + MinTip: 1e9, + TipFeeBump: 200, + } + r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + tip, feecap, blobfee, err = r.GetGasTipAndCap() + require.NoError(t, err) + require.NotNil(t, tip) + require.NotNil(t, feecap) + require.NotNil(t, blobfee) + require.Equal(t, tip, initTip.Mul(initTip, big.NewInt(2))) + + config = utils.Config{ + MaxTip: 10e9, + MaxBaseFee: baseFee.Uint64() - 1, + MinTip: 1e9, + TipFeeBump: 200, + } + r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + _, _, _, err = r.GetGasTipAndCap() + require.ErrorContains(t, err, "base fee is too high") + + config = utils.Config{ + MaxTip: initTip.Uint64() - 1, + MaxBaseFee: 100e9, + MinTip: 1e9, + TipFeeBump: 200, + } + r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + _, _, _, err = r.GetGasTipAndCap() + require.ErrorContains(t, err, "tip is too high") + +} + +func TestReSubmitTx(t *testing.T) { + l1Mock := mock.NewL1ClientWrapper() + initTip := big.NewInt(1e9) + + baseFee := big.NewInt(1e9) + excessBlobGas := uint64(1) + block := types.NewBlockWithHeader( + &types.Header{ + BaseFee: baseFee, + ExcessBlobGas: &excessBlobGas, + }, + ) + l1Mock.TipCap = initTip + l1Mock.Block = block + config := utils.Config{ + MaxTip: 10e12, + MaxBaseFee: 100e9, + MinTip: 1e10, + TipFeeBump: 100, + } + + priv, err := crypto.GenerateKey() + require.NoError(t, err) + + r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, big.NewInt(1), priv, common.Address{}, nil, config, nil, nil, nil, nil) + _, err = r.ReSubmitTx(false, nil) + require.ErrorContains(t, err, "nil tx") + oldTx := types.NewTx(&types.DynamicFeeTx{ + GasTipCap: initTip, + }) + tx, err := r.ReSubmitTx(false, oldTx) + require.NoError(t, err) + require.EqualValues(t, config.MinTip, tx.GasTipCap().Uint64()) + +} diff --git a/tx-submitter/utils/config.go b/tx-submitter/utils/config.go index 30decb206..31bd9c9ea 100644 --- a/tx-submitter/utils/config.go +++ b/tx-submitter/utils/config.go @@ -82,8 +82,11 @@ type Config struct { // journal file path JournalFilePath string - // calldata fee bump - CalldataFeeBump uint64 + // tip bump + TipFeeBump uint64 + MaxTip uint64 + MinTip uint64 + MaxBaseFee uint64 //max txs in pendingpool MaxTxsInPendingPool uint64 @@ -151,9 +154,11 @@ func NewConfig(ctx *cli.Context) (Config, error) { GasLimitBuffer: ctx.GlobalUint64(flags.GasLimitBuffer.Name), - JournalFilePath: ctx.GlobalString(flags.JournalFlag.Name), - // calldata fee bump - CalldataFeeBump: ctx.GlobalUint64(flags.CalldataFeeBumpFlag.Name), + JournalFilePath: ctx.GlobalString(flags.JournalFlag.Name), + TipFeeBump: ctx.GlobalUint64(flags.TipFeeBumpFlag.Name), + MaxTip: ctx.GlobalUint64(flags.MaxTipFlag.Name), + MinTip: ctx.GlobalUint64(flags.MinTipFlag.Name), + MaxBaseFee: ctx.GlobalUint64(flags.MaxBaseFeeFlag.Name), MaxTxsInPendingPool: ctx.GlobalUint64(flags.MaxTxsInPendingPoolFlag.Name), // external sign From 87a70f1a4eef688501c74e63f08572697d3d34b8 Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Mon, 23 Dec 2024 18:25:00 +0800 Subject: [PATCH 23/33] Fix submitter testcase (#687) --- tx-submitter/services/rollup_test.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tx-submitter/services/rollup_test.go b/tx-submitter/services/rollup_test.go index 390ddaec6..b8045b4ab 100644 --- a/tx-submitter/services/rollup_test.go +++ b/tx-submitter/services/rollup_test.go @@ -74,7 +74,7 @@ func TestGetGasTipAndCap(t *testing.T) { MinTip: 1e9, TipFeeBump: 100, } - r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) tip, feecap, blobfee, err := r.GetGasTipAndCap() require.NoError(t, err) require.NotNil(t, tip) @@ -88,7 +88,7 @@ func TestGetGasTipAndCap(t *testing.T) { MinTip: 1e9, TipFeeBump: 200, } - r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) tip, feecap, blobfee, err = r.GetGasTipAndCap() require.NoError(t, err) require.NotNil(t, tip) @@ -102,7 +102,7 @@ func TestGetGasTipAndCap(t *testing.T) { MinTip: 1e9, TipFeeBump: 200, } - r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) _, _, _, err = r.GetGasTipAndCap() require.ErrorContains(t, err, "base fee is too high") @@ -112,7 +112,7 @@ func TestGetGasTipAndCap(t *testing.T) { MinTip: 1e9, TipFeeBump: 200, } - r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil) + r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) _, _, _, err = r.GetGasTipAndCap() require.ErrorContains(t, err, "tip is too high") @@ -142,7 +142,7 @@ func TestReSubmitTx(t *testing.T) { priv, err := crypto.GenerateKey() require.NoError(t, err) - r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, big.NewInt(1), priv, common.Address{}, nil, config, nil, nil, nil, nil) + r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, big.NewInt(1), priv, common.Address{}, nil, config, nil, nil, nil, nil, nil) _, err = r.ReSubmitTx(false, nil) require.ErrorContains(t, err, "nil tx") oldTx := types.NewTx(&types.DynamicFeeTx{ From 03a738c99ad6c3794138c2246ee62b8a1ab5f5ef Mon Sep 17 00:00:00 2001 From: FletcherMan Date: Wed, 25 Dec 2024 09:02:10 +0800 Subject: [PATCH 24/33] update go-ethereum dependency --- Makefile | 2 +- bindings/go.mod | 2 +- bindings/go.sum | 4 ++-- contracts/go.mod | 2 +- contracts/go.sum | 4 ++-- go-ethereum | 2 +- node/go.mod | 2 +- node/go.sum | 4 ++-- ops/l2-genesis/go.mod | 2 +- ops/l2-genesis/go.sum | 4 ++-- ops/tools/go.mod | 2 +- ops/tools/go.sum | 4 ++-- oracle/go.mod | 2 +- oracle/go.sum | 4 ++-- tx-submitter/go.mod | 2 +- tx-submitter/go.sum | 4 ++-- 16 files changed, 23 insertions(+), 23 deletions(-) diff --git a/Makefile b/Makefile index 92026b225..738a8cb43 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ ################## update dependencies #################### -ETHEREUM_TARGET_VERSION := v1.10.14-0.20241105040223-5c7f1bb7073e +ETHEREUM_TARGET_VERSION := morph-v2.0.2 TENDERMINT_TARGET_VERSION := v0.3.1 ETHEREUM_MODULE_NAME := github.com/morph-l2/go-ethereum diff --git a/bindings/go.mod b/bindings/go.mod index 27f5875bd..e0f3d216f 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -4,7 +4,7 @@ go 1.22 replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 -require github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e +require github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 require ( github.com/VictoriaMetrics/fastcache v1.12.2 // indirect diff --git a/bindings/go.sum b/bindings/go.sum index 6c525f26a..5a9338bd5 100644 --- a/bindings/go.sum +++ b/bindings/go.sum @@ -109,8 +109,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= diff --git a/contracts/go.mod b/contracts/go.mod index 783504b76..89ed070fd 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -6,7 +6,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/iden3/go-iden3-crypto v0.0.16 - github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e + github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 github.com/stretchr/testify v1.9.0 ) diff --git a/contracts/go.sum b/contracts/go.sum index 71bfe5ece..d1e725408 100644 --- a/contracts/go.sum +++ b/contracts/go.sum @@ -25,8 +25,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= diff --git a/go-ethereum b/go-ethereum index 5c7f1bb70..50a1ac889 160000 --- a/go-ethereum +++ b/go-ethereum @@ -1 +1 @@ -Subproject commit 5c7f1bb7073ef2c88ea52d00e217b60d34ff221f +Subproject commit 50a1ac889263e5063dc21ab747800bf7b2f4fe65 diff --git a/node/go.mod b/node/go.mod index dae5dc141..4ae03e3df 100644 --- a/node/go.mod +++ b/node/go.mod @@ -10,7 +10,7 @@ require ( github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/golang-lru v1.0.2 github.com/klauspost/compress v1.17.9 - github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e + github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 github.com/prometheus/client_golang v1.17.0 github.com/spf13/viper v1.13.0 github.com/stretchr/testify v1.9.0 diff --git a/node/go.sum b/node/go.sum index 2a6ffdcda..efc7f79e2 100644 --- a/node/go.sum +++ b/node/go.sum @@ -360,8 +360,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index 277d2c777..825c52258 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -6,7 +6,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/holiman/uint256 v1.2.4 - github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e + github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 github.com/stretchr/testify v1.9.0 github.com/urfave/cli v1.22.14 ) diff --git a/ops/l2-genesis/go.sum b/ops/l2-genesis/go.sum index e073c4429..89fef170b 100644 --- a/ops/l2-genesis/go.sum +++ b/ops/l2-genesis/go.sum @@ -143,8 +143,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/tools/go.mod b/ops/tools/go.mod index 865fcdb43..03d792dca 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -5,7 +5,7 @@ go 1.22 replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 require ( - github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e + github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 github.com/tendermint/tendermint v0.35.9 ) diff --git a/ops/tools/go.sum b/ops/tools/go.sum index a45f366e7..9c77f156b 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -163,8 +163,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/oracle/go.mod b/oracle/go.mod index 074df471e..e46d4c178 100644 --- a/oracle/go.mod +++ b/oracle/go.mod @@ -7,7 +7,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/go-kit/kit v0.12.0 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e + github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/oracle/go.sum b/oracle/go.sum index a08b1aef8..789b3014f 100644 --- a/oracle/go.sum +++ b/oracle/go.sum @@ -175,8 +175,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/tx-submitter/go.mod b/tx-submitter/go.mod index 1fada601d..51241eab1 100644 --- a/tx-submitter/go.mod +++ b/tx-submitter/go.mod @@ -7,7 +7,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/holiman/uint256 v1.2.4 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e + github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/tx-submitter/go.sum b/tx-submitter/go.sum index c6d21f1ad..562713a79 100644 --- a/tx-submitter/go.sum +++ b/tx-submitter/go.sum @@ -164,8 +164,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e h1:pV7z8mnNQr+JJO2CGUzwAlzjrPnZ0YlO92izBaq00Zs= -github.com/morph-l2/go-ethereum v1.10.14-0.20241105040223-5c7f1bb7073e/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= +github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= From d06acc318ec7b2b197e0fc54f15134ecea28cd7b Mon Sep 17 00:00:00 2001 From: Kathy <22675649+anylots@users.noreply.github.com> Date: Wed, 25 Dec 2024 18:04:00 +0800 Subject: [PATCH 25/33] update revm & programVkey (#686) Co-authored-by: vincent --- contracts/src/deploy-config/holesky.ts | 2 +- contracts/src/deploy-config/l1.ts | 2 +- contracts/src/deploy-config/qanetl1.ts | 2 +- contracts/src/deploy-config/sepolia.ts | 2 +- contracts/src/deploy-config/testnetl1.ts | 2 +- prover/Cargo.lock | 8 ++++---- .../client/elf/riscv32im-succinct-zkvm-elf | Bin 5311432 -> 5102404 bytes prover/crates/core/src/executor/mod.rs | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/contracts/src/deploy-config/holesky.ts b/contracts/src/deploy-config/holesky.ts index 8999df585..4e3601cb4 100644 --- a/contracts/src/deploy-config/holesky.ts +++ b/contracts/src/deploy-config/holesky.ts @@ -14,7 +14,7 @@ const config = { l2BaseFee: 0.1, // Gwei // verify contract config - programVkey: '0x00bc91a65e39100f3b075c9edf1a60fd1cb025b9413ea19c34c62d455e512685', + programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', // rollup contract config // initialize config finalizationPeriodSeconds: 600, diff --git a/contracts/src/deploy-config/l1.ts b/contracts/src/deploy-config/l1.ts index e625e22db..60827a8ef 100644 --- a/contracts/src/deploy-config/l1.ts +++ b/contracts/src/deploy-config/l1.ts @@ -17,7 +17,7 @@ const config = { l2BaseFee: 0.1, // Gwei // verify contract config - programVkey: '0x00bc91a65e39100f3b075c9edf1a60fd1cb025b9413ea19c34c62d455e512685', + programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', // rollup contract config // initialize config finalizationPeriodSeconds: 10, diff --git a/contracts/src/deploy-config/qanetl1.ts b/contracts/src/deploy-config/qanetl1.ts index 2b324ab43..25a9b443f 100644 --- a/contracts/src/deploy-config/qanetl1.ts +++ b/contracts/src/deploy-config/qanetl1.ts @@ -14,7 +14,7 @@ const config = { l2BaseFee: 0.1, // Gwei // verify contract config - programVkey: '0x00bc91a65e39100f3b075c9edf1a60fd1cb025b9413ea19c34c62d455e512685', + programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', // rollup contract config // initialize config finalizationPeriodSeconds: 600, diff --git a/contracts/src/deploy-config/sepolia.ts b/contracts/src/deploy-config/sepolia.ts index eed8411db..cd02472d6 100644 --- a/contracts/src/deploy-config/sepolia.ts +++ b/contracts/src/deploy-config/sepolia.ts @@ -18,7 +18,7 @@ const config = { /** * ---to---legacy property */ - programVkey: '0x00bc91a65e39100f3b075c9edf1a60fd1cb025b9413ea19c34c62d455e512685', + programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', rollupMinDeposit: 0.0001, rollupProofWindow: 86400, rollupGenesisBlockNumber: 0, diff --git a/contracts/src/deploy-config/testnetl1.ts b/contracts/src/deploy-config/testnetl1.ts index 036007329..9e91e1162 100644 --- a/contracts/src/deploy-config/testnetl1.ts +++ b/contracts/src/deploy-config/testnetl1.ts @@ -13,7 +13,7 @@ const config = { sequencerWindowSize: 200, channelTimeout: 120, - programVkey: '0x00bc91a65e39100f3b075c9edf1a60fd1cb025b9413ea19c34c62d455e512685', + programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', rollupMinDeposit: 1, rollupProofWindow: 100, rollupGenesisBlockNumber: 0, diff --git a/prover/Cargo.lock b/prover/Cargo.lock index 7b21316ed..0aeae50ff 100644 --- a/prover/Cargo.lock +++ b/prover/Cargo.lock @@ -5095,7 +5095,7 @@ dependencies = [ [[package]] name = "revm" version = "14.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#f5f08b959a6f051dce324c471e58a2a6b574c3d1" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" dependencies = [ "auto_impl", "cfg-if 1.0.0", @@ -5109,7 +5109,7 @@ dependencies = [ [[package]] name = "revm-interpreter" version = "10.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#f5f08b959a6f051dce324c471e58a2a6b574c3d1" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" dependencies = [ "cfg-if 1.0.0", "revm-primitives", @@ -5119,7 +5119,7 @@ dependencies = [ [[package]] name = "revm-precompile" version = "11.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#f5f08b959a6f051dce324c471e58a2a6b574c3d1" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" dependencies = [ "aurora-engine-modexp", "c-kzg", @@ -5136,7 +5136,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "9.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#f5f08b959a6f051dce324c471e58a2a6b574c3d1" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" dependencies = [ "alloy-eips", "alloy-primitives 0.8.0", diff --git a/prover/bin/client/elf/riscv32im-succinct-zkvm-elf b/prover/bin/client/elf/riscv32im-succinct-zkvm-elf index 5656ce4d3b510a3f2a5ee9cdaf073558e30a8690..ca87163232c341a0188c6401f56bc2c04b710786 100755 GIT binary patch literal 5102404 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 z zg1w@cX>9p|FTA*E&R52w{ixzO|2iYOBDvGVk}=7<_%A1BbokoyFPeD%bm4!;%~SfC z&e_HC>%{X_F3Qh(bst;k*B$FU-5+^)6n$?)m%_<;eC+eGqeZ_o(Utbke^T+y4Xs1- zM5_MXUn%@z?>$R!d!e0}>i-sX9(=yoKN~~#6CU8yc_7u9CVvp?$=L*VppVnA1+4lX zln2s-x2H~(gK+>xOx9Wa1Aqy&HmS#cFL@x<7_=u(H3slp5v($f+hxy-$CCX)aURHt z5o99m{ArARh@YV7KmN=7Qi!J#xzFbtzdgWr`HteF z^29h~3hr!uqR6MgvuOgq?1R`+QyT=Qy4W)dJ}38E;8~%4sXs3AXF0prpJj+|!7BUA z0lPYOHhlLK9(hD)TfEW`A3)J>S;kKrUwa*#J`>i?Xt=h258E$Jg_kZ^o zqT6H~rh^={1vyIS9z33DG^9PajPmC`;%LxpKUmLoc9zeqHe>tSS6=PIB}>PuMH*)oWyL!uyq+%KkJ#yS!ZR zlZ$e}OKc0aTFEm>o%f#${(<97_@&?%105~S1%G#N#<02Is}44bZXJGZ!mvIm!{vg% z|9IW7x!~6+U(2Dn;Kv`VMP?BnI_8ocnhXBEd@lG0e>ChEN_-&;enFFy;|^CxJbn6P zCyx_6J>E4V*x?c~=~_+%I3G`(D{;Bq;fk-rZ$$q;Xdf@){kQ0Ah)?8yDZOd*>5YP|_<{l0(g)LK^RPL zJXor8TXpD7!r(5A^RTg8j872srUpDb+ov~aBTsJ_BYrKq@}VrIHJk&}tq0eVp8-P5JVj_id-rH$AX*bLiNP-nfOQREv_v4KLTjJ8*VeiUexW9Pt& zIqLR6ul5-(bZsPhv*gAXI$fO|aO_Q&~Nd>D1%aghJhy4#i`W`*)*=x7V& z8a|B5-aUkt+Q2FK5xU7wkqbDX|3S30`n_oBv%5YtEiJ`&$A-msixtoJ$NvdhYP)j2 z)!yX&jukB(^d4GT@agaCSN?XKeUFxA9~?qUN35&;<;b)&zPE&ydUDt&elN6iozUgf z#|P2U5?@p3oANLHz0lI?B3fFyk58lf*+5@|d{ekbC~u2@d2hpjZ%SW#v2TjeC;Y+T zHzGG28R7wc_b)~t zg8ZP$w9D`@AwSP%c&*e_uN~`;i}fI0z0^|tR3~T5r-Uav!>f0U{$@#jU1bkcz9n9N zpM;i8qPdU; z`DzDx?W*MX-Q+}mgt^2kJ->`j^w;RVk*5nj7vB1`5u4@Jv8>;Dz8m?qi!Zj`4BLK!n9>s#inTPy3fd{95BPq4mr#?)kegMK~s>iR+T zw2vW|ni+GQw3qk0xJdNZL&qMU&%S$gtlg^4z`m!>W?r;YsjFPgBl!1Z%qV^mQ{SZ? z&j){(G2`-^=VJN&PR6`me)C)|zYF)?IPW7@r1C>qYlkxudtHXygdQY9zBe`ZaO;xD zD0rw*vjUNF#-PQ84za$STJqi-@NY2jJ<(ZT&sQxY@^D=F(ESBG756H^SW%z+WOnko zt>NBPTjQ~^ht-(nyW}N*8|Yut`L?ua?4`{qHyY&CM3+abQow#o?oN17v!(u<$#qu< z&!Y8r-SDQ2BO>~HbOEeCzFlD@vxuzX>BhGfYxC>j6r8S#))=}aavZ4rhGKzqp@d)Ev$X&EA z#JvL{cfl(mV}V}g{?XVn2(H85bqW+}0&!8E4zH_iZI^`-z(pvC!7WE)f0BiZhX-6a^%}l=z2mTbNctJJZZG@ zp8RXcNjH4TF*}fXhpU(ElX}VO83mtR)2y@iP(a*TRMak-o3mh{&LcP=;)mGKU z^SIk@r2ckGorttGt~1WMj!=*LieS^7D zHY+=u8RseL#vf2^PVST#IAi2-X8)qlW>sec<2*%O?VGC2ah-LH^Az<`_Y~Tk+!L9Fs5YxRC3ZS6@;Kw`3vG_;oXj{+Q8#s$YI90wHRC)*J?+jyo7J73E_mege!FUO zd?#_4$Y&$g%XSsooYGmzI8RYmTcz5Z)G4~RQ`AeP3vG_?lw2vp*F7q{c=qe6&B{*n zdO3+N8+v9{z4&c~HYau3jPn$AQ#Y$Nt2)sMLMN2`pvhe~V~o1=80ha9=S02&zN{?P9&`;{+PD3|&J9`*oI^_Gt&vELy zm5(gt&^Nt9yT?RmOS*oeJ|)ZKr;#>PNe=&x#LqzJBX+zy1|oedw%L|35t2V%OCf zY^)LAPUG2>j3d51u|zg;qBVNtc6c&);f(3|$Kx}9b-~8t#WXxGK1#{U>xhSj2g3#| z{ENCDN>g^-iK5qJFEsW-`HZs{1>Zl`yQELy1-+=gZ*=$?G$z> zv!rd>Q~u}^Kc(!sTasbBLhPHp_ICVR@az4?qwgk{AF0^FJ4fe_-;v<;+LpU`fBBK} zExgO%qwdJ>YmbL}?alGXiL?0ruoknA#3MKEJxSiGG4q1D9tlpY?Cm@pa5j@8YV}^| z@t${+UpyXizV#?EH2gK~d6%|`_vHPR$8Bdj?;hfBCx74JuXfM7P91*@)H~6pWnNsZ z$L!;A;$w&f=9_D6L*i^A!K1qLQD}E?JKuYhHL>5#blHLaYoB;W?d1t%Eb^IWRPvW;(kwL$lyz|j;CJ@zD4GEFHUscaY8c8H%@8*8o@8geFkNQ-dI#uV?sZ&*_P7#BnQn#&j<^%FvLDtpkSo@H^-Nslc(<@ zo<(P!a4CO7`~Y}f9yU8`X`8|veJ9^LX9`o6pXg^#pEeIYI~>a?3OSGSy|V>)D`j$D zcj&R<*iC_;-VdKU=Lt!RwQ>__+Q{?ZaBNK=;OyXg=MrJk4jWc31GX60J;O1f2b_nO z09#IcH1cs+)9eHu`p)qFe+eCSmo;80rujMdE^xGah8#O>O4f>?`lAAUNf{|?E>^mJ-Xm{`a==t z<|se@Cc1@lfN38btBG-&dvmQu#*!d)yS8tMTuaa&0T=YfZd&(Aw{Yi>i`==d7t#*~ zZFi-uxkb&wE}G9dzDnl$^}-7dN6q%&u)AQka97el#1`~-4?3YAFU&`_aH22um!aaYrW?yx!dt~YacSiNTH>%|5gcyNW-5S%Y8<0yBB9n!4OUTs5Ymu7{RiVfi&Y>gDY zVF~>HqS~bOrC*>!v=}-hBiGL3_0ZD{J#(N3+1s&{GiWO$Eyx>XX_Tc=R)Desl%-Ra zzE|}jGu%nLxV0q%sLM>r}I`)j~@0}=BqwshUdsL;>b2>A7^X|*9(hrNsbe; zKkXNxf0KPl_9IIi9qCK@PWojh{ZEaB50j7hXV`N4Z!7HJ499ofl_veBQuQ0#7>=?J zJ?uWs7__nyJoJ+{xF0L4p9DktJzqvvKS)3Mk?be*$=B#7U7B0AhQ6_e{?aArFS3tl z^p|(hPb%prm4Bw6%%Gnvqn~V}pA1s=4Eo73`pGugPbhy-_7jbMBIqZAexlJ&1pNfL zzfq%~h;%>E()~n?=_k-h|Crw?=qL264()H(PmXXG$f%5Yoxj!WPGVAqmPg>lznM~} zU0pcruCd@rJv`Z~NnPdz&|^*jJvIxz)cbl&@dh1s!B`y@M2A%i{ho{9&7JTjgbw*F zya}Qkg7Bsg9u=a?4C+iD+#_wAwo zao(6~(P77biav3Wdv(5WP};dy9RAeHWBJ4ywdaq+^d%$gkEwlvy>2GN;8TGq;xuyQ80U#q`nsvRLo-5Iz7QH>7Dj2Yz}x zI{TI8d8gwq*RfR2jil|BKKIjQ1<~7-fvr#`??6i5_ZRW+wr1Z>++W7LtBiS98ReF% zd4co|`$m6o{C9WRks=csV(tBE4}X8We<(e#yuz2U#EX(-~j% z)3sdgawgPI7e7_`{MPnYx*dbV>{l?iTYz3m&i0lM2(yQn2+4tnyo=Xc)+6LTmL2LB zvCB6L{K&77F;HUHY^Oc3Y3}K-NY7D+nm4Jl+m2P!4KCWPuA6a=Ii*~WPy5r$G{o2I zGHIW5+gH;DfAKCHSr+~|Rn}&s%GzjD$vf%O?XV(!r@;>;A2@eh#Y35t8xmo^?Zt_# zeFPlVblhMfpr4%xne&$6v#^dh13QIVxlWi<&lL8H$bWgc=*fY9T{(yCW#wvI_bwR} z_OhwKuuUp|tl7WcLhKggV-WbB4$b@G0Pso$$HxHMU^8u2!?^)`enW?KInRw1JR;22 zw}{6%e!ofWn@FCk{f6h&{nvxkC(Pa!=`wjE z1?Iqw8h5bgnFG0uukwAP;6C^~D|A}E*#^wuTN^O-1{MSsJRx7UjjQmnXT%I!rX(uw`@Ww zbn`m>bjxWkd<&iW1aTfZmG6i26>;};f@8BVv7Myfp?!3VgbSTJ)>LeVLx(|S?;KNom<{-OR~2z>1SR{~GZqXKuRvZd_!<;nkL`D6d5 z{H*_F`D5XfpY^{ie=MBxv;LRmXW-27(1Wtw!b)feC)|>}g>; zN13C9Xu~RnL+)wEruGw40G&|RU**&#tE4{>&9mr$g&99q1tHdD}DGID&1CP z8@1HiU=Ekj$?-#8@J9MTZ+@&WH)sd@BHoSt&`A0`^hhvIm;KnxU6t;y@fY;kRp^ml z5DTDOm@~`Kll_b@cX3|xU(wIS)HCfXsQRr?e&Xh`;M?w3-q6i?i-g_2iMd=z(d34p zbxTLU*+Tr3By)$HUBome#(3u;=87TR+I%pu-tYh0(si)p842ZEtn^3x*Ydknu&$1A zL(?ZYcR`y5q<;2wb4xs}|38mB7OA;6b2ABNy+Qr2(uU9vfhENfF8}XgPs?4|R-ECd z{03gNKB&sCGpgiz73Y7eWc&9V$o-<5T((4=2i~^yCvLLsMRiVi@bZti$=YV_;1E57 zpW4Lv;q$orO7yf9p6ezD>$$^2^ei*J#hKwQ?(yJUv2(ne+;%(XhXXwW&wq|H#=AK` zMcXH7>zjj;9$$~ff8y_1_Da5|Z2t^`v04e#Wb(_Z~9AROMT(zXTOSlNh2m^EYm|3{Pf7i0eayqo?1=gj;p_-Ebh|34#R ztt)?zf@Hv@t<7Wsb*zzl#;==G$ScpU^WFazdCes~<2?O7sPs)*9&VTYpL2P|R?V%& zR$Wbr)o^-=)i}GvntpzX)wHO@s``p)RkxemQC4cz@ic5St;SnT_%z|n8+#M)c&DG4 zJ`dN!_~@=&H@=VT$EKWS)g-17+hZEz><5TZcC0l$dMx*g9cwjQc&t@-)v>^j1%532 zK9;@XziYm2f#3}PR5OfBv4?Hp3q}lIaYb?OHO;r8n?k_`y(Ls8F(|!%Nj9E`9ftIT{>kvnOGB;jVi;Z(PK8Z-~*w%j8n1=w`)Hkm--FD^&+scG(Y?1ve z=yo;k&fmgZ^b;leJ^3ZhhDS@BAFeKOw&s`O_mJ=0`H50}w5m!ft(tQy_+I9A714jL zDs}^fwAE=Pro;c!uPQKe`M>5g@V=UFHN2W{cIonanORUM%(dK?)_7XE)tD-9zeXRN zz8fFTee}hB1=jQwz8&{b4sl_epu8^tp6sK{R4H;%W>vpROn_JMQ@D`0cNan{`=AY} zGV;inr4?4)ZpNkEWzzQsofY6Ivl>e9k4WIN(9K!aXrUYv`JQLD3}|kffemYD-eue1 z9s6@M_LwrL}HUXf{D!Ixv5y+9bQ%)*il*uJv8St*jxEbY zF1+U@u4tKO7_1ZC#~!g(Ha3l-r|P~Or#4aPC6n0dGEHh?n#TJooZ3{SUK1@RovZ`t z5);!k-4~*aLg!=+y0*!-lx3DrD0BLK6?#*m92k6~9jdxZom#Cjs~u!pHIc41S|IO& zwHmq$yp~$#L@mfjKQ_5+%YE!Sr>5A+yCl5OYaPT+Z)NVa6J0(<-SgocJVLtN6;55$ z^g8f)Zrok!?OZaF&U=BFc6HHWuj4u7V|TH)b2;-eABXpfgr$nT(61#9VC>aAlZG9r zkZlTHt;EgAW3TX6&>+)n#%9l?nTK557jo(nrWe{H;bqh_*W0-rdp?t93Ew52l&M>( z953_~^_Dd5Vf`hOrVd%5Z5vbh_NrOz&&obdeOj5{{VJ2DRkn8lWmPy9GSvZ|8cEMV z&CR4aG!L3zEznQW3e2@a*sB-P_7|3Ttv}JsU#Ic>ZV7l!%Y~j2r%}uCI;dBZ#1qoo zbQ=5Ma^yQjy|fCwE?TMTR=vB>+u4zwrcS0wmFv?}VK4L>`m{2;|}=^x9O1+V)@%Q`@ss&4$w6M1%M7v-c1?3UX!cV1G> zo9)Y0|I7z2bxnm_Z?J0c3*a7GyM?mS={%XPdN=7(h3?8AYczfEU8alXW~IA~bPc!U zLNj-16p`+6!q^;C$ zsTiT(TS$3LB{|SVUaeBmuYM=8@OT%KuBHU~(L>yEXD9z1I=jKOc(jg7WLeP?Th1-e zKQ?{JT;R8pcLjQ4`m59{QDk?}j*Jm@%W{!{+lvehSc%>7h=h^%;Aq}UB`jK|pQ2F* z+M_yEX1B~6f!mA0UDZt;v@+dFh3wD{$tUzfv{JQMng*4wu^YLPu!P@c(yVvg>I@2Ph`!Z`S4WzrZu&4XG&aqWZIb_aPHoiml0PNQeR=k- zHfUMT*~t~cyF5&v+8x$wqs5Mtx#T9vmqL5aI@TThH1@?uX)}#9w5#z0+PAw*uSaI) z92iZ*`h?ZAPx=JGzdK0Z4IF)##^GIdlsSS{Zg)-vzibn&(w-yNHqvE$QRa^tlwr!) zd*)3cxp>@tuL@|G5wYx?Ma#+N*O70-KIb(5oFIM8Kn<~-kwVbq#295*hP@f+A<@w-F zfg_5|5UsS6*l~5;W!{{{=+JbU150K3vRw-8N($wvfb%)pAlWiyQ zDOxgVJkkI!azpvpi_lvIk7l*8=Iv^xd9|=(4!AF*ZM1^49xAX~w+Zw7kS5P5*-JX4 zOd~4^=s;F#ps6O2Z_iE&^D{xsEDLJ(;u_>q(wf3P+A8TN)@!19W7Bw-lcsTZ7+&V< zCq;{to^HHQ-ZPzR&%RrjZ9XpVi_8h@qowBR0`A9o8{WQJYWH_)?s-Pq)>=lp+>-0m zCrZ8WACM^t-!cNXzqE|}sZy`=4fy=3ub29fmvnx65&7law$+*my_H^|4SeU4E|F*V zv#ym%cNyub6S;Z=dZmjs!6xLh<;79>7lBtrfumR0m$n+U5^$iqSpUkIoD-u`FE9?wU|i@%$1EF3V_!lV?gXTr%4`GKtwK&_4KSAI zn(OMC_g_~dYYFTHU=7{$#b~8Bi@u(L|MqHlb1pVa6d6H|>QtKCv1#lBq-pGy_n4PD z(q`!xpq$OBx$81fGZ53)9 zWz0s$hP<6Sg`2SvezzPxoE9csh1c<{ERQtN>@+WvrW%=HyiJeUW!{boVLmsDy6+I) z{{4*ER}~^tQ@r>z+Pb9Bet4l~e&H~ zh%TFhF54x%g<%c)%Iy$iL_c)UwxInjdjIFx74VLZ&xa2YzIE?Ta}=SE3`rt)Us_Qev89t<%~F=v5B zRelEUEmHXl?GEa>ih4H4@>4-cV9k(=bNKv94N{q4{)VaD3^glnZHVO;K`$4Mll*HoQ0IGv0Bg&|7>^ z;;2w#uCiHD6?W_9QTRm?9xb*z9ut;ttAxkG?U;fyoypv@OB8PMD?3T*g`BMXmrJ+?9NHSB?Gnv`+ly5B*b|S+ z_L2Hq!QC`{_N7N;-GC!U^bfr@rRtV}d$A+b=_>3ibVi7~^BQFuY$)n5l4hyGQ6^=@ zT*EkpT|zlwWpiZgzDxS04S>#Ip24_gx3p*(8_rv#V2roujHYgBmxSz={t+9`TPWeF zVzVHZF@tf1F$0>>ZKG-Ir3y!>on%~R9s`b?Ecg-$mwJhLpq!^ScB4qcRc*6H1xwRp8yZ;Y0EopaDbuQHZ}N7G1pt4?FQLw_XUCu2Cg8iijj z>vKzmGhNHK+i#WQ3H87R%9Jn5z-F@8?**3U#j(?*uI)cOibJNsrnGAIkw#-JV2f-+ z%1LIY!3I?Ns}}pfP;HCtnaFAnbIPBFZPrv`!71X3=Z}9;u3OU|G}CAm_Dsf_8)@&F z-FXhaOLhl(WlE0n{n78vH?6IAm+BlFwC;M8^{9RMj`R(xix%3UdH6tak9Jj5;^O}b zVQuFB>6(V@^8am`we?ZdYf(`_xgGGU0oW`H+-U0KM|du+d%mz>CT4LrDiAe zo|2m46}_(M_dw_7KkCjYQPW%dIy9)?#U6KyT6gjLhpSCz)(*)coG6(tsBm z@h?BnW`5XPF>Vcj8xU7dvOPQ)3{HD*y^|(9k=G#BYdSJ(<_@?S1 zZCdcEddRsDZL8`b(?Ex+2fw2My*^5wEvzSM0sWLji5-4LmX&AS^ODR*yADu?yQPkT z9!0;@Y0#^lyq%NtjbG8CU*P#_TYXm|tXVzO>NV`p<>*0d!Oa}83$X!>(~R2v`RZ%Dfv=p-ScRnb;qxZtvg>T*6S0xT+_bd`7hk6_N;`_;8dli z>8#B=HPLDMiP|*h#MH5RW8zq+F?y_il6I_fQtB9edg2&odh{6mWbGK|-v0r$ z|HV4{2CbX*_S2?X)x5)@sd5j;4Yd$QIm-92zaR0uI$JUSis!%EE`9s`xRvo=q6d;a zGJUfDHrA-7S~U_^MC#qCR)aRxYSa`yGt{zP?G1&EZ*!NsEMc60f%$Z6T`Mum1^Xc~AmHUT>mx@^@rfJ?{hVErO4jk+$RqApdX-6`H z+v0qHMQn0s6Zkm`s`i9rTIyrU7}2VXc#U;uJLOY{xY`F3v~6}Q`ghphHQ8fI*QZ(G zHf9L(pZbTJ4G|{>{c!AywZzJ2uQ#%;(gnZVV@>b({ioc2^8F-aJB!n;D&}SCUV>Xk z_Tu2LyyFai!_|A68_hp|<@&CcZa(ard)%XpsZT()dqe=kkOhh#4>_8rAMs03==XCC!m>m53K% z)i54aZwJpF@D)!&Z-j5X;E=fEKOWC-y`}~J8DjD>#Q=M#0sMjD{#_XBC@(47V_~cWttiefv^(JL@ma6~bG-SHx})1>BBp!`?Q|Y=nquTH9YP&jxT`NvRv6El3|5 z8UW9|#s+ti zBGxZ!n!tj<`e?g$bmMGz0?!#Yv5hD<$a#=`($D&$Znc|W^pSJ3`TBeuO1KZGR_ zc|VT*`V!X8FXr3D!tPocaeFHHwv_dZiz42SF5-^#1rg3&mzizQw=BsWG@H;Bt^AgL z^TtrDH7x9bP14T-U&WB{_Aqb8f68nb9JbeO;?4->0$*V~`K#*`AtuJ(u1>Kod_AjY z4{-=_$g%o{^rrS9r)l=EeoAoIIi+vdsc9d!&%8r;#=Q|QSsS&DJ0j*B&XlxrzUHhq zhuxi=ZF!jYuA{^DV#c)tKjN;M$JiIyk6+Vs_?s2tr}PFsM8~tQDh&67<@l4dMPxjm z(Q?}<-kozy zeaP(#=%S~GxbtwB`@!(BDI2DrP9AGxq;JB@tiCz$-|m}wU9#MC28Z2p{H0iDAs!-U z8CrzC6@9U#9~-r0$hp%Pa<(RioDKa$cHu78>*opYgL{y>3$V=>m&yHa??(sIekTd~ z;Vt;WvYx%AMRV>khV>t|413NB`Z)ev9}8kjzOKdEY1^N_Ak_!?tlg zxRc25`NF<`y|CZFAFSw*<`q7rc|W>b*!mZQ{R(F?g7E2s`-Q#sWzBAW4miI(;4A1G zhkh$O{d)RCj^@#?y)IL;!}#u;f!~>2Kf9xU$hvc2$lADR$l5$OWNke#Y~3|5Y<>U0 zkR|D@K}Rz_qPP5eS~Tq~<|D)kN)X$LHM9{vw2kuN8}C9#zA=E`#J%z^PIQ*9AK`UK z2d`5T4N+cLj#ZK;Qa8G{p%>Zra_T~~>2B<)R&=d=cSya*dnYx%CSQ^jYUtk>3(Z5b@J9>6DIyflT2hqRi z;HDJ%b~ob}`nMMSTQ?h;(9bgFJ@N0YI^f*1Rox2-O)7rU3+UhP{%7-y zf1u2M-Ky)R416mZx~0zLH+D`VztR87hB8`yYZ~%ycoiRF8SR`k9!VQVXG~K*8_TzW zQ}Rgs9Xh03#qVm`SZ0>D3F2UIJ|>9%oK3%Ir?2$+WfJqiBK{R^9|W!e*MOr>``|-2 zGIJlYlOnFv?vTC--L$EFn7Gr!&Sv^Nw6pI>Tr%>*GvGtOhky?OM<2igVk20MDaMf9 z@J&N@4&!&M>FJmqalKZPXCn&Gx6~s6Z~7R++e>5d?FDwvcFy*2POCjQWH)aXUdQ%` z*KshyUCpO^2JmvhJT%gEvP z6ff_PdS5JkpO^2Jmyt2Nj6e0><7MRI@ALBA@^axAUiNN(@9{EDtm^mYB=2s1Sv7XN zy#2k$%U<@&-{9eeW_Ud9)`_jnoE`#vw-&_Z}~Mzx_Th-z_hD$M7;DeQw@6>puScGVwky z-z_hNKPOTBGX7uhDPG>J?6F1f^YY#Da^aYM+55zMkC*W|@ALBA^77O%{Zicj-s5F& zb%{ef3fQI#c@B8TjN{_zYGX z_y@EMaaYHXQ{O+N*W=gI&@!wy7{lI-c>&MiNqWNbmI?boeoH@^!X*LEc#!}5HSeQK z0`{86G<(es&0E9owU6-){~Mch50Z}b-Wq&$?D?dd@8^Gzv_F^sKdyO2ODW?9e1Bfo z?9=&O^oC{!hwusF_u6*h-Tz%-f3#1t?_V0Qb9o2B0Y1C%1=6p<-)9YRO}~l%&ke#p z{RaHK`-%CK6!xmM!u!}C!1D$^MhgOV`vM>L{cDB&WBv~k12OkvzP+W{KR!kC&b&Ba z-*}>C=hkT6D!$*?sM%+d=6=5O%?`>utAzcb*_yW&oNGU&dH?zu{Fb2aUwLvr!+j*l zVW+Ww*lRyq^L~7~W`F2&0dLi31NN$qYhK=^0XzS50oz_4@K!Gm*v_TG`|#D8{ZoDy zd{y)E_vrT5E)}+Yo#uU*-@tACGU45{NB36q{@J%Q+a^ZUPk|L&28?|A<-+^O4%*_| zJdbO3!B4eV@MX>W2v6>rnk?5|yNLRb_s7>#x9OVw;T4p>B4Dq+lyd$VeEgsPRr2oD zy(yPz_D{a1*&o@f+xh&yi8MFyd-YA4cj~uDPr9G-zofT-dT!oKp(yqsQ_{o{1;*8e~B{5xB5D0x+dUt$)^k7u4ip0EMxh7!e5Ay%l z_^wMF*9z|^=TRQ@E<c{5JePNArHdlTX|I>!sj2s(YRCS&EEw2E6ba!VVwR?ar5w zzZII-`3HR0=I}m>tk2Z#)9Z98<6Z}EVkFqOliEcGHGAgc_|fg;|J#Tyg@5487d7eY z#aR*MtLDuNlV>mg@4;WN4S&IH_zNz^U$B4JYFLK9ApUC8@mFi=pY$$x{m;b3!B<}T zwgsiH8Snr1ecP0;S}Q)L(r2wh`jScCHT=Hh8{f7D`EHeGdL>-?x=Fb2+lJ58JNmXQ zRDR;$p47K(oDb6k-?qALVzS_ORh_~IPWfHo!=3hRQ+Olaz~@TF0}Lv^_mCD?KUdoH zy}xF>(eZ84@on;b+wd75>#wZWGal9B8`TgEILa@0A9a3J`q<(xRzkh-g_3@5jrc-w zk03sxz~2ClZ&p)#iUHXu2 zWvsa~seDMC&5Si$TZWu_7;B^tX)`j7-zagv(c@FmbNF7Xvl0pFc?nTQwK6S053 zh`#ee)OHp{%+rZqbOYnZE5w=&8d2}(5Bqq!9**KC&v=2p+D8A&*%y82ZNa=$c>6e@P@gptAkJP}AbPzw% zHW}+S%a3%l?Z^0y{_oodBmH+WpL)F(f5qC_0)Ig17fAc!Z^)fYRs;Tq^e5o>;myWg zz+bVhkG=(5-6562ZxMgRTKpAj@mH+FU$G8G;ICMRzanQT z@Cn7&9XLL#CO)AqzV6(?5lG*$bb-z}Cx@7ydR>Y#6H?xXkazO-DPL&d(4;{V?I+Jl z)B&#nUJbnJX{qm&&nz;d{AK@t->${V@8IiyyLL^E`Z+6k)3qtHacB?b3IDsnjjwU~URL19Wh*k-fo$$%ECkM7 zU{Y60osC?M_hlY0x8r@8v*dOXxz9oFbCCNGaxeSEc)1TD_xSh%ui4GGkYHR$ux5ep zb0`s7uhx5dPl87wWIKdx8_2dXiR`1JH3K+fT!OwjLH234L=Li_E649q*`J(89zOkg z9lp)-tc^OaBYCu~GEm3$lM5Cx}SD>!4;s|CP0k3Y}1XPOSk_-F;(ku#+D4FB|ccnP2NhF1DH zJZ#!0@ll3`j)2GYA^6s!#>)!pzp1)q1r=Y9BV_v4GrxFyd)Y%-*N zgU|37UvBJ!kn*WF@ToTvA!#4@@s8saj4SH?BfcRA`1jtS&Kj;FT@GyFHa_8eq^m_Mm7vOpYQ%C17jxIbCiK)}Pm!@xtpL(1o!d-p74N7_*M zP}3K*cRUYe)o2pOczMjSJ%EpwNBECzQq5RW^|U-wR-hv%$m5jB>`ANYgs|0gnqf_k z8ZL2SofCHwf6EZk=RWpOZg8ail^ zL43sHAJXw#_xBi@p|!khU7@m-ns>IWm9;YG}uoUK}ZP{`P|-b{f_emKJUVQdQ#m2rx_ z=EK5%0Q+4JN4<`nr03k#@(}lIb3P{28&SUY;hESBhbU(=w!-=NwwG~Mnzq~g73BkO z-L(jx_&&}-a}K8Q5iK?^k8`>=qPNbb&vO4$-6NcJyO9_(%&Qu5-vjk&9j#B*XW+x% zah~qS@a3Q2&oANACGd+g-c4_bG+()oN}e_0OsL|kIKZ8+^i7Sv$us6$9I_~7m9*Hh zoUPdnIxG*fqr4*5%m;c@6>{r*jrUp1X4gh~FOgCUXvCr5bx*+Wpf0m-7HQ zADAxhPVLR}K3J^TI*15PkjdbAKE&=Lx3gJnC$xI`5OAItN!Qg&h=AGy!iKSwp9vm!mn_O!pOvm&RzxBK`Q zo%I*`xNML8pEX`i_a}8WNZ&&LK?mzwXLF_x9sEJ`s*cPkIUOTkGt+X~@l+&RPB|~R z=19cu*rCq1dPk0^IP-RMvF3%5cd1XqW91#)?NmmkZg#g<60^R781~O_Ht~sw$Jr-4 zxj8~y2F^TfM+YOPcOs`7kxO|tYwHV~M?y}&|1>&yBeukQQMdHo!d=s)ljxIy%=!WP z#9vRSi?Z&JQfm(A6MaOVJe2$Yd3}=6B_lclJ5cEesTVi{u5^Sv*Tz|Je_g~N?m{%J zBYI!g>ypIg;oSSoI_}sg_s_k{Go7J>!*UnXrI z?7WdP?_+Ii@`5{A>K*Lo&Oc%_$oorJqwsNU;|yMZ>BRiRuoyW@A0LBv?#S=S^qSIT zY5QtqtjgF{5w#w68Sw~$?y|SIgIYsJ^EC1>E?LA)XB?(Zj9W&P9$U1X_Z^)3W6a## z&UmD8PMUQ&)|_H-Vj8G83!)f1lk@a~d@_!~9ll+bK1*nmKE_>&>9hsdY&!VR7459A zWWjRe8T8B@;6f*Z< zvoU_T^Xk-C<<4tOzdO=z>@&tNc?R5_SD|!;bCvu>wR$=94)7CS^dE-O-PYirzA|(Po3g=DeB0Eg#UN?P|`OK^zclgc-=ELF|Zk zvZJt{RP2OFVj#d@&YJQNpFob0X&Z&P2zJVqaxN1819yKjKaDasV17{V&qL8Q#3axR zr#fXg#3gWzO`NypF_x$}N%nH|Hf?9y@?1D)uzP5`6`aZL#Qw0cGs46tc!2ZQ*I58CK~79=43SKj1rI#UC?V#XS@uoW0 z8*HM@#=#ub_HJnLX=bQu94$MB{Cvg<6LIQ)@?psj!n1MtW+|K94Yiy&v8|oA{Co$% z`NTL{b{zF#>rR=Zen)&*OYOvbv)=Gwi>--m?Y!p0jMEw4#?iUsa2n^S6YH*XXS6Tl zQpREh$ZhCUtw+jUvgM3QpCA8;?$YGFImC<_@V_}PseCQO=xIf!L#@9t%WDPmB_;no zd~-WG{sa4zc`D;? zA@@=OKAu_oeOT>$$?t5Kv(JaEJCC*+mv6^&Y1pSEzq9k{&-$?P7TJ#3uvx$HVaw*4 zp@rjM&addltPS2LnpB)&DuSog?Le zaky6A>Bu@`22V`F&2Z~QQU=i*+WLEyzBn&KpR}+1GPgy+F^;w!Px!E8o75$lJboK; z+ot06;#m{(&H8sAR{qI}`J6|6SW868em2e>kNB{D_%e4KOn=yiE&JRgl z;hc1Rl5?`#@XE~hv-~#Pezt0xoQ_t%4G*3z<(D?h^UJCINBYq?8g~5LhYg%NQKs|< zeOTMaC&Fg^bRvEIQ?lucr0FaFj8ESl^@hhYnmgz}Ij!h^bT4Bz_F%{_%hw;-ZRl)! z_wuyuAN;Z=lP6ggF|4Z26~4?w9?q0ADl>x@&=1D7k@EweHsiCC@b~U?`z@T<5A?e- zrfX4Yr0%ZWjTEfEUH zy9F!vt9$C_R=V;%YmWccKmE>WXI1-YoKw?jKLii{%zb983)Lk5&P=u!`FobVpU3X0 zk?o__Bja){pWjBXc>UZdYK=*+on6X2hjq)i;Thb6)sZx$o_2|8$z4{gEd+_(*pDuV z6TeR7e_KDXuOgP08+2;gE8O;Wd4Eqp-z4{04Y@|izC_=!EbkD!Hgn$^CWeb13*-iX z4eh_lc$@W?AsIVO&bxe^k)zmXZ?m6U5nCh6Y_DKk(!FFqYpIcR8Zk(Dm9cm*sGm5y z(#$*?()`ThPo6o@g3x+~DSxpNM?YPB$_}pQ-DOte>+U>(o3l9P5x{rEEv| zTKjRae+_L{$33}n?N0HccRzK4AMMi=KTe!I&Ast#InHpu9PNH1I16d_jj~OGL;77l z?g@BTjmH~#*5^lXnlA(3UB?`5q|TAwP>*R2_Jvvts3H#SH=xz%o3_3;0KM@wwBrXR z!e@UV4Zn%}lfe5j@KxkLZj$`RrSo@@e-e0K2Hrvb<0r{~d^&$S`6q$*W#B8xUo}bo zs&xK1`6q$*Rjt2Q)&F|(pD;=O6VmXnl7A9-Uj}|H`Ku?%U!Bf>4f!X5_hsPA$!|@P z-%98I3i&62_hsN;CV$N&`D@bouO$B@@V*TEa`M+slD{^c|1$DV0`JSfzexVNN%GgF z^IuH|SH^02JB1Rz)Pb=z{lckjA!ei0eM$AL(vh)LcWhF4N9LOe z=DW8r=AXdbl`^fteFW&-+S%;2wzF^Bmm_tqQxhzVtqBIu(^I6L9MzGzf$=&rTMzes z$JdeVQ~ZA4H^ql%bY1ViP*$N2YcI^sE53!k3%dsE7lqpb?0HeA+2L3h`wzA4jO+12 z85>J|^L0Gm#1vouW^{D#ZQv+k-8i6Is$SfW&|XBnisZOVyHdBPV21N+ z7k^=#B$jG=42+zP&Mr;s=Qq)%>9KA0|IpYLzcH;#(_`E0NyfHFC+$*(UJjV+7BePo zLa(+3)i_lb|5#s#5Jvx>}+D)Tf_i2{rgJy@)W0vlZ;Vt^OF)NfkW<}!U&siUl zHbC!HjH^X5KAegfcgIHJt}#9(+u8e+@W|u*#y>#W3m;*e_tV`;x@qWtBOa7=sWItF zWglFN{QWt6zZiqB`CZ^!2CW6@x(>r1)@89hPMl4Q^KoNcL2e*3#>p{n!Z;^wkIeX~ zXzjg%`@gX}f@xa^oSAXXhkprMgK=G!7u5a-%DdPvuTS=M`UN=CNNvX$1`V9Rcv z2aCtriX*yA@jY^m)PqWwiER}w__=QtyR)w>CUOg%6WhzOWdXe!%q?&>rESkmxyVu4 zzV-2)t@LUQu?>}8o?SYDo^iJ8xcn`?UJjO~?XglHj$Zch!@E9k%P}EnX6aQQ9_4#+ zx-GdwroEW9l=~k=PHnIRocM3dE}?CS#fTnKc0YAgb;y(<{ugP>)8&_sqwm8qW-~ZT z;9H)=sc%qxE1@j#_U2H&mM&l8n?_pZ4UsTB`fs+0IQ`GJiTEI8=BLZVm#RIVGV>?v zLu&k%V+nNQ^DD_^gvl#R2}2#we{etl`1 zxgvI3e~>z=xbv1A=j&QV%9OgnB!;}-?(s70i4jdU|6gRUrNWw?kax0H zSPdssT6L#!uWGc?Z3mykdF_#+=3G%^O+SHqdNuCr<>7uOH}_P-syU52T{ZS|c$%~_ z_HVcYm8XG+yX;Kq@56m#rtd3BJn=-?`X{9AAHhc`8{c2X#X63Ui#ARuTyBy%o{#TO ze?2~YC4GF1%@gpwX&O~p?5iy&{PlPjX7J)OI392BYkxhyD>L|5-zGWcWZIqBXI7gN?}(ga_~zm#y6I`o`K8z zxyJi{a}OE$%gA3!etFLkxBbF~h;%M>$V3&Lni{>j69noc&SYjlib^Z<6q6 zi1Nq!85dGM_3Wd*PZt6=fE&<9{seoh8w)AFkn*Y9(>y`uNIW$`d}VnWg6zNYOb_CJ z8Vpg#YH%?2Ym9@bB5)L0s$Eo@LC0=M1LLA5?`A6mPT8`Z?t}gm^-%EttJ{eBrWhJlaq&)tZh#r^EJ0w=CD@a%q6w~_ts``P#I3&MjS@R5Gx zGF~D>=tS^0_F?lTC_AcrpQRrz{O9}q_$K!;E~N4u?xWGUFOPEI-$s0ufmKVG1}r7- z{E~7=Il!7Ib2?>Ce;Rm{exPv&S8578<4*03Ih08s?#m%P_D6II@F_|*q+HYiueqP^ zsRGJG29Xiu!>ZC$6O|6*1@p~H=fqS6bNvd&m8oevHeuD3TyNDRu4hhu zy;XI>4fqRRXHAb@XEmOCoz-yRbynR~*8#r{_;prQ_jTlr^X!vjPjfjw19|;7*?H${ zdh0R592_j#U$D7Bj!mwiarUr{bDG${%yY0enezwv9znM6=eag0am=Y3qv(xfb^|{Dt)OPlV*}`TRE4&kf7ppWt`S`YZF~nDre=k7<T6m*_L+DSY51-#;mQy$au@qxb|m27JW|A9FVNJ{DJP23PMn z3fEydm*^#3hBkrz%h1;Qw8FJe;)*W@S5+3Sa)s+8?A4Et)>C|6;d)-u)q9D;6;bt^ zu5eXJT)mH^>v?k)KGlA*o}y*6o}xtIQ|%`1QutK6MQ97^IalFJrt!tI@cHd_H~1oB z@I5z*ulE*(Z=s}5Oi}n0AA0wv@g2^>=eOOZ;QR2H`o5^}srts}D155Ek#!26Pv0-o z_=>ae4a)r!Ro|Io=<6B97x}Hir|65^HwNDa)A%A;_y!a{$&b^<(8u~Vy!H99UE%ZF z?@5KvudklQH#ZC4ff0Q04mnnGCvH&q6h9&x6~0qt`$Z(*bJiFr44%a#|PAF}=G z$KV^o-}sM4@x>of_=**OS0H=Yb@gQrT#@QgT#+Ps^!2JwME+|OS8wAeE^#nT+rq56 z`n>HwRKHL%mTtR<-*$=@y`I9S>MFKCTXwtkt9FC7IQKqf+AY3yls54*MVrru ze^j`XoJ6|PwB4IUo8N9HfzMRFqQ23PGiI~Et_!^m=#&>EKKA%2`uW$@~ zzaw9!?RF}Biavo49eh1i@*y%KjZb9Z^W{#~H+KwuoEy!^UHlb=uS)5G%N4$e!bdw4 zAI`$HEz@?rL50iLPqJ^O`5>geG}ild{Wpb6>6G{t;L7HyU(c7A6GqlAlxt#X{? zQ^sEDCp)^I#rY?-pRHNPY|0M9f4E&em z$8MgGUr*=XOa4jVeHr)w`Gb?>52o`I!?1m2f{r^t^@ zJ0X8=I{(kfKMA}q1LyvN+1Shz^5>=V|AhRL!22@rACn*ZcS8RBbp9UlPXh1Dz_*bf zJ9k3dQ=~w!=OCNWW<>+VDA5`CnAA`+$15Xt;@%7lm*JBf3k4=0%Ht}`X#Me2E z(d+b+wCkLcQeV}lC%)=TkA77@S^KKY_fEDlu)`yEaIpU-?)55Soh_vF89rEE`#Q0I z;pVDQ`?miV6YN{x9$lhzv~L$&r*yP$7ho%m*rVSzjb3!w#!=hWA3N^8LOf9~?P)J~ ztJweYrfH+)8U5Mi^>GKHvVR%#W(RzGI9~vK<8WM#ct?%vJQOu|8sMhzCb$_w6HSFP=6!j*4d$9)Db>yv$hD zyI$e(?U}P!`^jzxAJQ-ul@1( zeABo&yN-jIvAq~OAyY?Dq3H5$HtfF)ALDN;x)iS7Po?>Ia~5r*_^=_dvy`nMr~|a! zE9W1Pg`>2Il%j2}vL}CFa)vfb4t-oFVgKErX!GsA4=LIduK4FhX^Z?+(WY>T@1<#r zPeL2`=7vXUlXrDy?3l>iV`%%AQQ8DFAI_#t`41X*V@ohkqums3@dJvs=hggg^BCHY zGh{>27WrJ7Hf*dh@-d2!ewt~w_)Uv7_8v=ys47UeKLE^i5jJ$z+MBY{?+LXNYNZPUxwC-I3~jw{ zDcbyYlXIhVU+Dd`Y0S;0&9_adXJmn*P2q}Q8)s+}gNinVOWdJoQ++|4lcsHM7Hy;W zke>`sBNr>$lr9phMrn(Gbd)ynl3a(*;^{WkZYLpc=Zx|+&b%U{Kjb`%e(Klr%u(7R znYmTA4jIKaZeW8Z+&-7Y|KkvJH)TS5TlQzB8 zc!KmvZ5icr9Ni1OK7M$s6*ICI->c|S?H_4Ubon{}dC$-l37f{f*>w4Je2Mn286wK4{3$)?2S=dqRy7&nem>YHlj~NV?79)7j6?=I5r&_$59tN}I40 zZ3&lGJ6mv}Bso5-SV6d(GVcJuWUx&>KNeCYkSqD|E` za+#t{>2+}n<5y7@ZGJsZLZA5KzQU!((@g(tRkZm$KyGO_g)4FsvUWI&t`S_l{+O?9 z!Cv%ZrVm6KM(L9LfS*;WejQJu`oN;`>jRXp?z~p>^()mJ^pJyJ znVjFpzOhlL?>-H4)VjgC(}lloV2GYgHFACLGsIpKZhIMP2e*vO;gx+YZF^O2@8@Zo z&?w(}UD_ZsM)~8X-!}iQ+QzRB`bn;LjOm9H>oZ@jSF81oYSOV*jlEwye*Tb|ALw;0 z?3X3ED_gEx<5$jJuNevp7Tu*^$~B~$)Mv!P$By_Wob&9*7apIFH3#t<3E`In4({+a zgRHUBj_57?qu4*5E6-L$KEeNCVxkCrBjxgr6$S&bbAllg|2vs4b2qijYv%Hdw3j#u z|B|4~`n_x9fwxzscY~x!QpZrHT_ba>J8tC6_BT1ReWN;u!n|oxpFlM~%9U&H_>8D> zB#m)fez&TLO;a<#`~jZM@Ym1f+Jwr(**5jowEtwEoBhW`Df`^)H?sF!$KG{Kl>O^- zO{?lc(`ve^1b7MX688H_h(}c73f7B=Mdxge6Z>N)`}YQAb?3zLX!{)KDTqLiJj)OX z>6;?>bqmctu!(gU+Eu}&&rOwt2lY+8v}2rev1xcg6)@T)N49+g-|z@<;ls-eamA_1 zFI~aS0@CHdr(0(VoxLGXU&mR;k8qa0FM`jSW_RL$RTvK0owGEjei!j{I)^#qI4om8 zn0c#)_lxk5xtg=B?WDVYb*>r2H-I|Wxn=B|5N{|6Zq~;}c@sa`PTn4|LoJ-A=@|Cg zU8MU%WSU${!`DHjm;6=v`5)Oe;i2i!uFQQ+=DwxOeM_CjXeo2wQs%xTI&I9{w}iQG ziF0zQ7`ZL0JWu&?R#?>~!I;P?ko9oGamuaYEM;dT7Wh767qT1tzHFDXosALXQsB?Q zUERgSA2t`1iRLzWhPbV*c?M^QLo@8=a?TJNgNJ)qhhwf@9BU`eMDfiZ^DYW%=2O+e z`|U--eCqGh@0ICyK$G9yhh7^tpW>`0y-LNGdF^50KGVQ`&ku7B_95XeXca1!p<};yLFEJ>(YYoIy3A=RD~9 zYw66<6rFE!2DdAqxeLxB{vhXF~yRo(=iDc{b$n=Glq*xsoQJjueFxvCb_sdD+5LJz zGfhYHF6LftV!N2nOcmy=qnf?oV&Q$`Mbgg~&W<@ke+&=k$5sgU>ry_yEX?ByHTOGf zG;jZ7Jm)DnG0!^=FA=DGVxUrG9~aDzocf4p8eyPC;ET;0o`)y(6IG$fZ8%?ptCFJC}BC*s|_F3(3J_ivVJ9+A-8C(n}i-1~hm6w=js{h|=- z`sjeI=zy{!$`j{Vg<3wcm4|HQAzOLKRvxmIhiv5`TY1P<9+adB|2CvXzHy zuQU&h(E@bP~Ja;~KiK}-Pvh`}76}S&r2eS1l?+~&@jI((i$QJ$%!R`Wc zPZHTm@ivex@C+oSY!$fZ24ssj-+7}ekS)?n+4^k1hW(ar8*NdirH!-JjJ0zX3;nER zY1!%*?)tEX+z{J<^W}@T3-|gPgniq9=FBN4ogtjFYK8OnGf3A7FT=<%`8u9_Tt6DUR;izDQDd+Wq8j}#-$aSecS;3rW`#wG;9yF3Gd>2 z*sIwcw%xs&x$aHPY#WTa<*S7|A6Y)o!<#em#6B<|EJxq((#$neh5OOtgpBp;es_rY z4a%x z(32~Qz0S8HUT1yOKJ#AatB-ody%BHipzdv>yyPHpC3f+KR|A8TyH0r9?iZeMzcBaE z2I~hk_qj57Gc3Ft28lh|&lvKw?mgJ2+Z~S)PrF~|+&uA{_}}P{*xQNyEZ-fENA1FO z0q>)?1-!y%HTyyO{KwX%<7`9Y8sc(42w!Jzr+(xQfr~Q*-df%dKF9Z+nmuD%09=ew z1MHa%YUUpLJThdqLD#KsXm)Z7Ayi7t1=(fBk388sCHPhF5(s%jJM^q&*i!|<2c<;ZsLDg zuj6#j;4DB7{~K@eY{o|Dr;L7VgRmU$m&VE#YgZIMagjY!zHh!rKV|KZ{e>HZ``FO1 zdpvsQJGA5FJg*q^nFYdYyIQz<4lx~uqTaFxg#D$xn)gBvJ~&r}+;y)b*Mm`WuY)e7 z-q=^}-nBB0gfP#jL^kNFU5u+|OhsoMPoH{IYc`Qt-SXV0ZqQuU6t;e~(9hGKHy2E0 zEFhi)y5BAJ_#PvU_3OkG-%l*?tA%-Yu7~IIO}>u` zbN*4{zwhEM_Lqs}v7dfe2`xu8^E~*DU0}c7CcMEx%AuXlC?qa6Iw&X1yHc}r_&+%q z@tSo_y~BFc?&{aQ2X^V6v^gHg(QFUd&Oy&RhXPWUdk-+a_3)egUKm_m2Z)`{`wU8>|rrXcqf6pf7_{#H$DMd_gCr0d&tD#55`=(7^g9mTw@IdHI~mVvPq@eUs(Ak`wZl0*9u|Jsl@g=MBfiH zFUi5?)B-LsXZ89hvD*)@{SUfAWIn0EE1m|<<0q4hZ^Y)T+s$v{t1KVZWeifzaO>9eZv6IA==5I3xP1Y$yjj@E zJERW-vFH*8ZD=qjBHm~!Y*lsVs<|G%n^u*fd>7p0ABXkYRG2d-#K`Rq?O&OHhMZ@5 z$s~PXhMMo$#sLv~b1`#c?1M(^D>tzonK%D&IPs_Tdcd#9LUEOlke5oV%>#S@D_fr!WNU?^039^dlj~rd^0yN zu86j_D^JMQRG?+avlX`-MJdK&HGvDf!%?zcZ6 z>|4Jky#MNy=aWM2{I{asQFKLRC*x74W`1A_w*Feiv>(zZUgi#sXviJ9Uf7l7{U&!{ zyz))qy1M4x)}eU^mkaOULCt-tLYR-EU!UHud5hLl$34=9ME5dBmUE8VS1~XC1^9j| z+)q~ubH@;K4#uV5&l6q+cyErA_Db5PAZ-_}!!|s?_);$H`G+){7+3D6{}^>@6NWeV zBj!xoh4<0{;ay&?*@FRmLQ;lz**0v;Ke2`o4eHaipng)+aM0O$QzERNtVw^^oY+ci zhHZ~(v9GrWyzSQtdlz>)?83fSdX%$AYF-<#x80-dU)et7ZRh(~IJ!ZekB9|~D&0b# z{OF4TuVWG8!91zYu_>-)Ol(7^@%?Li8NdF-yl91H7ZstiUP1rALfp(J(Q)MI*emQA zTZn^29)ow1b%4&Vpf|VRiy94hfzRmP%K5_f7*l%wANJlnKC0^e|G#(cEZGBG5*9JU z+$2Cms$PMjRc4fgqR`4$achgn2v}4=D_Yx6HItjk!V<(0v5T582_PU9E)W%kjFKQK zRa8K0-5PM~rxq1(sV2YY``!tQKtJ~L>*xFX{`&jwA5jbKWEGPTsx6 zCe#nXP~Wrrrqz-p56R^jx_qm!x#~7pLsdwUok&C$R73*_ncDNX;Y)KH= zBq*|+J(RJpXr`PAwDA?%HX&pWhi6nBq%U3y+Ue7R;ffFY*iU@u@H=-dWb`(pTSB(C zC=|YXPH%HP_kQ^A3fTvjs&>Vz!SLN%`q&$msOHu=%#mL@as+dvH*2}Kb!x&N-ai}q zSl&B)%SHt{*(WCUI*lg_y6VA}1x=1sE37>w#nkG9=E#|feYQ_C7ktRr&=*y2@;!71 z*1l;nW*gpxm;90VsmMsoYkRq3T2mRra?Vs8s@i5bY4n|MDEAFq8nmqfcrIgfW<71c zENEucbA~0nYRPPPceTTF!gIFzHP*e>G#WeLzE1nR0N-C7wEgs{_P3y%-)euCxv1&L zSYi0z&)}^;Q_P=zip}RU?vdHby*kKC6%~vF=de{yMn{^=Im*zU#!|%`u~m(wrYh~_ zmwsYDb}46oJ@|1fV_&C+Od(_5wf>~Pq4(qLCpI4H|Mt5x-jAjGl-L}P(q2*VzPX-$ zKBE8IE4F-KZ`g8l{|kTi`xL!3mp-Zw+Mg{~%`cvzuRg&>tWm#0?%Lt0%23VbdsQ>= z7i7Do+~@MDVrMLdrrf8p@42VY26$A@!{ZoKoN?@S@f|XbF~+cKEDw)kd5Ue{qS)v8 z-1}sPy~X)-ce`_zaj`v%xNC;_yLKXD$@&_)2z`S!>4PTJ^j`l6!xMUp7o|GW2!w=s@Nl@ zF(!;@+P07Fv$t`d$XolI_44JEUfKW^{McyZ0dym!C0A_Ju?$6VXf103J_E*2^;pFT zKY4xOTXv&Eb(z^>ib7;+7=gPhgJx!*&^d-b`Lq0ryhe`VcBzgq(m0oF~b zx&CG5eHOGePM^L8{kX@WAGRNQs69Y`)9*ICX+2{+>;dvYM}4yuyF8ElFVfeNuRLUL zuvPQCa%cl<&ay+Mb|dSho<&XrDQYb#__M_RONc-(&r3RrPdi3#=gxzM%~W1;SZ> zNz)3`k?Sv_4qo(EbQkLm<}3B7WvsKk^gFuo>F}!PL)0OMwZxh|eW+^AKH&7b?SY;@ z0lm{K#$XERamD;zoVCPw!n4hhmn*T%Y^B|Q<39V`8(B+N@6!YH3H|cT^(1Ei+0Dxt zcj#Nyo6x}JL9=wPVz+L%Iu`gf9dR`5t3d8lmOvE=;5 zK@sOHN6koJw<~A8DbVObXKvbcpYYw)=#l|PhY5RyZbLsl#jf-D&*|HfLS~&AvTc(& zcM>#ZI_E~~@R6Sf&2XNon>w`R68exeLY&YC+cPmJ=ktpGU`AI5E!l5Wj~uw;P*3^Xk%?n<4*m7me)_)o zUF7Q=Wab0tGIh+iDD>hFUhX$@?maWD_u*TtM|3sY-%eUCG$faEinFl6|A6}TQth>$ zlLz{YUeaE*`%8N*^LyXbUxweGvK6^lGYS`KGxue0)w+Bl_?w`Es^b?4iVsrxo$af| zClta?QARvACGsrpRw6#L=Pmq>8hg8prA^Xy(u&BN@EDD)(5IEGp%=gB+9S$u)T2IC zE0(gWI%mH9!~fJT$-yo<Sgy$96Tu7jc2t5G%9BkI`n zV*iWZHN6$xW(+Ej`>Y%##(3M>Y(;5)O6*ogi_+JGrSv!OE zMp!W;Xj$hOgRTY-J@P^NNN8FGb$#>`_+Bn!(8C!6ksa*z>y(&H|7O`9d()$b?11J- z+vD63w_rJOZ^4`350CP@1|F3HugZ#ZcOT(`+1!cOiOueBq{C;;xMPPgP2Q=w4q8UK zgkI)A3Vde)w9eklS|QGs`b-VlHMt?X>XVRd@%@UW9@ED5=(LmeR$zOyJkVy^>!DvO zM8=>WH{Fa~K8yLTj1J$kgfMu%$bkGm-<)y}Y2qWet6QuV+K4|>8wBqvDMhD6Hefx8 z-&odMtO{ST;;gNHrXO4Au&BqZYNIa+15xP0AA@#PThJW#0da)>58wgp&06xfV$^RV ze2wq442!+g6aUGj{|$fIGymA{H!-RX*OYEyCCd|=-J!**eI0tMVB;H7!YzTb?cVF) zv%#~QbC{RWB3s{ei(|(YTd}pv_qGn*6aJvzw*jAGB|2B7yB1&KH)}EGtVR0Seigg# zOWdu9eW~tM!k6ibH<_!G~05A61r@%!Wv*9HyXjzi=XI}1Bk)|+Zzh?@b{kuZH@MwM?1M6(pgK%_S%{za)T3RnwmylN6xl2czPY{Q`X(E zm(kbwPoGF1>8v~bW$JOA=BztukN8LJ?_NPVYc7SpUQ2x{F2iSag(7^;wkka4rW)#n z4bY^_O%?PzVcmUBJIwRmWKG>ipFw+SbjIaw)*@@}(Vx@j=!lYcEpatHpbxZD?Dyp5 z&az~GU&=ZoO}mAB7Qd;>nY=4>rz$tZeTYHvdBelKVxNy)kgJ&fSwZuTdpWzh3OV*^ zY(%Xg?r8{_{-=Ys#XMQdcvFs%e;Yivmnt%l9;n977P#3mko$}PGXFEshBofO{0_8& zHN9XUwmstNpjBs1qA&Hpl#5pk-Sqw2yL|&u>NcN!waDc zV#6O%O!^n(dtWs-LnkCp&F88eZNjemDD_3A@?6GTdWw4HsIe%tZZmvu0r{&~-A9mDPLHpB1 z*sY_?iz(=qHnutX%C|vj|J|Yw&0&`C{J)s@qMKZS42Dn4%-y2uJ3k8<1q~_o&8>=l z?Ntk?;|G9kB(}eI36mN$<%Tc*zYgD#_i63|eFc65opXFwPbYm>$Wgk~qbKX{TI!jr#D4Q7^?rdd zoX%Xogx|Z=SeDLwVI6bFrv0~%)YxYF-+Q&kUN@0)??Jcan{mbxoskBC7dE?^8>Le}pu0FR<6ddHVqEGw%+|6xaGxGhUD|M-IV&Q|9P{xdv+>!p#BNj{!h>q zY^WRh;d9*1J-G7DcEx>`ZJg8^-a?o#?;p2Yiw_J%1_sTwl%Hz`ecXG5tT`{$74ZR|f5KF5YzWL+CE|)ZXC!&&@!O%2Z98#r?*z_`(G16AxOibuoNs|`SB?9~ka275ugy$d=t zZMW06<{hp0OzAuN(~)HD}AZz}{qzl)m6Mephn=zr8OYKXrqCu5j*0 zw&i~0k$dR3UC>O@p@XKM_o6G3{XzK)-eq01K@%t=o3eb1&~4x1`)|REm-3h$c~w14itYoEClc{MKtuR}hc z>hgPR1?ZkBM*UReKE`_IqcZmu_GG$aNxfqC^=3R$RC_`*cLyMY$vi&Lgsh0~X2~Pu z>(W{WFaIp`T+}a*qSLpc7j4GV!dL4b{-bml->LOCNjDVZ8hn`ZeqzI_{2CdnCG( zq@iP)Udpe6r;XeIAKQ;jsEKbjv6iyIrD7NSY#C>d1-R!lK%Xi2R-e|)1Iw^sVW+5? zf^QXH5Vin&IQ>_atJON#y;fc^W@r`K@ zUBI16jL~feH2fnSv8O*n*2QNucszct@tkdOlRw-B55D*dmpAWx2z*H&uq3xC_S>yW zES>Kl^O_SL;u~s;_|m~y`t2{9l-SQYHNEvy?lEk@f2DC}C?Plz@rhXlA_raN@E7Y(i_M3IF1lTGlt8%5hd$!YC4FZfnQMM? z!cJ)H?f6iZV)x(LX$^wDUj2nbLnXg1`nJ%KonI)iUc6(3{N_EkDdx3N=oohLj5f{8 zT*ckq+%2B5g1JOow3lL^bpRX1kNLltFlUk)kqFoaY|2RZ&CYhlZyk3hu}(+M zhc9L^pC~JvwZ3jFcUf~cxpxlpW`Sa+UB+G6*k zU*Wg)i=h4Z#qiln&_BZ=yW(Q>|9jxse6y1FjeJ41&*q!h9nt?7`8M4j(_+0vj?6YaB zbqT!Y=Af*589thM&6we4BzYb znVXSApPH`PPm}g%bmV(I;yyl+6nz0SZft*OH+It7W-9hA*^K`I<{sxGW1nlEbMN!!x_jYCZ#~aE<}4T1XAb_y zV&-(4pY<tx`Iz6s(NQH&bT&RU=BD)maw1{% zZsz@M#LF6BJyZ#eY~>7qThO8A65oq&NZK!W4l+O6pohDO?oqJA!sy3m7Zr>Sms7WWMv5Pa~(I6TQIPU|wahHb%nJ*2%o) z_kzEX-pRW0L$CL%b~f>qe^bp7$ixeHZ{&N(iG|#OnGFwxmX2su?bLGS`yk#aryrp2 ztSh^65WJ$52cD7j9NciyxluSO^LZ3>#34$Az7*ZJJ|<|&H#L-M_VzAN`_!xzKQxL9?T65HB~ zaXJVu-i7`3O=OCFL9=59Jah(kC6=r^dJoNa}8Xm!~ewUEZ`6yPEjI9REq+ zJ@|Sab(8u{2r>_X7V?r&kNmr2w-WcMX$DW+OUM(~2zlZjLY}xv$P-rxdE(h>iop}l zB9zAuze;IHaqyaf1ffqg2pznpq@{IFbugQ$Yf>D{CZU7bzb}zu`ij&;_|CE^-~?tL#&_Q9SMl9*uO0Ju?*_%( z6$LM_h&+U&o4|Ok#|Bd+e)_{$&}pAL_vYz~k&Ai_2S@v^qLtbdt~ zM`b-uj3PJ9VoWBnf1^b;mcEFrocM3y|EHBJ_!Mkt;isMU9h(&Mj@8W7_D;L%Wm(VI z3VyD{YCd=56T5CFvg{^k3+wtk>_8Py!56S=iB4*>9_z4aN!q5T(d$z9{|DA)8@3tf zj?Eh1%x{g~l4rp)$jNtNvu0h}(1%U@Cmx;vt-zk5ed^B5ENl$kiHeEeBbLp&*a!baTVEs3bBxFB{AT>>pr0eo z8e zHnPmTotpV1n6pgqiJ9oB^9i+h$b8aPoluLxA8dI4kEuU)#5BTxRK9#|6 zj~Bf5Szgs16IaYyW*WP+n8P_2)&fzl3e|9*&tIo>p$+)j|AAIs~TV{2|Yeflvj5N26%B{_A zyFWXeH#p7B+xm&<4>4axSAXnu;(ew6>AustFUA=H$#N#TX{{e8+r6CqP+u8Cx`Qdi zk65x0{NX7Yd)4qwhBWr7aaQCtU=MEsqsF5gzuTsZv8WVrP-nELPwO9B$v?j`FqMW@=*ipL8_%!2lTd&z<=8%0Ndri|@?w4GT}cB1NzEgVp8# zeh>J^@)V(O$RI=Y`-Z~zeaN}o0aM|F&$m$yyzc$asW-UBc`3sjA8Q~=UD#*0@4-)F zcMqp6mtz;ajCKUhx0-loxxDizb^MI;%u|MO_ZID`PQLTjezCp8s*#nez<=%WK(kX^ z8hh`V$SS+>4-Cbg;KTny+1dm}*DUt=jfehU5sX<@Cw2DdS?oWX=NpARo$qjWqb~|3 zr>0Z#N}jNP_rTc1?<%ncKEAON`*0T6yV1}~aD<;9$U@gH4%aR37n6OAU^n$m$n4N| zJ?}i^(>67h%{Y14&&FO;``xx(3Hyg{GYE{E09C$e+c~|?eX8B{{?yOSKF(e zIAA{hgwTZjjy-{PI&Jkb2c34c_+tzD{hu z+KN%w3_qkjd@J(_Xf$Qb+erTrmr4JPxRLkiukt~(?Jj&AcR6QCS_Sk;I%y;5hl(>* zbN@Te)?B8nqA?vM& z5?j}U_wG^bJr&4XS0isNV2&+N^y~$4U(Hw4>2r}4%o+Gw_x0Z;_0VVMp(`XbtuUfl z&v7IfPqUiHw_Nhc`g>0>-6`A!sX{Zl@;wo*3_v5=D6cA6 z9@yfFlnmB3(HJHs_8erN)9s!o3EK|AJW-O9IW4g_uAB|-L8 z^B&(?=0^@c{4Jp+&bI{L!HTDDKX=!4b|4UdXw@r=)Xs zYN|0fl!~n_)fjk9DrcvrlFk{;3sViS%Ne zX^gqjQexZXthIOXmm(8wo(YWs6Sv?CWZX}oVaU{T`90zsWLsqRk?7qPp=F|bv-fJm zdUSQtQzaZpzGcXRJhjlpbnp;PDE~>zCeK{t!YBUDZ{*UAe5)2(Nm=IHFf{BzzWo*7 znE>6rjPLxCH3a^3ZVvBZSFnh;{sRnHjIxpQYLV~e)v}gf;JZ4urVo%;MONL0UQAq8 znC~K|Z+Z=x9lc{@*u`w%`*!ddo2g&=TYQ&r?r)J-`F_@0*yj0P_d5TZu;2b38|P}p z^zlgf=Rr$+t@t?JLchVTCci5#!xr-rd3F-M&)%VSa1rPgHRwV9SK-yf)%+P;=oL;L zux-5mI<}Ke{IH*4m%}Dp{hnhtaPVl&w6lgb%N`&9WsVKoWS!d8(*E19D}0L01-na) zhF#$2?r+~x_xow@V`D{D6k9BFO5+S_*=vSv$*s+zKhO^w^O^wb&}R(337dC>ClLUv$GHq%;~WEood1WPs(aAB7~2E zLty`v`Ca}?yo`PIpTSUE&hG$rq2KV$2RQqhGncbo1qV`s9IB#c%Wp~J-Qn*u<~OlU zm?IW@kxz|y!F%;?`7?@ zGCm1S{19f{62XqZGvA~i-eg=8nmuAJw#EgltzoR=l^T8lXa(ycd#*=M-PdV$7~DfW z5Sy}K5H$8^p~t3V!RHd1by`FVd!Jz~K7;*92a~7p>L^EHKFv6hdw`I zUz7b^#zf-54w}9={m58IKS{rv^n3L*r%&N^=y&wl+9$wCuxF`)byxE|a=c1C_+9se zThG4_puI(IdkbjSaN3*oIS>0Ayfau^GgKWuV}aweH{Buo3IgUi>>0><9bbS7504-N zLYL0zo772p=e*aEo%%TR!%pwx#5+1^-5t;@_8ffgDrCL6YD@zY$^0}ko`u#SYdPuI z8=KK_>po)sT?K}p|L5Gsf64{Bi_8#k`<~x}LaM#_JKXOT@!BIEO44iA_lCF75oM3S zYl@vpD75)8Xm8c9L$*_B40`TNZ1?RlPZJ-m#D8Nvsk4Lm!Koim*4FT&g6OKbqZt5+!id)+U+jhreeE0-_ImYa5Zb^F_!b4cTH;* zGUX+1Jab+4x!D!-7$@dBb3n?IHJ}+GulZe@xdBE2+!NpQ+BJ_lzs;0aRXfFIzux=I z1Lgqfj@@?n-{?EySl>cR%{11&2bry4yq7%_&bl=6cX%CIQG+~@q!rLV*47UA<4uCS zX5ZNkFEo=mv%}AS&gS3Y>>soJU}~D-W7xd~yK0;Kub?gbho*V$4f5TWd0t{JV&}4; zGj(8Zvfx9NFEeJhIP}}z0M9s+bjc?++rUzfy_S5;cXNS+j7VLOJhYiy*F|5*ypyeDhWwa0XuNRwmDR@HN>(41cqm>6gvC6X@hy z9r&uJvS*tyuZHiz$Km(1=UUZ%axwA%Hg@M-^2obl0~5YKl6=m5ACdv5*qz8)(lT_?%DIdrtOrwmbO>^geOKG@~^!Gd5UtR zjL!y8&T#s1zhcj)4{L2?chw)xxcx(W`0dE0+1yPXflp0==k0}NVy7)`!cMRV`L76m zH-Y_D5qQ{o`~wNW8+ffE)vG~snR6Qa)oTq<;a!Ty!6phukw+ISyU5$<8X~(H`RJ7e zTU4WP59RM?Prw$+=dOamjqufVqJMz7kEB_Jp)_rfnuh+7s+B}it&&hGv?SF!HIbqX z#^*FRl%k!crdX#X0?54SqJI#6jqJ-hU=0*t1Ia%Ho5vZ{Jp}(APg|~mN8F^w{QI&+ z&JFKx^E$GwKPl^qy(h|9M$WzR<>%OE)l*+D>yU?YmN;va`tp?U4CWca*)U3QFz2gk z`sGs@PoJN*dSki6(Or@8rygX@?F`1Mk@dN&&svVXgMA!=6X~0hVNYz%PDR!R~O8EIK zMQ0C-wes0c^YyC#_WUtHAbLh5eMW4(0iA%IDUKIi2<&zf@ws zWi9{qB-Q@#7h;e2TwCtLH?@=b>+3LkEmy)%F^<@@C{wdYV{8@kKH{IxB3|}e2EEqu zQqE#ouIQ!MdStKugyq=8mb2ggvyk~2`%LoRWj-yHar9VAN)>a_5@#>J{pxkjnHc76 z0d)NLWZig;CEznAz3Xx8kjM0Wuv*SuvakI$x>ze%{ivMRCHr|)?&n~BZgJPuz&(>LedLZclqm-*nZA2Q||Gw_B^aT4{MM6EmaR|Pi5_?tUYWTDterw z>ubriwjX;V_t&6jmY`=2M9(ZfBRy8>hvu9>mprt#T72xM%;T;?H5RQ!j(!ANSqn7n zJ!H|(WX|Hlc{j-Z>CW)oesttq)|TI+Eu;R-@AiJ5edX*$8z4ITTVLr1xDyKuaD|vqu z?|bEabm%o{yboSwM+)h@UrB$CqCdUzK6jwt|0^cFa7W4^-Psr6-X(?e-W=QZ!LZ`v zthxxak-6@Vq%3~KIh*cm=%{nw3*V7DW8Axwz{Y3;Lg?iQ_&2;<{Fo*0__cwF6lt2SW0>$ z=}SnjC;ixdgr3q*LlVrb9g_adeuOrzVQ!ILxI@;0vk%|MS4IBk9i9>%IoGq8r%+W6 z^%ec3bHnY=*|{-rpH%v38~Sc7eMNr` zNL96g^zXo0^^go8d|%`MLXic;zNPb61rg-r1U8B#$U_srrrF>#CLps+L1vjk8nk8z zJiD*~TROU|`1u8^m^GETvj$r5Ch|Q`^(DN28@7ar$h2+9ST~D)f?pe1e@Fs;{|@gX zE3SPSnF?L7?lRh#aNf7iL?)}IT>CcUZm<$|8+!_VhTf!l%y#y=4hcaoK88o?*mi!d zh%RV*eh$yyK|P-$?kV&KXts$yQ8Sr-QL!6z*TQ#eetRvt!_DAze&_MVDk@c7djub? z%K2$6*kX`J*>@AGsK77%X2|gY^nib8I`z^#)@m@pzds+$`A1({t2KUm92yt9xg%TG zpm7gO&ajqv6>T+kY7?J>g*?MJ}?V< zsQ8agpOSt!{d8F~*o}^SzclS|dcL!!4y7;R`_a}{4yP-~v=L?T=?<^)(GMaEtI}?_ zF0)g0|BKQ;PJAy@&i;J50=dR*(`7kIb5)9BmhA#Z+M+c3|He6xxyXt;X%o2BTbDX* zbnlvE4tCp+;+8w1o9@3$>18@(_SZ^`)%!3#tnK@N_$!BlMG9c!PeELI$QH}WsPUz9Uq zmGxcyCw1s*t1~Z3kDM26JC2Ljz#Zj*L}y&{h;Uw zfmwVnqAt#tHY?MQ?CY4X>YMfHb98+sb=9-0KFP8V)u*S_hq`!=Eh{SbEgms9D9fGO zn~tvMk!2~&jaly8aOzt=Yky03J2v-mfn(J!1n2$T(V z`=Sh=aXCB+x{}|(eD`$Cy?4Gb?te$e^csZ`aLWt5dL`fS%6CG->u4kAohpuO$GN`3 z$|%cM9*8^Pc-lJNJN(|UU~iUqFH47>}TDxk!(cXk-cUfwNI zc)N25wBGkk~>~~$+>xmW;yhUwInnuJZd+xbeWug zO8pPb$Jxn#xJA}7a+^Qq%U8m8ZGawC9YN1#-kGWPgz z<+q35K78T)E|odpiyHY4;p>9N6x2fhvA=ua1BJhaFQgvM?`u#N=MQ8}w9M32AQP^r zJu1!FZ(5b6ES{v1r~D%enMm%~mi5~{r-?gF#|UqMCh?8pu5U-H<=b7~J@GfouXF3# zI_F#FpQ7P|GfMEgHI7k}?N7C7v+nQa?K*qcotx$H;d@g#^L_SIW7Wf+;p?Yu)O{1) zH&*lez>M!P=Y|{g4||6n_+gXoYr4c(!tV)L(|9<@GjjH4` zR&DpX_4Nfz`rJ9IdEWq`MG?2&nKIv)!;F)RYnANpl{Hqr)F{6{?a=u0ZZqld-hk~} zL%WrLn@?%fic*m+#(0MNnG60ZpPiaev{AKw{j%9=?A}G-U)sRhFXBw4vlR3F0Qg0C zVv362IAxzXJBM>mt2yK70Ov6F7HlJV*I_4E=3pYt1ElY&Vm}o2fZ4sAbg+>4mhinq zYpJt>46si#l=Ym)wuSQ~_iH+5MI5FT<#X&kzrkiusl|M=I9Kv|)hG^W;SZZqj%*v_ zNZU9!;BD!f;7qsAO0%TTpk2J%MSIGl&Y4xwhut%)oUl@fS3aC&RNkMZPvAT&i?j(| z)o?=6DoCrCpLOK-+`cT$a{E&Jt_ovV%RQdI_8*z==z6tG(eUG1r=laAif({Tp%tcr z0UQHfpca41Hnr;vaOfkv8QO$haPhtl#Kx7u#TW6?T-7KaqsAk(su6ieiI+d7#I4)ek2zN{EY>#Xd&MhQXBAf}@#s%E zbBp*W@e_!zB)+nb8n3>R{BsneTJoo<@hal0Qq_2EE%_=Hqn7wfy=uIsRxxV6P~vlc zO+Mo1KBUB6A$|_@V$KIjeEvg}KVLECOZk~-Y@drgTi_%-EozuW>TKSPbz5ns3M zC>mlp_xVQfub(7z=1Z*jmy~jR88is+eg9Mj_i92nOWn^x#asFI`8*9 z`u(HliJ~R@`ex*9HO2%pK znwB;Qoi58V{qPNbgJTHT{vFD2&dmcKZWU!58QsQRl3eW9o~JPJPK+OWudb``C%|(pS`%ykp4wQ}W(^ z;=Bctw-0$!$vcR=BTk%`aWNWyq77eEz?ek$!yi0J9(Eu6fw+9^PY+{X%4EJV=02Za z<_0`SF;vL9^tYF1M2SmMmxBjk=`-E^lPoH;BqhV)Ho4~aW8hv8?7_lYc`3_UV^af|3C z!M{*1Pq-rLx0<$lz*l*xpXT&~$fjaF+u6kjNX{_rd)5V>7Z?tg7{X3H9pM z2ONwib&>MiwzgmcONB;lL$|9HI}`RvWQ+PIkuT`;RrLAMW&Ju?*6*Z^|IK%Q8}mJa zoFKHyA26X+i|ZY|==x0-po>PhCoc5JF|C?}}PZw{ANm8YEuB@vhj*JsLvR(z=IVdu2aJtr-DYC3zTXdsh?Hs3QyH0~92zCZvbGL@#*diZi zbGJf2*A&WnL6`DttQl;WgyRG==7qN7qabXZkGv}3UnM?GYkfoF3BQ(j!c1)Q5DKlQU-h z^rf_ox}FT?MgE_rQD?uk?N^$%a=T`&n6FWPFZGpi0dt2fj5%VQcz)pXD|`f*q(8J7 z-6vD##hhjV-InO%IBIeY-~Gf@4M8F+_zv70%; z-mJoA=F>95K!;I0fb(?;OLzwJdkEpc#pJyyGkj0Fl<}P-=VmkW9sZthNpEV7NkXCRM9ij(C{cgrj9 zos_rUj(H>J>VnIEv4HZ+zb7^yxlbqNR|o1*!h%kM8Re#f&qGYkDFi*?wI^ltp`#{X`{lFXj)$es?rYpQ|GwU$lg852nO*&4J9SnHr7x5GojYmAW?MxW*~W^-0%P#P zZpQL;1&7BVSm@YX(Dk*_KlQdspYN@e{bz5h?5o~gG~k$Zp5HJ_EBzgL=aF|6d7n6O z-XRS$w9+4wcPx2tAn$*iIPYM|+mE~% zAsKXF!wjQ-BRn*Nb8MdvXvOmaR`J+?v3g~Pv1((7vEsQ7WBKbHqz6d%lMe1@Y?`r@ z^hVN`JlEm&ar7xWfSk2tx0Hpy@%dEp;%gk6YSgp#RyR}LR?6EgWpUT;^Z1+QaSp{; z{5u)U*JT~XQt~uz?U4P3dSD)F@|tXXAz8-Yci5xg_i9C3;nUUV5~K00;lut0ZzLVR zQ8lyy3`B82VctSx;GIk05%q5%lLS4?L$MdYPkDp}iHz0AvxKKU6P!&gzJN2j%RX&m zV5FO#J}(3LgFC~#88Nn+GVi%BRP;!tscY_;v|B40-NCmzwBoHDe4Dce8nNB2!!EG} zy7vloAKgiMC+VF|-3F3gLi%9RhrHtL>O;4zYRcM5Spo8nma?F?>+r{J;SB9p{2Jwu zPFVrkIhuNsUPAg{(ua`Vv>pHQeEiGf@Gob=w;J)?uEW2(1wZmD@RIEc>4#;^V$usq zFCabt6+$n4&r?tc-Mk$>mOxWYsDU&52$h#z&Ul-wC737$k2+%W`JekJ<wtGGULJ058jM?q%`~HQ{9$U3W84P6k_x(Ft<8!LO3<`d;Rn8O)1p>=gJr%1IAW z{}y~B;B*TkJzV}1m~O&<1Z$_Q#NO)P%AE8wR({p?HPiQCK77ldq3O_iKepG(9NpVT z>Oa%HvssxayduV<`_VC49R7C=>EB;G%aM^&^i+6YQ6ejRPb25ZmEYP$=Y)>NgvQ+^ zd@9&iYs}2mqqoB!$#=T&qEonAY+(;Kf6jE<&)jXLZmpd4(pJnJLac+rcXIVW_wO6Z zGR`fBcdFFCbr^Zd$itb`ZBv!F%9{2xb9VVw#n5P{D}Uw6+(K5!)k^2H7RNEiWd0?3 z%3Q=p&=ViP7^9MRmo!s zA0VfFA=pLor!u!C?1QYbqleWt2-%A8xe=Q6>=;dZ{z^@I?x&jd{Oy{xv{ur3T1&Ud z+4?=ebg-`F{}|TqjvhvYek!M)1DHH<2&V!$_5Usvb{q!k+9Sm;X8OK*NRc^o8V!bTN_63K!e7Pk>=j>(jcX!tH#WD|- zwxi~!%;Of3bAnqnbbhz5M5kDz3{O+a9ogyh^6TAqn4>~pTc+G>yUd2`O734Ur!hVy?_6i0M_CU+`?fJ3)rRR- zkvh?8WR7-AOxL~B(J9`!j`6$5Dvo4_=R`&4&$XjXtWE4hdzzp{r&E5Bti240m$fYU zry-ZIJ|}2$U%{!;{zNu*#(tXYL2B|ti`zs$nFYROmez#NV@P6#?CBw1^pY9Gp^vN~ z&JT@C%rXiaX34&GjC@4xXq%@v+TW6Cw!3i`J|3Bt)j?GH!k1Vi$p%+ z)MVW0_+yYqy9Lb{=l9DUaJru~-v+*4s)Y0W==6MJR}THwN?4Q(OOv7Wr^LH@SF9D> z8F{VZM5cM`E=A52qQ5fDgW%Y9^6r71ij=MI;{9l=$m*H)0SVPi{(CsjKt-kotDpp8 z6LQ^qfBrXo(<% z+bgsUSsI**akndXSc}F9tz_P)6OEp0rW*x`=|W?Sf_GSVANS;&dbn>iOAqY$p#}}K zN}2Cv%y($zH|4uSvR!e*bglGq@{T4i>!<9t6XzW$c^8wnn!L-%+kE1@C6aeHdAE}H zJ@S5b+`Q0g&P88}Z&>oP7Fn0nS*6a-U6fX7;)m$2xyQ)SLmKcKMaE*QxyWMuxnsrp zyA~TN>re0zR#7NJ;sq};O=0c^7XIMhr(YsJV87r;wCP9xMs51hiN+c`+R4o8tNwl3 znz-sjZH3NU0o}{f1FDQIXRid*t~GJObh?PCYPqSYgZtVR!BwHsadJ@h=` zi&1!KsYA<*<>5$uhwP-Ef$H&`-$jh_tL0B(U$a&SPn?fFF}{1aXQ>)X3o3Rg;d=bqoO58x`G_SAJ>ZqyM7{tM z(S!0&I{bZQ5dC!$@+7u~P(Q0k?MJ;&VqSuqh@3>dyCIMDKo;v}BHsvKhQIS)?eIBvLmF=2n>S!vy#XEK2DuAaYz*SJ;CtPy63U_O?cUM@(DVH|_gP3eu3TIC z3u&*xJ_-YTpHawDAm4|ViOp@r!zuW)Qrx`JpE-F+bMi=Dc}LzY;Tg;`g!g3c%e-;j z#YW-2x9FFSJ}5RdS4L<4Bt+)Dp0-b7Os_}2oMaV6uGfka*VC7ix@;PbUf5KIjdaZ< z`e%~WRMlbRH(aYVwRLDq{hYnH=33-eITP_(qc}l)mE2oKTw5pUGA`HhE$N?YdH-6z zaRc9+nrzQ(6TQ>OCtm?i;hL$`xOJkWj(YAroHum@zRY4Ehl%)Q8yBR=#Ee=S3PNgrW(w9@w zTPI^rA}_L9@m5I}-^FD5aWZ2unYlPw_sz|AZ3*R%8beOS{`|{q+Kw)_lDUt*n7^`{ zQT*HPM&WO%^IU8k=X5uQtmK~Yx!vi@Zsda&B$&TW$erU7vNj5x@H)oeI;}WzomHH; z&KS6oyURCnhxv1?o!41|={?;xciGL$!45dsi<>B88t+cy-D$i#jq=b(H|81xpUX8$ zUe6_cD(O>6pGrDyCVdF$`Ooz>3SP%ohhAE|l28TLCt;|kQ6eGw=|BlZe|6H)Usv`v z^3(eo-t@k4jgUtxT{zt;jZBYw_%BajW#71eBk?y8f6a8QZ2WYqEHvHl6YtyD*YG{p zH|~ACZ#=-eMIq*KVhVMeVikv`@ZG-Dy`NF|TtDgtZBeI?el6+OBI{pE-}R&Jed(9J z#=zI*eVsb?GfIARGQY!CQ6#JtC&E^7L^lS%PF~XTH|7}y&*f3pWUDANnX)F+4~*@~ zJie7jKjqO+k{-57PnoXes?$mTDQ(R&)Q$N@x99R1gFN2N(RcdPxOZi~j=p91R_4dG zjq+PDh~wLCx+j^gkZkw`ayGM?qh~W_me$ywd9ldx&q^!dWA7HV{6NMH5(W;C!69rVN4RevO?o zle2Mzc4xZj!LIbd^x;JKQf@dmnzXmrI>lcjYZ<>kHpazwIT+~8 zuASnpJEa`K7{xO-7MP{bkD)n=k+Cw5yfYkLZp^e}M#OLMM$5^-5 z_M*>bHsjO5KG54OuccSlc!JsX>b{TfjYWhpdN?Ji-w+XgWFwA<%%uo8^j%*8>GM}qquTP1eqSnVKe zsYB&{wo%%J^S{zg&HUOb8TYky>in;@!P~#K3en*QjZ2o3qr0}N0JbaamTd#Tsm)K) z_FQblJJ=IXhr`9_lunY?YX`>`0sy(Zv`LjDr~At?)RBZ zXE86u4z`GKDZ+MAA2eq(2kYm1!ycd9iI{C+`xd*rHYn6X)*?v- zNX*(Vn%mJn&&PRd&vhKV_JbdBj?GtA<9sb#hn>7>yWkc%8+IMIokQ#YKLuwX^>x26bUNl;y76(#9(RE9)3^hgW$JBaWjJ4GG@>8(H(P8hZ`DV$He8OAC9&tM5mTiD>b;56hT=V~wiu1=I(=X*gk2iPur@ zx+i4}-Sqj%bSETz9_jO*bo%HUwAACCn-~0vV++hjr^=x(ibC|s_>ssMBaOZdqmY?L zb)9KyO z@$>yu@|_VxrU+_fp`cYZK6u=3%Q-ovA5-2tl&6xf`*HKhc{nW~EMAk`A;yyrUjjw*bC;5`;ka(IrBFM9wWF7Zb?;$2fz3Cd%Y}|i1b`!h^39AAQXK z{OQ`V`D!dMufMTmEpg*iqyEp_+nA|p%eSM0uI&&%y|L=g*or)z+VXMKg*b2v;3G~k zmU=p4zIjDPV-GL_UizE|yefWtuw-8RoILpMwI+DWQglS|*^3W;FxZ2ETfD?$UkNDM z@~zNY$xD2`;1Rq&t!Xsxpj$2*t!SK|iQnF96q8o4pFG|G7zAVw;a$SFc)t(~!a(o` zgZG0$kaXThH7CRmiBH&rKJTPsM|i4( z^bTvl*doeL;uA<8vOkUSF4BshFVqIiD?WHlU0%#RMC0(b<}H;f0zu_9{)gXu4*N z{e@-~&ylpAR`IhgHlR4o#Re2#h>hr5U;|o2_X$pdHlka80~_F^l}|j34LAdAz?%Pe zVFTPYm@Xa1-|J!ny2YYkeol8VDqD`4qlfIn<*iz2T9%c>7^&z^SE*g}oM;^Z!6> zK+Bo`Vr)RxVQc_6ffHf_B1vpO=wE>i_-}ucF+DyuApb>ZF4%x0#;*OJ!v^$0=1lrL z${%3t`#5VMU-<#pfWFp%NMCJ0sIOJ5_Wf4afF5hgjQm8I&>W-i9q<8Q1M=0Je@kq@ z5d1mE?3wyD*nr4UzODZs8_hG) zZtCsu!E&drMcUv*Z|$^5Z>=QM$0}6&Fc-eR*hveX1#U9y7+k=`j!oqCqi_L3#%DKU z>k0P+%jaMN2)~I9$Uh1j(Ccs=f&=I;&OM3bg0B>OKyPF|@gMdwzy-jkdtsl%|M@NP z0p4$c4*(w_wr!Cou?2$)3cID7QwoqK$YfFr9b z%%jA=14f{mixD{Y{{}|j-2Z1V0*^TUusf4_(f=GqAPPpnu`2{O7^}eutop5s5m=JM z2-JfSSUR`6(FiVJ#YNqX90wz?iuBc_*MkvQA{YU%0ZSch zKn`_xu>mU_Y(P(Ac@i72+DY$etO6rY4-TL*y>HwiG*S zdaf_~tXz!1a^hAT2P3cwjKFHr>cIglISxjkab+Ig%A=q1=%*w`;GI$}H&Kf3rF&70u^8cEHDDrx5o(B84XE#>Du`JX}o~D-cCIs zUcgNkEE#wK_{H(?0(UulEzo7lNZP1fyud66FYtt8zvy7l@QO z{K+Y+{8g1C8Ex^tHXwqo z_z&;`lN`Lj+~eW}9NN%wW3o*Nu^~1)SSI#ru&)Ihe80s`-vrM(Azr{uKhwnm_30KlOxo0XKcn z3Go7M`T+XzpT`T}`@o*}vDTE~>}Ao@O0ch%s_fCa*xEMlD{E!O*Vc-$Uu!GpeXXr} z{%fl-L(v`@dt$smym}{+dRKRLIE1bJJzgL~F{sNLc_*IEln>q*_uqEAL0N;}48G!T34wp#*P>npT%3;nW( zw(dV}TOAC2enXbldJlOk$=gWYbtleS(2ym#TjoJ`_E+61v|V%(y=n^Q>9ywLn+DI) zt>CEmey!hg<1aq%sQ8|(S0&?rWR#pC`|!}=t|7!PlfMvK9~ke#2>8eGIaWz1#~K{T zanETeT@~}ydyd4|!~}QC{<`^!_RRf?^-QK}J@vJsJ$UfNL=AKVw-A0O&{g*J0z$n@N9h^%dm=~qm?d!d(Pu$ln^JD4I z^FeA3`fZNe-xp`;^V2vRB@MfO$Sd<4I^cEjKncyo14X>%6!y$bVLx6QW5Zb|vJcn( zu!%9*($RItu5r&R{{~}HzUCi~34Ta-Ou$$DgE2W>#-!y&tyB#eg$+Hx&4i462~P=$ z-j1vuG6qT*l61oHl1_Myq-TMNk#xdHh;^2M92x?HMA#5A*y9bhCSJ#C!O@ zyhqp|?-8z%_rS#@B%N@Fq;sC&JLg;DK0crCUO@e&-4_rq?Y@Bb2+z2H_oUqy@Se0= z(xu&!PI!}~OS>hVaG|6VHe5izNV}z6Y4-)xlW@lc)RXWXNtbp@y0m)~>4e=!kxqEZ zDAJ|fV49qEOFI9@OFH2-l1}??l61nzDC$G|7mlJn(r$^DcFTK&33-ojhrCDo-;s2} zk0t#m%&W{3u%x|{{B~}a3@);!%a_647A1GnKFinh8=RQq2QAQ=MnQ|fEiGwO zXi!4zuvP8=y`m+?>v{WlQqtq%prBoXb$%<>s*n^+ki|>(r^4-a!k|#3S zDqA?(*{iRTu59%f>Tc=l(N^i2(OOx8^c|A!VK2WY?jcL5+;1cKqua3WN@AVascmn^a-hIJlpxN7=-bx0dfYSYGe^7XCP)u$oU$C z@r=v4<9x9e_b<~ZuczT(Cg0DE`y_(!zp9>4_{z5)=F>YVszLI3ngmlYr4&J@n2li>R0pSIxx=yMR}~7VwCs zC$fv=5|RKhdE=24G@2MpI6RR3eXDx*nAsg(M%aDv-TtFLGu`!cb=6bP^VGMVs(LDc zH7)DBc#haf{5M==mQb{1Vhq}Q4ANvZxD{(wwtLm_dwKd8q>n**5a~hi!K;>T#o8F8 z7w`41@ox30Qmu@9aUT3S{Dvv&#P2EU$nQO>PuzP@E`HBYPW)2u8u1(Tq7MAI4|T$C z!l&kld;c2ooA9IVJUxK=@bmz9&+l{Ah~GpG_{#5d!DpVH3%>LFyfxxCk%uRspO>t69Iufcyj zBWO4LQVJgMd(H!X?*R|^J?8E5BNRj0l()w;P;#dIc!KcXbu?@#GVYu21V?Ky*cWzb%?XIHAfw?JqI}O z>sTvDw5rWGGj6reb!D-HI0^J3tY5_ZTr**_HWPE!ZgJjyI~I%IB~xV>V#6XX4#(SA zk2uuCJ_9yuF=$tTwo%}5j@!D?Vt=(+C1H>0A5vQF3+6C0Syo#E0 z7GphJGuG0+T)_4M*KhwP)`G>bc9srch@pTo;XI*Q5nmyG1;zkh#XfL82H1WvHMgHn z*|VRc=CfFP3p#Bf($4U6oJg%#aW2|FUga1Ebik0$0z*DKp+`D)(E?&#G>@1cts)lQ zQS<2+Io8x(y%Mn>UcQda9zx8INyMC8LfA!!YaqUL1>!#VDArO_ent_G|6tBufOO>Z z+wWo>+{@RY+<5Mz>WG(Tf+t8HBHm|JRmnV@@&d1654(hGAL0E5$6_3_Y1bm|0q`2; z2ZnO|k9~j2@!A$VMf+lZ3g%z<9zb4ZzV27#fxgJBLiuN*F0-bfJ*zUeC)Nx1o}5&n z?Wa(4);!3`g3NM)I{!~HC1fYm4B1H(u#y;LrlFuiej#T{P7wXaEyI#~UWQ@M3u29Z z{0u&xXT`US6h6G-kB>azJwHzWh;{$i^HY*LQtbID!TYQDo*=CGchdiX{WT*Q#%fM_ z?x>D^15WzuDAUlm6hti8&C@V1G!^tiBTJ=etRxq4>`&OA>x4*Nf_52W|? z`P8)&ZxeR;Z;!Is|2!&e3)+U2-FlSECbv1-wc8ORxejYo^NIG=Ef^2ZexJ2ezHhc% z@jlzW@co`_l=cr!=L6l5qh`x6(2ac`^Z1LI>+kr#&|oXQK4tINw5iA&xlwH#<8!XxB4dNWv9 zYqRKESBm-Qo1FQvWZ&A@rEhi8Z!{Z4-&*MGx9!rmI_ZlsZ{_r@1)I4pp9T7%k!8{- z*4W;+>LYv7UG%Mm>;cS`V9uoX^|3O{Q%MM%4*N2OD44esqwLwAt z9ph~=*CPIt2Rdja_(z=lKdHbM7!S5nt|04Fs&8xwA5cuY8Ed+imC;c}59O<_v)A74zMGKzY3O_r4 zHy>wH@L%jV!ta_`6BGWN7=H$TPBs5UyW@9_8A2NNRo=p%VPEBP{)>H;_+3+1!*Cu2 z_FUo_KaXM=|K)owkyd*b_F8UX>ciJ!Z}AeQ-Y0w2)i?tPcpLfqlY7q)bG+fCV(9Z& z%&=82DtsR=utEJwalQ`XdHfdh3fOz<#5BhKE$;g#i2M6cGLCtbA@&8)|uxekklEX~5q9_WkXMS&TV!^}fbqmGdT{ z9L?+0wfH{;-<6ub+dj{($)E|M&A5N12yI>}ljPoZu|Hld=Kg@Dc7JH1%lx{Sqff5y zd5z~Am#V(kbuK@-7ih>g3W+V|Hsq=Yzz@zd#ETI;)3`5Qz3-{Cxbv}14u4`6u%73C zpm{{ZrpG)}`~Gi-hx##v(&yCBzzVfET7h+o6>4zI*;uzY3F{UoA*RtJwe$;<)X)u+ zkUk0Nlhk0tB&-vj5U&Ms7Bn$nb<=@@$D$~ z7f~;l(}*{ar`%eHIb<^2%HM#P)>td)HHPpw7x7#3Usdw+hexXO;bY3jywPvlG%1ES zxQ+M*^&$`Kx!Z);zYQ|>4tdcxO7#_d{egXsSssS3GRn+x2`?Lm`6a0;9QoQ}rp0Db z9+y+Z+js2i8CuTG7^jD&)@3<33xluK#JR{ZoH^yBzXM%5g1Rv0EGizS--~bPe`7e$ z&@4_coR9l1FSj#47JHoYq@5q#d7&q`E<}b_MW92B$EsCid~2@ItL2dq(tIbMs$U4+ zB46Z%*fQWJ)_AI=@av}VR{uHYGe5IP#L8VQ`lGkt13y!YFYrZq*(>jYw2N3ln-!I>v0PXwKLgs>m!SZA8> zA>F5jkk02BijW@M73{MA743)^CQhI8QY1(EWE|%>De@36_67$l>v67yZ~Gt2?J`l` zK7uo!XA{eJ1im>R&JXobc99=v0v$T08WQ#;mtbypC~3X7`6zT6@uoM8f{c%X4qGT6Vt`r(hXmtiZ;!Hd_l{DI9ze3%>I z)4O6e(Q5a@$L7P?+J^<-*4(}i{5k}gFM;k2?&Mbp{3r!q$~P5*ANk-%KKPLbeqoPj zLpk_Zs*X>TBJOZ0(({mxIM<0>r03$jQut|0)ncR&k3DewGVf}GU%iZ+!)Zpu;5az#pvbJ`~{&S@WGL(g@#A3^&RwU^$edjE-pc?5g!ix!T;!3@CfTE8V1Lu zFzSH+A^x9^13ltNH4IMLpx=T1EJeB=eK7O}@mnE>h&R`O-}&fc_-|rl{YGx%?Qfv{ z$3>QNA4V8!&)Rj^Xf#X0Re$KhbveatuV_HlUR9l z68fb{Y#g10erX~bADw894^Lzh=tOfuVuC{H*$WNe1lT`ruada!C&{*WvTJ#jE@kCq z7c{=Ar_s)c@q)fehP~%FrqILtsspTq_aP0k69Yc|Tp(#L$0&Hu=bUeAd=u@Q>@y6M zLyUi$Qs0$!Zxt9(+LQV&;w#~KT$cVU&OMEBoFbE9Rw?4tJ~PlsJA||#RZ`MeA?lBq z6$4Rs*mlH%s4t`_yYUiu*>Tn`X#NQr#9`xdc*h_$I7W$kLC^7!)Pj8!QS=psR0$MP zXKZGFIWC@&!p?Tn?_rJA!`0i0aZbdLJT^u4Kdga3eWBBd!elJ`uXEmTyivcA^Hu+nSp{B6J89%D;3oV>s##sphyACXZ=c(sG4}zQzf}CS*BQOe%3=lHhr7i1M6W)&V(%Lb# zt#w`|^4a6k2zk&iOrtpgc|gpx0BM(pkEO_i!DUg>vcK-=j0OQ@^l{g;+*t3E6pRg0{dD#QO5XY;;C!SgQmc%WGYx^DK^vA>=67C+DC3a#`8UXeY3V1>MnSYuFxf^nuwgg(mAbc)zOS#^$f=ioe5?=@ZTM_j-8*Ewo(SIk zC@uX2`j`q}iHanaAT8bd7~?!?BzHv%)-C3WHxx3_eaW(Hd;TNldP3?wPPnrMV1lnCk zyJMf1Xm|bMly<*f>=(GXU$lFBUo6_mzBIL+?2q?yJ9X&4un~s9T?^85IF+VCV6Vs1 zXimUJ8nBTDNw)XI6dUQZ_kX3>NFk^8dA)2SPoUffQ0@cCa@+9zcfr%5-1^+^<<=|y z_scyO<(}KlZyr0Q6GJ)tp4q+Jc5yG4yF-@hMSo&v^dkv*3<_IyOPZ{8=3$FICz6(a z0=5VK>p(DRdkm?&?IBwKvps~zeRg~rLidQbmu*jq?sfOWkfiJyZ*-Sk0{_2vr~;W5 zJ{YIG@0@DcReJEhbjqc%FHP=J>eI7tX(M!UW3pc4h3@q-a=YuK@y4mHS0>+5Cr&hO zN~>F^&Iz1&9N))ku9Mwx<_YK|flk8D@8E&obk|Ayo&Kkj_U}`5(*9L1>tts;za(ty zYnkLg$cn%Mx}J$9>1W)OmVN?y(iJQ4@qc>XMV{}jC*<+I*Ap^3t!|zC6XPL$U8eL- zJ3=y!xw`PUDN{a) zj`=UB9B{@&-E~1< z-vfV^^)i1>z@8_4c%t0=%p{CA+vian{Q0APVb8nz@SOG9i%-e8-dP8JeMkQw<~{7| zdbxi%0eMYg97kS1l_Ib6#eDsDQ{+{YTmM`y%WJ0|igAZ={Q0w>(B)sJ>1t;lqHi}dg^q>I6qZqj48dWGbhmQy5kEI z?QWdaz1_*j`bE39`@)26BWh|pku(4I+bOv=&CyT9h3lrDllosf8UECEGO%w5eCa*k za!Mc6qu;=3pVzwgJ;sm}zk%p`j6Da1}SCj*(Z?n(}^q4UNU}=DGw*zo|rLxt{CUU)6!4C z_9oYzIsD(&U8nVb_Y0lwhEvI}PhFp@x1`z#{pnt|5vlT7A>{J|%vl8CuM3iT$DXX| zuA9cr?z(Ag>}B0N0h=-(<;HxpD7R7Hz1*a^d%5}iKkdP8pZYay!e$)c`l>HY)7R8? z6E;InU&EJ5T4+Quk>$U1ZXCA?k5A3(>h6f(*7q%k>w;8n^ zx^4))`+hI$`U%+hlcIwdEq+j?0tZiHg zyN30rq8$nL0>ECi`;_L2w!JaMt~v5|MPJ#q`k=rdg=u!Aqu#>qIkxDHOf>ZsB9C8X zO7CJjA4#J*fqp>;|MYhLP3?hykskPWVK4LV1oSsKH{|Fq_5gOVv!dO}mHkkE&rZ|d zvOd#aL&#{x_2r#o0()BaGMdCLqOI-R?lP)R?=GYI@LrbD4jp!|f-yDwdL`#MM7{K5 z-RotK>s~KAx0ma60=n0=@3gVzKVA3qVE@xS{hd_Z)8FbV-4nW{3taVHnhbWzsOX3E z^_kK|9)#ziKYv`BLh+p!j!PrPR(g7Wb^>yh^mRM>@Z0WkWxv}mt?L!UN^(+tGYR3AEPq+dg;!%W~UefUe~=|qC(yqq{pzCJI@SSn!Hqg^C;L17u795^ z_H)lWCH=d|%bwfOzYCeRFY2@Y-NBf4nml*dc_H&bF7tNtacP7fm^^e`nwL11(AT8V zoPaIg2)lswwn7HU*c9CnGH6`ZU3ZLgdRccmcvNrjdKu@Y)vF_2@NlOXYY#X9nz~Fh z$+@+?Y3V1R!^!z>hkr_U9X9lSp~LO|ZAX7aoEow2Thbt8_v3T z1!ox^?D1?*L0isg?*wf%XxD=F(af}^oc1!%&IIi>p#5fM+7PE53|cQ}i$Qx%X4>M0 zkRs9Hi2WCe^B7MRe0*Ue-X|T7SeZBvFOM&&<=q8N7;-(y))iJJV(Sf#B(PPa)_1e@NSJ6hH{JKj|U0~ z&a4@XwnSW{OAx~@OcA$Aa$+p;vvQ3q&2e+QaTzh5=dGgJ`wt+--5A8S3wSFf1g?{Y z6l%4No_Jo%u}Z1!SloB$UzMA`gP5yBF0G6q?rcE11~GUkVxA(t-Y%j^O^^wkn=}jO zFU=}}j7;f>G2b;FpY_$vIR6syX`6BWXVsxLWd;6Ahlq7(0kz(3L|n-n#3!B`)(+i| z=P|?*-%K@W1M-9H&6|Q}jZ|B_7|&MgmQ=;8*v~O%4V=Sc`5oYKs)-LVMZHSw-8Spy zd9?N3oOhK~Ba#1CsdlIlaiS75GD<3q*UTbX{$Gjq-S1MRHh>sXQJia&hgjiP{U?rd znHczmHGI@8Pv8t9#F#3fh|}DFGuaa!6K9qo=9I?_QN(X89EEF~q>nA=+WYCzP9U*40qNnw4?ZRS5DpHRX&cagOeOnOghz6Ya>g zG&0zSHqwbE?;+ZfEkyG*<9w=NIG@Ugv#`b@c5Nj;cZ*m!zbbyWpNeyO77n8t&e+m! zTu6C6TRpy`mi&@#E!j&dx1tSw!!EUI_Iu)cw$QD$h>2V4yT+>7i?Tq^_e>>PO$)L3 zx8&V~$ufytB%{6(zJD#XWLwvkpe*u!k8=4Is?}^qdne!H^!Ts&c9ZxOcT#0pOPjU$ zF~n0mLM#b!7?+}*rJZ_QHuBlJ<;05Z_Gmc&Sy?g^?`+rAwXXyBSMxYnT+Z|BE4W`n zUt~7^3eO>@h^wwPJ%RX^-h+{v0Q9krw>4tz&OuC58?w>t(eNE5P}OFZ;q0-J0Eyha z0q;VW4=^qpcd(Ks}jhSh^ee2Mlxhbe3M)kuN#ioj?<|VYaQnkdhZ9_ zPMm3YKaWSxW4M-^#o=aXYC)& zW*;8iZnwL}_tf?^@mRKA*!Uo9e9)W~3bNT#gBfW1%>KR;M|u3G`d=ypiuaF6>s0a!$Jk`L=*=e~`^OoXmSSbjC-;dAUv7hHKYCR~De$ z;~TutKN)x1=DN|WEFnkylAkpP#vtZ0;_(L%k9!W* zT@NA3)FF_|W};n-bNQxXen39l#?NJQ&Vt_HSBoCU`K5Ka%7QAQ=565T_?^kBHpymH zgS>{W1&{BLRr)B-H&4js9O_#`)hBj!VRbryka{W1!hoH&8{4c(n)@`W9_}3vVMi`H#sFf|&l$v;>IRwj z?HFXPo8vc|0)Dop&d=8E@LRF1M2j^MYbwqZj_oFqYUtpWLximlDCWa+6mxwbfOi6x z=L%vCc!p@dSVXktf1?ra>qMLJIx+97Q`njv3d%9UTvHcd5AO(AH7^qD7l*0ldzWhG z&W7Fo6xEjRrPl3!YCS!gYB_(V+I3eUk9Uc6!MnsaHJ1MOh=r@xd}W&dhsqV`q+HyiGLIA$t#Gt zX3lW-v%qlFXSn&Zy5Zo(2zGy9gth!j;mFDyIkIdNwVwDB)t(%M_OXd|F3Nmf4o#+e zBmOt>Y&)L4iLxR63Gm}d@WpxG6Io{A*fs6Vf8;CKF`2XW^ zmE$VK6~a|aA^TA|E=74fV{g5{pyUOdXYYyU9B5N;#dGnCE1rj6T=9JT;^NYSEzU0=_<$?!!R5z)oD&kq#ra~Qe5@oY zo24jU5z09>;WNiZ5z9Y}nEuqS#U3Ksw9V9#o`TLvG*S)B@)$1jvyk&Rbl@y%ExQuB zh%+f4Sw^+n-XoUwJ?PUL=m&4aIS>n}rQy2mS47+LdGxt|Cfe;Scn&?A`Y9S2Dtk4V zQETe8h+F?BqCGZ@T8BAi_&xB&3&eV?g=&6afXdf^A#lCgia7U>*U8XP|5Ze@UZd8( zuO^YD9$-+XUZUQ-zNovx>&yS+m#K3+W>LVyChhQ;6YD(M)Ax}$D?nKw-4g! z0?hjP?@0WXJUnkB)_HA&joZP@@;atH^&(O7@^OYSbmytpN!-ByQD@SKK|IiDpZ1Z? z=dJRYZB_-+enh;MuT8gV>%&^j?{w>eB}DnfFrt0`Mc9^{u=d&;R2y)A*t-2iU3+2x zjZYm-ti!WVw==`qm;aks%N`3`%U{>6C%;4^%lw`=;*>}3mQhzn4uw2ICKVs1UbvM+_LW#0;`!3`J#JPsY* z0nGnAWccr}-S0q#15BMboSlmPg^!udlGrGmqZKq8F@|ZHN#e~VBF;5ptxsd2=218| zb96iq;NuC@>A(PiW9$JOUTY*SW3*$+NS)cdy)bv@3%PLHGAg!HvYzYppBeC);@6m}f8 zWDbQL=jVmO#%+R)OTfnMl7)R~1iov6{b>r|oR$XX?2{1Ei;>=~Z2E&3zm=LLj((b< z1avm)QzrtGj&H{MyJ1iEA(m_yHitrwq2FVpuq8+@MtTv_gZt2r&jpr6IeEWb%wvSx zX972H{NOQ5cX(K79qbv#3y2NQ)G&o@pjKrw&JOZH*Aa_+EAa6|=!+U)Y!Y}gF^WFn zN{p#FOrkb`-cIY z=PK+(TNDEO?(`%v?2pkNBY1m=IP+5TTZ+8XBgRPrr@I40@KF1uF2ryu2b9^|!CeQ#dykDU-k7IZTvoE-KE06hK6T_J- zz;y;6dm7`Cc>Z-Kt@%J)vZ<41mnqH}RG#{vpuL8VE#eYyFEMVt1NplcKO2mHK%DRM zhu+8dm|M>pb4;cQny% zeiu0TFS_>SPhc#%1^Dk*4*v7!0Mm2a(uw~v^&K4lDIEXh0sqAwLw~dw{n2_|lV1p1 zHCOAJ?+E&%HV6OtZ|;KsdhTm_9sjM6rgq1FgbMt(QQ*Ii_X++Baz7mz3XD~8+TlM@ zHa!pe5b8Jh&uNeM(H>{?i2p>ojdd3;{`=tgFV+LbGj2)6czm8ViSY#Hv;Xa4ye$2= zFNrwT=bUyJPw0@b&&7DIA6M;bKd!)dMpR(DcK;ps*)hj|C;XM%j|be>)n5spgpZZN zzfqb1zKa6qCH)~q@bQi9#CY1%>l`0n^&`Zx9_fPd3aI1bTLd59q8@yFBjDp}$9Qja z!FZj|Tje)^@sP$b9$TbqEDk(X5VkJ(7BHTY^zn@dTkSr+niqBJ7ei?~#)FU4!FV}a zd&GF$pBIOpPxuD7zc1+{=<4I^#CVSgAD>mb4mj@*@bP^MzP_PhEd}Gf)5XWP0saJF zy>j^Z`pU=GBgUKW#OW0nPsh0vec!}&zruJ?-ci}75H*XI~-F8AZ< ztuDsv?#JsN7%%8xyw%)~M+WpA#xtHjeKDT>T>ry(hJAdDr~lQ(c&8BK%@>&NQ>hrw zu1m#u`W6@CWr^{2azCE__UVc7$OaeVxfrj{F`mvb9;p%-FS+iJ`|RTUa_4G=AMgM6 zTy2FjSG$s9JR4_E^no9bh&>hOot79+l+8H1Utv6_J&H17JdsXjxESwLV?29f2gV~D z^YOK^$+=o_PtI^LUX~co7VGgo)B6}N%RM(jhwPkGjOXsTarfN3-1~cO1je(QIL34L z+;rKCB>1AQ>WY0i?iKjg-E-sax%p7-xtZSu$Lo*w364MTK9BkKz0-2fjVK#g3{2a9 z_S`t_u^{7~8)s~@)Wz{9gX7co+{_j8@$Gx)Q`cjPGy}1o4DLtp)E^iNjIU4V!1&_c z{S# zHhdpyy}|vs`rtmqe=nSteq0Ct?e158TnGO(XY}Jb{nOuE{C6_=FKs=hF7V%FsThyk zo{I5|CtZw}CC1yx{kX>arzghKA9gXGJ6GT5bM-;79`j=^#_O-^G3Pq#F|QZvF_-iS z#(RnT_zeBD#CW1?_SAlb@tpP;n-SxQbbY3a@lG|yBU?H!-b>t%XCLUmc;a3k>0-Pr zG2Uvi9`mZ+$9P%J)e9XWg{c_NovU~Kczxi<6Bv&?$T6NfSKno>Uhu`ZS76`dI@P#4 zSMSEh{7}Zn)SbC{f#VItKP)_zajsspmtE`P z_>;l$X>;`zVvX%PJ;uirY4(v0jK7m(d}DG4#uxYGDi`B_5R6Y6dLQFwIae?A&%PuT zY}>_nSz^4E+>dK}dLQFu>Bkj1WLT*f z&-LTF7_Sd79uey?Kjr#y)6Rbqd?6ROeq1L`s(a4ShxweNxsD%qu2_%pxjw=1wpfob z_O$flin7@w`;{NpX^(=8eq52Rk8^SS$>8`jKd!*>HjA9tgO2k_l~<;N9uHolh8kL&bLIFrXc=jfE3b5zLvxa9o~jJHv&$F1zZc;a5a z#>IFa1mo#Vrya%Bw8VI#Y59rD!3m{M-0S1*mL7xh6hhyj7Qe=Ka6L`kB{*ToXO+* z@lKf^?|{H`MI9J#rC5)LwX%hXiN4cQFEE}_=VH7Mg7J)BpLQ5;rHJM59T(%d7_ZMU z-cIhv)6WnX&ppdBWv*6{NIy8sGU%+w3yS?1h=JG#7*E(cqu{i}c%p2!w_jmAr#%j3 z#CT5sG|0txr_hflFdnH+#d!A99T-nwKK%_B<7J8Q=5jxtKH>Dlc;p2aC8SBz&n z7_X4~@eE(zVLbBt(--6E&-OozM;<>u#h^sB{Dzgl#MUk#24s1wijspG>wwfqvFTKWZ_8oI%UbRW`vYOuklPTV9ZbrLZf zW5eTKnJ8X~u;w9otVPN*TT1fS_9=PFkQmVxG?VyUGF67vQtR5iMBCRy)KCLx=Yh5g zvtK<1QCHczG8lqjh zhnOu>@|7VHW$T&;n(JZ%<9F3iUS?ho?bTO_I6MDb^G6FqfelePw>thP?RoMN_Baml+J=`3yY z4;Fah%l$-I?jg!8J`&IMllThAYrc;tc@l}|%ft-r7#^1bg^ENyiku+zx>#@ddvgx% zrJXeLlMRHG)D1VQVxuF=B`<%blC}7r@iA6)w#Td*<5@%35>_?PqtZtS)>`n`nVvPE ziA#4Nk2{GXAHZ3@-0xu2s^lE17TrlyZ!txkW|<`c!a{RMyt#x}`|nYHxyc$YuNGY!vVyjO$wtf7>DNAp3a%&$ZDju1^dLd^96kGXD+ z$MT@8>^kHNy)hZ`T)?yoa1}gDwP^*^dK&+i;kRHh({B46^yUSs%~;H=0_aY`pQ!d& z0dxv!0|ww-{v3MsD4zN8o*#M6K;GsvRAc|4+JK+p``;kejBgP3aGl3ov%_OmAHz5P zh`e4zdKI%~%wyW^|Dx9I^O!ZDjcO8pW3V4JR}yRTQ0U1#V)<8*NcADq8`q=j3EL20 z>}PYpvsTpm1+-HO)qLxScH4_I;=Pe*Q*I>Y!*$I3*$!s0Mc{J)Ix-gZjX>{zg1lOB zkL&j5sCL^Z)cXaLX8^YysNXRf8S3|1OD`wZ7Vy~5+wV1E9fs{$0GU{Z?@U44)viH0 zzO@+77Onxm-^BCn)T((HZLo)Gix&{|_a24E(82sYkBu1T|2??yA3D(%#~y4}5@n{E zV44IwtHI9Jpo}%p1Me2xZy}~iy=-FG%iGf0d?~R!Ps3(ii8{b;Z5~9;(kRjsUdw+5 z%I-&fwo|R30DL%xHijLXNF{S@Sh5OWE4RLhavvtz?XM#L7l~H+B8d$3c{R?LO0-kW z-yoNl6YWOG<-UE8_s4KQ1iXb!orby{8Ah#zyzaPv4Egy-LpEQd*4rr0Qa^Ovsh7e~ zw`Bc9{rTBOsI$6ygGaq@heuueMUUF_yhmOCxJSMJ?;iERcRcFD0k-JCRZn#4{?4TC zV_lWdeNuwBbpB4=Z+=UWcX|}=KXq(FSm|M{n;A^_8TxkEB|j^pezPp$W93nwSswPW zanxsyOUP_|R5r(lWj2Az=7fX@n>@Xh~1K5FxcnP^Kc8Iyy!Nm?ALhPV793MLntncZ*PX5$k z2Yr1icF@h%*75ac5wX;A2Pp# z(0yZMM(p6&hI4xjJIohz7{wjf!MRsm?BHSt7dv#p4ngjBFlL`}?BMA4(UZdt#`D=@ z2ja|G94O#>z`QPYaIu4n9X^cM!M^AC*umJ+yV${Aor)dopSsw=#SSiZNXHKLGp8Io z%oXb$zV(5zgLvPbmpyhsY#2UgA+UpCxY)tP4lZ{1kYNX*`($WF?BLjj$-Rah=8E+V zBRjBzbAOhL9bD|-Vuvo+p-`-M(0d0v*auGzJ7E2P)@voPSAk=Pm$=`-KI&oz7dyDv z;lqd>^dB4_JCL9CE_Tp6&$bZQLBHF@4lZ_Zu|qm`(0_i)v4hV24&;Upj2*=L`X{r; z4i(Ov#ZHbLaAvW)&%#|R>8_RhaIKXTx{vsOnf6&YwqabaVFz8TcNo&)cW~|pyV$|S z4lZ`+f*puh?=Y=*u!H{3lfw?iud>GuID4G?9RzmJ54qUE^*gwJhYy+GL0|)W`SG!X zv95QqgMCLTcCc5v*uljPE_O)A4)&v`96MBq^$uVBz}P{&Z_mmeJIr^mgU$U8#tklZ zaIu4n9X@2(LFhj5WyB7SZBTm+J5-4E4h0?9!MV?Ov4e{pTsIh+vf=Hk5-cun(e_;yVbepf69w4mv*r z(2XnU#+7vAO18(96xcz3=#*oJpjhv4^#{fd;(dL_2fz*k#GJ)OvEJcJE_QISgNq$L zWY|IIzR{KuJ2Vh0yHxY(f`JG{jG4n|q;U*rAY*JM3>CA3GR#_bzs@m!@I|JL+Nwch16{ zv*~pTf@-!u<~VH;<1U2=+nr(s~ENv4j5Y4(#CE-|S)s7dyDvAssvDKRM;tLFhlZ z^aEoD$9_~~j~#-}oW)A9-r>Jo?BHSt7dw0yv4e3SBX)3XLw@gK2jfU8b}$aR*uljP zE_UdG9c;1QVMOm>2mQH|!w$xS*<*)|U9f|`*ToJlc5t!7hYUL$ILg;MeC7Dq!Kmvs z>~J8&W72-313NhPUw5&Ciyd6-kd7VfyG}WF5c+R?`~zbL$9|M%iyin{2gOH7y&={+ zT$lo(!2gf!@y^9^lfmG~3{^eo^7dyDvp$m4{DAqeDy@MU>?I(vF zNMp9xLGc-m-$7sp`#BdoxY)tP4j(e?@Dles=nIaI9SHV8^wN5Vm$=_S|4IjTaPGeh z?9ir$1`@S6O4On|h#DM26|Y1T>CpFC)xNyAG@nKeHj+h!`q|2m60)`GViJ!vzoA{Qd>W_+WWuqNa$A8u1u zH%{$M2B2&Uf@rnk6&Y@xL>Z zrG7{Ei0_oQe@7arj?eTRV@|R@v+*4%{X20lf0nG%Su#-qyguIc`n;!L{HLy7OOo{& zwW!btXQUfH*$@v1yCugIQOuLKN`ZJ%i@ zOXJn}MP%+Ld*+q>T&qVy|DP?+(3ht2DmFDUuZ$hgkBhS6RUyYRzP;NDd-3K{497SzF{m%<&|_^W?tD_pdY-yKXE)JzM+3H zl~=KkWagEz5&AJPdtQ-9DzBsqV6RGh=9PXw^rJL;UfG{b~s~J7=YNr@~eJ|pdzLPz#$k}PU z3irq>@eTc3@MSH@o>z8x8m~UOh#1#*BR*GmGOKkucVood1VKoAEUD8 zmHvlRUd5_1^U4?j{Wv3gUXkCX@=BTwdo`$MUg?9OAA_>zmEDrct5_g2uSfy(BQJYi z8FnhKq}8B7ocf2>&?CajDS_-N@ugTN2U<82u@ zUyS>5$=~q2MV&YhDHTZ?;>ckr=kzR@PO0~41 zQVngYWKFT*W~gSQ8f+k~%jNNG?5vUTyDle|ycd4pU8FK*7>XqMK@b0^RHzm;z?a!P zTn#mlN{LcM8d9j1^Z#wf;3xhUo_i`cf5#Wk8**u7>=PuOD_s-!8Zzt&Wn)3_^LbcF zl(c%+g;>>IYF2HhY}TvPoOOgMLt;c*u$d@BWg5S$hHCp;aNh(!af6pt)q}PcwCg~- zH8X9H(_R7E*`Qqr+8Z;|PHgb7s$rn@fp#otD>KuM=d^nX%1cmQg7T7#W*K|bO7g*fdA)~}e;{?GL@QLiMQLBE~ESH(K&sO@V627j5b^4jk05^O-6M_Q)H z6!IP>^>z-I#c#3_S_WOtiOaN{HOjy`~P6Y6u4X;#LB{Dk+X727abVA2j3YT$F~%@{X53r z)uLz!?~3mrJ(PSO{%D?ObhPsgeFpB^zZYU9iL-hBd=4by-|R;}fHD@6h`iYwmx3fR zcr)~XqK}g>hjOS*4Q?ipJ0;G~$@R_{yBht9Bxphs1%D^AP;{~)B__XW$OLwjWlFOYFdcJ^OkoLCd(vpk?dh13E!)M4YYM_3BE1g#gxmp zP_5?I(EH?joF4x*-)<7W;vT9jYiY9=g|VN zZA*rt94)$9{8zL|-M_&z$fS{<geR2?6NtqmLk z&xukUAZBwNWi9tmv*mHhwr`-U`R~-+{tji&K2ObOcO>oDA&0MbFQeA0eyZ(TC-`k$ zyVud>RWWMqYbMsd-QY(6`3y%M(~(CR^8O<7xrv&;{4{0H%%O^iT{@J;f8e2tVp8k6 zONqAsS>(TrSPS1qzGws3Y~FU({=;bJI<)gWXy?a?`RoQ_{_^jHJ@XDRpLw3J-|Zmr zA1o!-->xR{IHSs_+o%@#9zl*I2|Mzq%;3-!Kad!j8D`cSR_@*0l3rX!y+rftAlWsN@q8&kqo@Ja8~RZxw~^c(j}DhaQBfTC~Zdt!VTp zw=92$+XpRHj{au|WJ!W-m7vdT1PtGeE`@&*g{Xe zA>!r?1%`wzIM}9rGe%lRc;8i44F~R^%sNy@v_p;1MWp9nOtioTs@*h)E;{hjgJxOO zqtxZ2UQyb5*M>c?pG(DkAUs*b5oOoY!&qLL<|0ZhF--x>Y_e8z_mqdN= z5u!ePALli=_W8SE2GoRvcxo29-U^Eho`Y|becIX zQOSUh&GF$%Hi1@}6B1JuO3z)$@pcbuBUo7#bOd@^0$nez6aA+WJJ_Zyj2hs%i^m_y1b{K%gVgoh(F*li?^|O^)|v9XSSIfw=`C_v8HXpPr`AF5_qRAUhSo= zg@I#cNi}ow!#k_0kRR5Ih;rytSlPB@e%0O+&u^wTS$1z)eif|5D~a-8T*gAxk|J%B zczMt!vh%!JW}$7c6JDPvXO?Y-_VV%a^LFW}U7a?0W^C6s;j+U@s?pZKg+n((j<$(* zF-yEOvJ7&AbuvkQ6!$1YIh`_ue8spB<)G>1;AzS4kH-I_>coNYc}G1M2YS@fF|d_q zGqo5tv*;402EV{CP6XbFQlwM0w1EP%Q?m)OzD^<>J4BWP1Ig&)e9#M@4lGInW>YiL zV@~>Q$@EwZ{J`a_0Bs@Y3>o=QV1?R3Z|9+QA?aQT8fKQHnF9q=6=QwyaHIKBD*;^o?aC)yUhaL;OVVP*)g+p z7GWx|TtuO9KlCn-dE>H=#Fw4{JTi@FwZJ*P+P3)8f44=JdpzdY*~BdM0e1rT;CXAc z?^vY3Pa-w)w8+=4^eaBp--r7Ho?O%=M=2nvlU^CAmeKdl1D@pL>&x}{QW^T>Lzz*3 zKk889A&U;Y__i6s*r*iv^R+*L&qvxKEBsRxxkm6Z?ymsNPY?6^xLkpH?gz$1`Nzr* z@9&kT#+SX_#?xEx^dIASJNaJqAEj0z@mde$4LJ7|4~=`k3zSW{Yck5TohWxtC6-?T z#;YV6n+HCb@Bv&xEOwpaZ%O9DRhhOphCTczUM`l$QQ>*$Kss%nm zt?706e-5<*bEx)28P%50r0VLc&`1+hbE)>dfv6g-vET`7eBGeOQn?8qHb(4WHuK~7P zOXJnmgx4=}piMUK_Y!vhOkzFtI_iUO<^P;ow;-<-PlA7VmJj|-|0>=Gzl<`}Z6(zn zUrE_G@T3Sl$wk_9@L}m>s@*ylKAVvTt?45nf1?jtS5JqH^7!Li9_~FXFgN7#1uh?` z`wQm8D6tB5Q}bt^B<6huM5~^Gc0-wGe41$9S7^k05dRONO(vpEZX*%T0Iza8Bk=*a zE*Oom&wzK$`vwrU_EXTqK_vd@AiQ@cv0hnXjqU}Y*{tmIWo2TH&#UsL2*0Wi5o$)m+e zE*%d0;rI`^&(Q1m46$DFns}a(AI~vlXN_d@r7Fg~+@A=(U#pJq`2Ts-wf*^JD#lrr z5-}8M71puh`H!#Uc30wkM0{BliMJeXvkou8IKCNeg7Qw>G!f;jP>TkhtrjOL@J@wV z`qo6X{N;)2csdFAbCMFvC(hW8V9q=&w=R{gW}ztjGGU4PZ6XD*^;qj^9d04qZ^i2z z86|nJj^HXYl#p1HOq5xN+q5N1xXk=Y_#|Zc7{-$r!!)3uNqyInY+$@Cgk$3P?#XxB>VzK=^uQj9*7ZR!ZlfJ#+BB zs>lhfSqys|U#Gr?l~5IP3K)OpVVvu~dl8Y}iOY$$|zE;JXe#AnUV|sX=U3tI*0{@Tgl`7?(+*d`HUJl%u+MJ^J-IRMjkE`!pGWxoyg@cGF*GWh)N&Fu4Qg3qLy>nX5NyT5Pk^RQjj+}}4z`1>4vHCf{h zJjZyp2{OmqmPlT+Z05npiU97t2bCK5wxk0C>NoQ7nSO&B!ZXbKL|)%O;&sD`vU@s- zAF6A!>KfrwJm(M}BSW?(IkIKE8qfD0##rZQeFa~CW|Sqr9}sp;_zQ)wC-$#-3yY)8Jod3r#!sR;`*z2>6!35o#m7R*rtRg%VF&2M!u${hG2_Z%}jAd&je<#jNUwpuGjO4}kW`%(TS~p#3kq(?S;anODlwBOE5Th3|E1Z^&8$AR{|%(SHqMO+5pw^JdPw0fFLWuxU8fWc5^#1Lq3dO8-i%}pgJ)TL_c3-mS9dWR115$opQM`C(z00 zuZz(47pb9LMM4%^8a>iYGt zFOR_{*ML7L$GTat?*Iog!$G#bvySRo(A|eTS7Ti3$Ue&FhyCGgphJhlYSIo(Q}d$u z9{LBg5qJsSMvK6!BJ@4rCHlYOO~6%&3XZRkJ_hMykUj?KV}Rv=uh0*cC(sw}nuz?- zhuFxUo}J8pve^iH(8%YFru^USL-rnL-l&Ps8`)klZ-n`z&VJ;tXq&3{oHnt&Nq(Wd zlk-MR4<+qcE^q60dvCq%QvG{oqNX}GPA z%lQ{F$Rlfl3^rm+g}GnIs=zeRkCDJK9tX?VKY_e>fU!N06$ZU$U9pVf%fC=9-wL_I z92W3QoZqi~m23s3Ve7kKnxdPycx4>! zifQ6EjlfuiV-|sX0+8Ebj_i?xN={d7V*k{UX(OOWIqm)HTah0D2US(W&$O>CK7EM5 zJRBQvtP~HRzXx7o<-kjMIl^8j@@HVLI`Gm99eC+W_ru>b0`p<#lKA4~ZQAli;H8L@R)ma&x0sq4V7$aO@mWMB3ay=rk3W6L`*t{x*{OvBXiTrc3S zE&T%gw>PjgjFPQsdyEXo|0aBk3i561;RGK&-3zw$OKi;~VYX8e2r z%qs{UkcVN5Fh0b%D7YE@Ca&UD$j3lG+Ke)m(8^gC^&3UJuSXS>2W5f{ z7W;5(KqvOyvXDf!%J9F`Y-!_b9^$eM+1i8h1TkM9B3n_mc#S-dr?HTX@hN-@QWeSu zUq=s|?5h{OTJyhVUoT z>VTmKbmrgu9Vh?hZ!7Xno+(%s^UcXJ-K59|P}lZ%eb{>}*2ev$ z>$}c3B~y`C^LjGpz7h93d4J?_?sqSTOz?Z^+#jk{w(|PNq}w?^xO_PG%|A%JkKN_S z4iPl?9(+avAq&tE$cf|U+I`HbX#&qS3Vuai*^h5mVBG*@h08-sy3&em5o@a!8jvmV z-Ku*Oc`gM{DDw0;b+|BBk!L}N6GWY0TahI&S0&3{&fLa_5z{eekdtvL)cd-q;-`IokZVSe{`{Bbpn0dSl|0-*~6aLO> z_&e8v_R-9=SbNBtF9YpN&|U-DZ)Tv+7tf8)nZNOCX5LP{F0+MHs2aE435t+z6A~obDWNO^%qn*G9$xV08~SL?gRs=->||Iwd#Im+MePu%bL6Kmj`n3eQH z%3aqGX7(q>W#HX)b;PRP?XkSTEAT05zU{iY_V2L!Gcgv7GW4_F`qg5+<^^5xH`Zai z&#^~jTVoENmtc+6?+d?1)3*1`ChxI$Y$p7L2`2m+<0@zKg4XTJ|_GZjoUEa+~L0{6wgBx{T1>X8->p~0gRaNz$XAK`!eL@EiZh?m>X*F zDkvkz6QaN5YhzJPZhJa>D!-C)_%ju9tO%cqA>+Qy#5xn!iLXBUxYg-+|v=M&HQm&DRzK)1&?vdvJT^ad@bgt7ME%;rTe#ctDDAuywfwgR7#sR;VspG?C z!0*_P{ROOhyP+&z4f_^wY@8`<+)&s!88$8ipWgJ$_62JfSrvTSRXgBM`#WUoogVFg zSl?aFY3~7T9cVXz_VLWLrJVNDpq&HSFM{@_9%;?0;f{R?ar!`V?RXjJr#to~R#(u? zz7#i%0Ppi*Uq(3g#V&wt$cIla55L&c87?r(qxoo4?%U$y2|P;_un--<%EJPWLT=EG zz=X&r9)tamF%BTyei)nZ%!~F!{#e89v{ybGmr(F*umZdSY?o|jJ2##?7jr+~9wPF= zd!6r)9L%W#GgGWP@A{76M;;@1{`K?oxxJdMmeL%x9M^bU6LAG;o?3*f7*~kqL9R!z z#%-{J;e4|ZeNod)*v5vlSfiJ!!A)nW6B8rM#%)~IKvxY}or!VArV-Fj)Dde_LkWB@ z=OFBA8sCiPV1E(Yg64Buj`7pvcK*RW7l40!J`#2}QJ@wlyr3H(_{#gQ67aEf6P`r} zuvyF799y11Oo&b1_=1q=%b{!D$X(5o)rly_cwA!agWnLYVq8VIf?lq-W#Ch8dppEC zY&rI>IlSt^SL2{s{slgFH71p>`vMtQ&X|JghD z_^8S=@t>13=S*%u;3Od;g(N2lAw<+p5qsI)nT3f9_M&aU+IF|t2-dc?+KSs+ac4YC z5YQGJ0ku|%CMbB>(h;b(zip;6QE|JKDtPH`D^jp(FWN#-MDqJS?>RG>35mqZ-uI9B zByytzN_qo5%`#i*G6azQ#F|E-zc2)%brNg&6Ighis9G_)5K1+#lAI5c_S4;6(&U=e;YpwRq_Py3&7Z%34zcabDmiVL*%B?5gOm4+S8Baa1a~3Wji$Sggh@?`zD@?jV`u& zE&5h%y2XI!x($&Q_;U;Vd8*M8pX#;{YdlS#ihbT}>-sd|)2w|3`&YzOCx}^$_9Gwr zo$2(|N?$Ec@ICal#>`QkALThQsOC|piRTSGujhGf7k-DyuNf_R#Y}L>E;BtI;q#?D zdU%L&bA}>rf>$PZWjalr(B@`|iGW^r3f={HE_zdd=W@oP0Pl>(_yo5xJ;7+wPjs6i zJc9L)3W;^?Axs9Rm|wsk8x`yqOu z+d)j(!`bs0i-y##40J1d{%Kx&^s`V9TSaiR_}KFqZsQ94DvLB?>BGssYQfX6)9?T| zXtI|mxT*O%Rd{0|Zbpa&(I*;BY1SZqqH_#xMpy%#HGr=-#V6py+6}HLACHrtTa9=y zw=0TGlRzH{crxtb29aSU?ES)bBqnlu?wQ1;y7)oBYt0oME&n`Vo)5{0qF-8>{$yX@ znB>;en9r{Ml=WCRbZ~=~yzJl@@$-oT~>q;zu#iVX>X@;dyPMTmAmFc>Tq*{l&BIDf>2W-fk0XpPk$6C-J$oai+>b&&>6C zhuy+oVQ%#Lu$EPXY(V-J@bO7Uz%KkoZ>g+vH`I-hLC~zRY6Z(bC2nQ-H;T@$o4IlU3ed_eNl^ z{6C&9i_XgWB@@J8E<1xWWy}%ZjBi^H@_StD!?U|f#+9@dDgTFE+~Hjp_jaT60JjCq zB}UxH;C>>$e<$qsW8Plq)1V*ai|Cz%PfhtYlrKWfSv$&{m7mF9D>VnFH4a~04GxQ+ zI=8MXoaWWqOz_YSBtmi@8bnt^=YCfCO?&J_rRYQIox*3@PwYg)FwesOFS+!6JX<}) zd$Av>?|c0}DPx7UbhjaL%$N;)Zeq77xZ?wBzuNL}X24H12=1%=^*DH;2d}nsa=sh! zKNZjalJY4A1rK}Z3%jWW9P@m1G0%6Eh5cFn{aqJ$eRX`Hu&)glieJVK)}l}12U4&P z?;iyFoR3-NFo4gEt37{R?-Z|3>qFx6lDKa1!+L#bzo4%i{SS+~e^xjpd z-v=+s;jFc`U;LAb_b9(MzDlu8{{_EjwN>oVed0OjhIn=9ZOC z-)Vg%%a?xZ)A#c-PUu_r>3e2=A8!t$2QTzsV=VGvbg}S)@n6RmrWsGa`Md51efWOV zfA<^(-(GlvwZA`kSs(n}hcW(O)>76@(Oq(J-^YJ^GTN}aaVR?9#{xkbMnD;&J z!3CUFyu_lr z^5$D?Ayb*}#I405p9+lTA$r3fH@hm@V;_FUXr$&kgzWQaG%1m&7X` zU3R=I{A&P*3uTZ82XFr;+mA16zm-2f#Ur74k+0r6gU5b~&kw*=C0Dop(I5MVy)~KN zC3=e;d@OJ5+O^qldUgjizqg;WTC>7J|FR#d=3uoQmi)RQYXkPDrEQb`JKFj~i4CF? zdNL@1uAp=T_p6LM$J?_qN@Bf5|50mk(^feLna$UGg}2wztM>4eo~GnQ>?OvQO;TDZ?E`YO7Xuhev|ah{5Agk2zn1YBjl^X&v2GpccP9Eq2kY#~LSl@499c^oyw$sN z2poBJXdIdK5ux>CbWJ6%-N$_1*5my(b`0Nk)>B>^cfa5E<>A{JJH0j!?)Co8`u*^2 zAN+;i-yZL;`yy-f27Xh{bQ62f7-hbvXzdF`PsjGSCd0jq-X4<}Qcs=%(;{>?*>g9> zC)N4K&H49)-rOkX#zgkDZPoU!G9|{;>-V}$ASvgV*k2NSSXXO^Uk~3OHdy0Q&ViV( z8jTs+_FyB*UM}$jtJHbPP0|MY?$FE`(1jVj2z#Et@L}{+e1ZHQk$n>Qpsq=qq#6A> z{^qPsyVZr}MbBXWtk~{YeAE{CeVVL);%LbC!N@&1CxCuO-0yy?UCESF7+X|pze-}y z89Vdx=IwT}&#K|K3uN&e7{WKAd|Palm_JX;pF@mztEIVTf}6lm@d3ZTn?2acI9UVq zhWviYfKXZC%n7_=kZJaQ46J zHbioEt^fV&<@-Z@(}Udtt^M=J8qT9CzGn4)TJ|X=pNQ;vyV0mO?o}DfXh^)pG4@s_N|?p|M^?TwO^MR_m*G~Q~OC*92W+zqPNRsPj@Idj5ma@&-#sw1)42Y zG3hSU}JHP7rX{$K5RH!_Nw4JJ__^=;FsHjh9>rB0`06X^zE(nEg5)0reLl2 z-eSItkM2*|Zzd&HqXS(H`Mh_*ldlSG?Y(Ay-%#UM>+z;@b1Pkco%8!`mpmInvp4K7 z8qxYIIJyfJ-bC@w#7xVFmEwWJz)H?!!v_;NSdI7A<2-?vypumB=6b}R>*4Hoga+G> zLf7vWeJi}t&K()vxbxLGfFEa`!42SbRR%tPmezht27l$?IecHs!S$B?qjPZmLvKLQ zRpsu{_+;?0dhbb0j-2;OT21iJ_5Qoy&#L|9Nn)5hdgPlmyGw_J@5J53@GfG!kAd%* zIocYQC%y%KqhQt(9U07K&C0@TNP0MsQ87c%L~(YEdvC}b9g2s(4Sw*!k&V%Kzeo2E zJ}0!H_&;l+Gi46>W0H0X7jJ@p=gA>y2Q7dT6%uE{U)GB_6UA?MNA{k@265JB zw7r$qk^FbZKPdY3gMSo!Fm9JTN~}p!2ARYE`QOkuA1-Y;o1SfxwD7+woxt+;xjBnf z@U2M}ajl%s%InAbo&mj@gJ>@gZ{Hd}XvnU$;HPcvKI-8!xSW+GmAiq-esDYwpC{}t z8WNv}k~`jdO!C*`SiS4>ThSYUxy1NzW|jF4=vs#Gc6UvIZgtC>=vEb?Tg8^-bgQe) z!^h}W9{*rZR&=Y$uf1j6%JVzdfm_GUTC+Yv~%_CMh6FZ9ivaLxoR;2oQhu5MvB@@I`A7n3J z>kQ7PR&#x@Ke?q!OD$xtg>$Bo^T)T9zoTFSJ`d(K3LgZPt8y`4bA%?Pz3|Tg)GiH%9Yk*)hxb2J|ZHb4ssLyagO*@5LX}9Pq;M?c%49HU9sZ z$I!Qm{CPitFJ1Th|5w2y@BhrNZ7a&0t%7mn;FDb!)apK=)}ym`F$Pwx&z8mk{Pg@j2W3t3f7`0A_yqavZgrZr z0Qc9|Clls*P6PiRjP2(B`4acNZQ-XrluXR{xWs|WyW6_o_#N$juilx__-Hb*aG!do z>egqHi7l6^cNX8jDVbOt%DuC&?sC@Ya`jHtmwui5PGS*$>Up12@64-RkW4iGdf*-R zmSm#pOX{7>k1u2WTGe+NXLmr8kEwUI{KX8uzjNT7&($Rp-4XT9!JFU9I~&wH3vc=X z-#nz=NnFBr77x5*9^TG(f9uW1{WJY7^WHgd4fDBLy<=YROUClM+;^fE)$q;-yzl(u zHK(J<9_I5$_0GYyRltBfb=GI!#LqIH({k^0zj!;>d(}IO5By^? zk-0*>lj-3*Ti8G6oi)AZ(C_HnJM%sR9we&OJKZbV7z2BOv|Ic%Yd!A^>YXip^JsHn z?wy0v&I6{zkkGE`)iZc!r#GL!W3A@xSMSVQP0Z2ac`%=^w< zzBz;VRr>1w)lUBZZSI|2w-8WbzbFSbvCHZXw*;OJc`9%Vmcxd@VlGJ52z@E#C z^Js~j=rnM@X|u%HqW9`2s938GiAPj*Mb0E{WOC9xOU^&@T=D|Qnd#WSA(H~cdYyoN z)^GPIef9wR%pVe2f$Tb+wqw{!Wo)sMbxLoE-6ZcPx$pJS^9niF0^206WhG~4I8Q`w z*GkqByf~XPw(OOfC8oqLtb4hHZ-(c&)8+({mZnMW!_XUd;S0k*)Kn74<_iuj>n=)` z_a2p;!O7skKT5t}J1_T#T^d&L|HQMfpR$2C$Pwg6yl4w~c7o(c{JkbQ676gF-#nhZ) z!^*`+_-DxjWB@PXHguQ0Ue;S;j||p)0_%s(5a--u#EYk%-bqgU%{A-^*AQ=3!~TtaLNYm`#M9`@#3VfANGu5l2|h14nN*3 zuq7`}TH?)A?ghc~QR^-izn1o8w_D=Pz|#aVXB&w72?P$bca%Vn%Y&>nv4?ZW>DB|j zWW4ybl4!p>mDpK)ob5MkA4fV~Q^Cf44 z(?C40_=xLQkY8gH?H)dZF1d zoQ0^F2~Tv19fW2pB<2r#miSqTaR*1@_^#4C)5p3~BV&P^;_K{H3IERWXIFS@vJ{>g zFsq$fcxwHry2F`?LY~Ur#bBPw8P2!DQN7+goWeahX%{xcKZ!3_C9>4YY#ngdwDgVcBQ{=Yx_$}vBB)+$R-@X7( zQ~Va%$?@ANxBC(9XZbB>4-~&GeQW%-R`J`@M#yhR9f#l6LbJ7QL!=g&TuY4bWTPcM z*=>nTHm2#5-D&Ab@Y_l7+ez@-N$yGM_rNdf#9llOzg>}!cS7Gjuf={DOMdD2M0hE& zxpnV>*OHqC{jTL~VtLOy5nhX~7eA5bCxWNMmTsm#gK4=_5<%mP3^|eauqR5qQ%9e~ z>=V1W%W}}q+i!WuVje-x8Cd8XTKgCAZ*?!VoDJKp_5gc96_1_C*@B=UZPl~cLFex5 zvx>7^a$g&ai#{d-i;2MEL|}0uus9J|oCqu?0E-F0Vgj(304z=b7Vi;QxJ`U_LtAj0 z=yM5bK#=2E>5KTyw-LjKe63&}0r4BB65HT|>7tOe6}f9ci<_atw3f`^??`Nud+@2v z0WU5ovp~)VZIj$^ORGMyP2wxBG0*q?8xPS=Q}+_)C+R=?Kl$Nu|NouDiis}2-}h0)kcyAIBub2h2PI*Q+o{oAcaiLvI4 zk#*Fo!FksExNj2I&iLbIDA6t7A;%tM%H2ez#wvFWL~lK7V09ef3LUq2Fgzj`7e7^1QL1 zKKki{=fn=n^OwBm>N_nv1N1=~V&u>S&nb)4!e{e|l`$}V@Jov7XyfBqUqi%Y3MbCFwyP(k(RrxgK z9H_D{mUOX(X@NiXQKw~>FaJ}>+&D6u;Y*S$Ds6=_d2z-FyJ20e*bK4o-eU7tcH)ix)RHaO z45P3aPNe@cmCb<6XZgOfIW zuVyZIb2zQCM-Hd(y~o07RaqgNdcHU$oUSOur(~Jn)AAAFQwSSW;ZyXUw~0>)Y|uP> zN_=TBKApICwE58jI8|YTF8)X!K50u7oXS6>hpxEB!>1u>PP^Ga7g9ch1>!UC@D`oO z$K9Svj}Bv>7koSxo-yJAeEL*)*E8=w9G=%4k3NqJPs^KQ&tK4hb7v)WgNR#sh;x_E z6LWrO$a9yz4~n+yXuFKIchGj*@NFeWXY?G}ozC!-J-^voZcfbM#gM!^{MV`` zMxaX%UD}{>J`afp3zWZMA+eSv#;!%WyQ_`!ycid|o2czU-uGSTJT0A-a!%IRMg0`^ z;Edh9_{}y~N;`Mg1}(HO!@Uj-8At37@9tWpNsSO=cboWV{dP@$J4>yfYUj&UX^XB! zoJ!h4SK=?SxOKC)W|gvLG4}QI*Q}?efS&L2*X$VnxDx)j@;{zGmLP8v)8LQ!Yerq> z(PnMInjJ&S+DV19jJzd((opm~;#|26o#RHFE4NyjQnnrP(d+zp^`hDCkI}`jqAN*d5yuI~+ks*&c zIn9mUQMxmxvs82yCF>?_E*&vXZtbM)2zhdgv>hQ&ZkD$1VUKVG`OBL+iG7R-JlKzm zl&tgcZ4Wfc*^N%gi-E6)v*1nS#c1dp<+Rj|a+=R0uWW>TfO1Cs>`~a(yql&UWnYi> z`iT7->&;m&@p&Tio8kSYPA)D@{4Uf=Qu&zYW2ZKV4FC@q%{UDI`%m*O`6c3`jHbva zw@K%_>`OJXFV)1pRKw01o)6B^P=lUP<4jLilcS;9TVMLM;^avqAL#;>Psoq|iko}C zotX61XD9zr`Ar&2jff8?vr-ujZX!7u)*H}<&h&+q59 z`N)xVkM*;sBe|@@=t#WNP(qC)@JG!v;5-suay;PH z>jAepZL}{9>Zz?k-Doa5WH@IYN)^}Wp&u6OsiIF%zoUp68=u!gKm5FAIFBB3ot1~A z?n-FperlgQucc-lrEcLNP1VrrcuEUxtJYJ?p3_o4Jcs+^scZOK&1jAULRTAl>hy0= zqh+t2BHN7QqYRxM)I(Pn>rU-meNO$4`kaPG`<$jn4>`@h>~mUP?{ivTBEJ@6>i!oE z9ZC6BlIGZwb&rY9K)c)(S#TWvJh^h@`g!QfVhf|6NAG^Sws4_-o^J~)ob730ANs5U zUSBm4TlmAu7T!CN*lDR(m($H}JrF7(F(dWEm_PX$N)C#=^K=32UZY_S`9#qJrg}B| zLcX4xTESj*+49%kiVq+Z{ae3I-yna|Td-I0En1LPU?~mu^J=k8Y zFs~@oZ<)7w5%M`fyx*=d_Y_NAW3R}38}+z01rV=26}c56=g z!K3W~!TbHRP4v0VnLZaVsNuT_h{kdNWgHQhkEEC0RGRcp(ct6 zzDEzGuKE=CJWda}?clGiw+FtirB464<~o@}#`MG?$*Yyx)<^A_SD};9dg>5(eF5JR zI+zI^6#rREz4r@R>d-l={!*&=C^d2()>AIDa1}I09h1}#$Lp!9smWKn1zN~J3%j6& zUC_clXn}aC)`QSO)gj?cf&#Kr8Of0=b#35( zL5YhD1<5mU2!0k^S7e{FO%E;m9d%kcFMG~R;)!^#?@69L8x947wA}}OjqhjApnvc6 z))6_+B{>|tIxX~Xnw-@puT6(_6j^`RsV_O=)WX*jMV>!BHt$1UefD!JQ_KHCC+FD# z_9{&F?eUNKw5@ns_+q1rnw+8oZ7ihitj`#}_8NYN5$UkU)q%>7s{`eHd_v=?Q9|R? z0#JCErE%@wsK-gJDqjz(Db$0AGx$D~DWj2z4zkSA-RX}WGENrR)e#{VZ8$}2Vyfe7{1$~%%g%|UesG5ta_95^9btP5 zXQCHV^K9WATB^gLO>ZQ$?DROXmrM3qt~z+)SD*dP3!cuv z{@b%3dp@=Ne)xaHa_-%D1e&&-yVc)-a~u0K)K78N%inmw*&u%-0jF!@QD@V+&;a{B zcWyjNAA58AJBzoB`RcP{o_o7+7hdV2H~iOw`_ahTg1gBXK7o5jq6oPB!oz2sylpw1 z@55fqKW&yKSdX9ooM#3x+p;#jHhXE{kvgBq8kpt6p7=i~LC48Ye)VkR*Joc}mLy-MmbdVSqPp0@tI9p+JTx1lFCvZomH`_f9; zyLrQlyNT}bb31SHuOIQRH~Mio8UOlD|9ZQBeTU!vG5>mlf4$Sc?)I<$#lPhcUt;pyJ=NtQ^gj1JEW zkaJe)pTBThW@|}!wDJodA^%rXK+DAo%HAHiz_BUtA9wso;s&t|{)jE2N$g;*Zdkxn zb;F=nY|O-n_<2h0*~IlwCc9@7;oXd8uPkAoZib#3&TnI~PeeSv7dx1Mr_ZA{pTrK{ zgkR$Sd9i~MALiLtF;!o=z;81UJ4o%RNy(BjEx8igw)_fs`e(6ifBk3nj^S4wLEa_) zC^jlo`hc?8LMx)+d|S{UZ(q_9yv^oUYh!OT+TT9O3K(6)sdW>lR@0>+56O+Fa-=&3 zwVCM4Oqus7T1uL=)GXhkpy*fX$;W-(LeRuwn zi>=`SY(AYmEn+qwllI}?@(uRdb@&RhRn05*J85H6Z$!0I_rfpPfgQXn?};5LXOq1) z>YfLW7u?#k$jYEAaTZhI-&4~TF%lMfhhb%%NgwA3y6{M z>FgKl)~j4bU+}LV_pdLY-HXs!C3I8?9aTbSRnS=#bXEnORY7M}(3#D1o98z4WkYBD z-AtSZbXLCyI)m04I_2#3mnA+=XpOk)9IZ({0iWK!YfPK1+2tO+rLMS(__9ItM!mh{ zwJQf`O=|85t(EvS`k*yn*CB_VZEovne+7W#D7g8$#Avjpp=sr~jjiq6b8`a?^)@gK>4`vetpn>skx+as+p zKW&$PSW8`Vjh;I4WwmExLt8F!V#I?oo=ru@h84_-xaH}@V06!wSY*rCP)f~`9g=&9 zd&F%vr-{4S$^E&q|6;ith)bKDptf_`BCh0sr{+%fxpQ z$G3uiWg32!+D_z|&N&8&hl!BuG)`VXxko&jANP&C90SkeUSy0hO~o1(*_T42(!$$6?|lG)5YS*&uC47(ZVxZATb~SxZ~i2Do$naxUvoO1_}Z(fFCj zd6>rcwX>Y(tltXGg3hJpWhv`~Ppp}IolQJ%kbIqbK-L036l)M6XNmF`b-+)s_2OeV z^ZAC+#`@K64!~31K(9E8ZG6-zH;=L=oEzCmuHrpBBZj6a!!r}TFiO0T#0c@Mb&up~ z41_+=qY+DuSy}6jais|2= ze}n!F`lrV8Ah->VJ3j_)lIK+CY&f|PJ^p!v+en?S#xmm07ZbP59^{DY`*pm-Jg3Wu zdwVzYoOTd5-xCg9Mh>Ur#hpL--8YLnXPs7}4-SfhYZDYeGB<_5i+Z`Q!Q4Rg?KK`ZfO2bCIWKi_f@dow^shJS(3E9#~FjcIx%a?>`D zYsgI-xoNv6rNVSnYq-QKdj8`5goN>$}u|X5Hiyq zHA0y=!aehp@}r8(%=uCE;bYW>l9~CsDKaywo91L@c(#mz$3&nJK)??OrLi05bDTcyyVPn@Uz9 zGl!6u2f?iYc{$o_FnoELm6hO}FE8UtR?@d8FPlY%>i9Y%p1c(K+RE7}sXfpVA49*y z?)ZFI@#D_X^ldo8pM}Q?zg9V*Bh*>qf8pcPb>b#EWgkZF!Jqjx^J|rRX<`rgzky#p zKX@qp5!=fDwR$o4;LCC^LhLU8H_5g9RsE44i2qypP3PCp>F1XAd9I?#aAe@D&%(FF zbKQFMvqSUWA>TdcUFN&^hHoqNWTNQ8(b=>;pSG6{ z-?mBGq62G0^3vj>@(w+0nvF=u@78|c8DUkg8K{vm&W zGrxL%wK{qsKc!pZ`*~UX6WToXi-;FU<7bNN2ItXSd{N*SauIt+YPhuS6j_Vj8pl@` zVLy?+uuZ`e){*B8@|<&&#U?)BIrt6Y;&Z{S=PYF@I%&yV(P@jl?_$4u`sgp*h8^g% zbNkzGz;7kKD8&PN4x#6Ieyaq2D|uheWN>EEHmT`I%%<|?c>3$V*yg82r={<#P8

4K2JpOf6Z*gd$mku|W6wZOCBS+Pux1})3j!F@v?z*Tov8?+>%qtc}jv z#95~_G+yG@e1CzzC9?|Zq*CiW6+EbICD8G587sTEA-9%t)H;Xd7`hC&deA+wwYN1UeRXB4{WpX1!$mj=0WE} zwz=>d@QdP^5-V%YYlUyIXRim69=?~5gTVKz^gJf_eS7{h1LNxXXBiVXUkc8bI!*i< z_|@~P2khxOP9{c-MX8Toe9dh}@qF(Yns+;Hn7hT#D3+XA+;zS4H?{bYr6 z_xTk(FXDL-&x?3oulh8*ZCFp)lKZ5Kc%ILtMzTyeM(DSRW!@#D$<<| z_&DVJIH$SJP9oRchd7&G9F}un(@lbvHfhWN&v%W@Ju7Up7C*2yK6{_<+kD^V`!?UV`CjGt z$0Zk-arL$fG;Qy*PaZMu+^)NKEY*|6vGUXps*Tju)kb^qrz%3BPvKuSDr|I()E44y ztWSkGuf{&-_y~TVYUl3z;3WYKxRD3r5PMA~^s=v-++pw+_AwINHzT8^HkNJ1gT!-< zUiW?Fk3QFEjB`#-i?wT8IAfXyW^u9g!DVHSUzJz4l=sLpdWzhSeICESXyFa)YZ1Q% zy{+%kfIYtbrSy@82hxYv_DZK=HGS8LPQYKC7>DflwF|T3p?#6xo;<*e(bC5Xzg27a ztk8AO0(@9Sq11SNZ@KY@EL_+1sApeiKhAWPc1bRJwZr{5+1b(`cW z>PY-j{@Tkj&n3-^i63BG&kCO;*(!5ozQJ{;DETu(`XF`#p1TX)LhVYGQ#W&2E=LLH zNPRrY)x}i%F;$Izoz%8=$;IvRuAPuvpy-WO2Yf&6=S_;fl*?%>wJwX>UKIHx@-k_X ziyu8D8O+wYjK)MSVXZ`G%BywR_;O(%*;)uv>r(1wYRDkzEBj6J4=S&4(E7cSSyr65 zG?{PDCxGKXo^?~kng9Jv=g{Aes+`jWwJdXWA)f^|PXRB<2d=&m-k1N4LRgr;E1ZYG z;#pu34ybiY%zH&@t7hLH->&lfKb)J}8uai)=E*^Q#E|X87^vLI{ybwp%l6^n2s*r% z%Xr5Sxr~X)*pOR4;RoJ#-5zk!&+`>Mpm4y<=-xQZR|~H*ugkUfEYUykf7BTG-wdjE z{2cl4BQHO$@bmQ|XJe-%ML#lSk3n*+^i;?k;4QiJvh(uHA>)h0K2fv^U3z_lTWt#( zP53<0>qn;_m4D7{h^V~9{y6&47r^^C_`jO4z>i#YdE=|bCd2+(^QJg?n_ezLD%yoFgoWDNgenekN z00Z_=r!LsNxnd%X*>M~`2Or;)*xwR&|4$GCtRdpC^oI)>ESxTzbw8m zABDf711A}Swq0xdSi;ruQR8!JN0{j$7a?J zyCR44;otFX1H2$&PY?Kb8V662HSsIK(<`0Yx_>~gUE;JxmT;DRiPL=E5~t~sB|JyJ zTfGFmZV7thx3&d~hyx2=9nxP3yAPr3UL7pAi63jfAvnrjYGM1bM=kWuW`f>smA!W+G~iA%w!DEz^iuCVZ!B7nT$Qg2KFEGF@(mo_LJUI@<2RXar>x(V!0<|F z>q=jvL7n{dAFC@>;*-){-;m z)Ld2YlUj*(Sr&%c@9ZG42ka}bS5A%523_8DG~{ImK8dCvYp}h>?P6{2n2qfO4YP)J z@F6W#x`#15R7&m>wZCmNnOjpGeZchz>KaKM5_HJh$OV4&{#v&&x)plSlDiYc0(R)P z$6u7cniJchIaiT;XTGI7@g3UjG4Ah%E?xe=>KQG$E1}=+J^)O6{z{F-(#g@vSf-o- ze?muG8VneW(Usaf$lBzxL;a2gz1CvG)E`nZ3|a$5*jM0LYWYK9880ysRYt~Qo_EN4 zRd2%%GByOaCdpf6e}jDM=%7x0kiEPbhj0*yvXrb?~n!ovusvXx0P2 zjhx%P^>9yi zhjBQvUwaL|YZ(i$+Xl^$k4{gSn}H)bslaM|ozUe++$i!XDr-Qlvzs&I0q=Sr`}Ulz zGRxhKr4ko5#;86|ch>CCjOvK)R@YGw02_Jy9?iLahvp=o(VXjE)ST6a!Mz8-H|A)b zBKUQJd|UjBK0WV{nvu@>FEZxKfw8x4>t0sl_!_o1xWhbzr=nvz4N>5|o^|_mkK26) zc(e)}M20Ee&mNxW?A8{ZPyUGq+k1d1YiX`hJ``s?@V;%a?sO$|r-PWdmv8;C`^YBF z3zWc%;g46{uWHlVW@41cdAlPsE@_^EFF@&!+uV(F_0%<8;r7EH(w+4mV9eCK<2`h^ z@=)nU_{Y*}r#ZlRjKT0lC$WJ0GJGvDnOk_h+XRg9UyGeWK1RL$x~&rDfcyxIZ?E1u zseRmxDWT;bilj>T&b_Q#tQ1+1>$ga)TLRC0>vtkZ3>Hns2^aPEln*yO(H9CYZCrDQ$``yNW_)Cp7v% zkx!R~tgmzL1LTc76FM~?ch=)ayKPg^Os ziOz*iMcbsAQETIUJDl*}ukpr3e4KfTKUQtIcP}vw|EE9J@IMu5OR9zRZJwxhH z*ufs~5BpNVAlwfO25h2&F`E7urMBF&LhpgXIn4X(fjOMT7}?J$c)xqr!1Gl)dk(t) z%>{+uG}%Kz?pO=JIZbQ-!`33n=e(_rIdoVT5T5}r@q7VlT}_jG)ou6&y!gDN8J%Hc z`^&YjD8wBgxJoro>2267o69o@e>}Lv$fQEI|WX@?M&RF;_**s`%q&O_{jT1*BbKQ34b*I z9ciBoq6b-)Z!af4s_?*!vj;8yjWBx*Sz=@iRZH3+2@Im<&Qa8 z+;p~`t^Y`DufINj%Kv`SoX?oCErQ4RRU|haeidqJsc$DflHWJAD*c*TZ66g_3S0*8 zuII`8Z)E8hT@<~Bb@A5zi=0zHwvcyQgD;bFJV)a}bKXq8X$Q?uf_I#`$a_{iW1&1t zT8)cTn_?6EeVMiwgTp;mLEB*BGhRQ5PuteT;Bb#!_&oD@?|DXQtIBiyZ3%B2;y)?Q z{KWfK^c?S7QG77sKUt+}Pl*pJIlyo3XU+rsCV$L9^IY#c=BI2+XenIg^}A+)OL+5R*FE)|DrG0RHF!c>XV%L2i z1^jhrI?48bVt)T_BlZlmK9W53d?V+7RAZ9)g5Uq8>w|jyx{EpI@oQkpyhU$SymLRb zHV1g;MaS~a40}BtdA!pkFTQ4|wKvTxzyqZNBu(=oWR~vTPh1M#`|>{ejV$k#HOkGj*lbWXzJ78s|D7;g2T>-6yeOk-P_1IPU zcrkQe)Qpoptu;xnFVPVe6zT|J#lM#f>T3XR;8ioxJ=rg#Cea4)8r}~cdGe(;Prf9+ znlE2+GI9vq2Ie)#%K5>5utGJtsF0wGNrf{rZaE6j?E#tHh-4 zUmm^rbNAl4Qr<~g9si)-E$&_7$+;epGt?o^hg0KigW)8!R@f%7uCR@#PtaHKv9KJx zhA;bTxaDRKmc3I8*YLDkyfqAaGFahu>~llTO|5J6#=^0P4w$14eVuw=`*6Yg*?P4> z^kt23-Qet~Q7f!vVY4>7+ZvRnA+Hl;^pt}DDwtX1+8-B|tA zb?RNP2iw3NY(0ChwRJW=+_Cs@$Kt~siw}1!KHRZ9AIo#eVLTQe?iktcG-hM3mEu!e z&f3Uctf`M$w_e2qe8!!v;{&3m;dNcafJ8>Q(Kzv2;#0Xt9xo?kO zriT`hPhsH(u`6l2hi~s3WwgCA$~c3(7F7wJ5j#Sjt!!I2+Br(KSFv5xbs&F;(YBfP z=~1%ZZ_JL5%5SgQ65C}<&aUdtfK#XLD>A>x=sV6wA zH`X}U-H#*jks4>|@)|pFBfMERg+HvTmHplD?P4Q;RXeNEh$hOCixbpu1aInffst-6 zj%xOdDy}<=a%bN-^D#3KLuQ!8tVR$c#n0g903VON%$ja4B8K5F zISW}q&X0QhF-DTM>sCpObL?EVWe&Nl5#&uJ6>=6YC1>#(BL+SziO*th0UJWj;7QK@ zQtvEKvdlc+4v>4jF>a982>;IU&jNY*A<{(y`61H0o8h~9AayXK9eW-q>YWGTT#mA- z=grXMTXOC$72w=mVkzgSv*&@B&toEUW5vgu2jbkjOH5j7@sBmh+rPKk94BX~Q`dZ% zxq9dB>@v>UCC*ppCd5~V@0v5moU>{)Id?37Gn_q^zX{GC%iriBv7dNOZUOcD5Of0E z5{FnDXh5g0NWg<}c$VbAQ|BBH7s6JZuPPfjU**A*eX4f>o~a|<_(;nGA#)Y^r|t%J zi-$O070rX^`ML8|tbf3V=byb;@gx1IE7p*Is$As}$cHDf;#aC%0;QYu(B+@@&M`JF zAJ2Q_mx_%_Exiw4U))G7T|-`+rR1cDO00PR9%d0IHeUFmiV-unu+J0iH@a5fr^ffJ z&M^uuD<9fg@mKx-WT}O>OX7{ll*+=|GAF*}hc!`i( zBFK51xF%~Z`CwA!!|X5YBM;0z&Al^lh<7*-pVm_DW#n(s$zgE;xhTj-;eLX4k87zP zJdTfY=^^4uI2-?<778um+8-Ph-IZSQk7JkjUe`N=+K)A@bG>+}(?1J2eNLie1h{Jh}g0Nra7Tsa5S6|GP? z(>Ixl_Cs%U4bXmTCp9}(D7sIMDx`bj|K9?R!Xt7yVFuCs>)>c<892ItGk|x22U~`q z`EGD@jTS1Av$o5j`D~qzEX{`>@o4__{?NA;at5&MSRAc1Kb~AMmz=wQOU~Wz;TxT- z&NGlV7+>cmq3=UR6ST`&2KXI#8ReS%B~2Of073H-gXy3Da~k%LZ#zmZA+yhw8Y=-4 zUXk|BGxRlT$-XMh{&Y3_9qFR>TdW$R?UC{LjP&+bduy_Mn*G0kI@hCkR`~z57nxyv zy~r?rE&Q7KHSwdau2UZXkKfNZzp3QBI)S)d?&+PQb274G^JpV871}z1x-{>nF3p@F zV~Kq^#=gykv^|%$-=yvGA=|nc@_C6&m2(Z58&y6~qxXK=KcaGiy4y>XOfARm$PLjKI1kAET4I>%)5Q7hXyn(ZEO=)#jE?FXb zKjGTszDCYBZ#k;q35*r21?B>KSp!)M*2Dm=ZU%j&7Z?NIVdup74B+Z!=Fk=x1K(lW z65A+nbu-IpyOFlU2o4V`+CEL&M`#Otf$gwuiKS$`;0iGxy;F6@JNz0DgK12Opfin! zmf?eKQ;3_NIehzO#ys*owX|KQjWACwZO@@C`@3xy;OF`K;pfL%GG5vSX*-3sGly?m ztKvro<5QW`K}iNm;d96+%_J{sp$xJE$e^i9dCop|4f{xHPe^1?Y`W1n+m}K27o~_v zc48mUZ;#!Cz0$({NQvOHhqqzVPJB@Zmx%|<-qX+)in$fqCI=2#^*N9=?Dqil|t zvbQF_Wt&6sQte;ue@~mk!`HKpZ*zpNd)qe0sJCcyoUif^U~_c&`3DB+AEG0dijEvZ z{}3Jdcs55@PDd7dYn_^NIO6FaNBTooB+x%ZM<$L&*&O%%$J-n+m0#tGk=Pu`a`SxT zC3e^dZH~7LPv7Q9XY29c`R{IX^eBG+^O4&e;SK+1bG(Vop>VS2T6HCoj%wZ2r0ur|DGkX^x% zPHNGUypOMn+*z`AwiPGmxU!ROlKA#@Y7I51W6iT3+HlXKm$LRN+0zg`KBo4kK9wYH z-fbjKlNc|tmDp?JJavpXVL5Ltea4yw`s_)eI|tBd=$BaE4UZI)Gql**bU!{Qog7aQ z6C2%ho6;tEM~j_%?=N=NKT_)4_H^mqMOVCLWR`pTKDV%+M%~JS@5VB+4>V5pfs!An zDtvZ*hPodol;Ptk!^cyGkEd)Xc>BBy_&r^U@2C{tQ7OKo(qY@mzD4Fn+AgQs-z59xV~ly70eAN5Kyn^9)%J?%w(T*EGj^H=wCa?krEZbRvF_B6gP^UB=VN(( zs_C8)G4Y>hp+&njdwft&u46y(`RBQQ2)}EZw&&6IY}#Hz+xU=e-L_6swU<1GZL3ZB zmT|^r+NVu9<891^PYmvxcx%Cbd-1_BsTaGMbD(D3#R|VBIokV9xLv!x#u@v`6P)^n z6P&azd@WfJh;)I2!ZI%SKN!(4sR6NnoG5XPV^3mHS zdrXR^!mmi&x&tp$w58ynNo|tB^!ix)6(1yKI7hGVk+|yux>=E_fo`UP4@KZZk&h1s z_+Wq!25>1F0v~ujmglD$;Dd1-e4y>ww7rD3oQ)a+cfbcD4<8I4A84O8e0(t80zSOq zXbpMz@V?>j;h&PFvY#wx8sL8lu06lZgC{y|oPD^oiXm{C;8o4=q!z`iWUtbISCO+L zO|B#EPls34!mH}xRbTkv3)Ht9;8oPi!>gk3swljw4PMoDJYFR@ z3a`r1MQpAyhkHU76&vxbqf6Yl96p5~S;@qCLaXHGgf<(X&8g7lRA{p$9)wnd(5ldA ziO{GquMVCz*5_&PA9#^*#@VJjH8KQGga5Uy4#0N;;FOlyGRXt%Za~LE-y(iQVn>SAUZkgA z{SqEY3@R|2wCSVnG~m+xDEd{L*rhPM=aCcIE4ECuS3FvrTv2wcj`e-$+AgQ9=R>_;2XQ;XebUGeQD zo#?mdW+lWGAtTUxi*GOP|>v*^X(en?z!CXb3&1S zhT2W{OU))Z3(gs~h<9eJiTe%2r_~dmR{L~~=#uCTwQ|dJ{~UIYoRxzIh&}Wu_Rw9}LqC!|dF~_kn$S&~A|=k< z+`son*h7zE5B;(ok_|A?Jo)_g{V477bze`gT7$lf~hW_<{$Ctv27kV%VM+eqD_KQLo>;MLvfWZSp zz<~SrJ^&1M0E1_ML8-tX;K88hW?+DA8Rx8XB;XPwmk$T>P;(X)osBgG-mI&xJ562K z!1rOdYzIzh;ILCS+V<#f+bhJ3bZNI2^Q>gMc6-SaVm}oTQ(0uR)fKsIrxrP-JTK*W z8PCg}(46A)MNb(rpAY<~3_Ya`o1zr?uX6i%KA6m2@9c(llYjji|N2JSQ9pMqdFJA! z;4Ar=>d*_wiPaD(!zWXg%OTp> z)=jisLEBBVePH;uN@jhUwsUFwMcQ6Id|M^6CeXH&wk@>%!0>H7c}08<@+!AR;qT_w z=;n>+v$96`$L7SnH5#|YN-lkbH5z0Ku2=C57m-6_;=mfk&<(R|gpQ%sDEz&FHR7IH zqwpV%ZaGs64rF<0PxmC`-X!FxM@I{UmxR9{d=1`e!CNh#w_3tm4H@U$xaIR!a4es< zhF@@sPldPE=}vis*jnuK1qvSa{9Q0jaA1Gw6A4ZOvI-hsdH*8<+c{WNiDdJz5^bnYIKx0ve`Otf?0 z4{yR><3aowLF`!SessP?{u(B(D?9d{KLa;^4Yjz-*x_ZsS;mfyc_%jJCVU2saqg!r zm$4gDWbE9(7yESm)9}R?N<~iYeWLrh0lr=0^X)nC?d9<8M@G!InfGycYTdshPn|71 zwG7*@%!Th6Q{kag)1}ycrSLW3rR8Gx<#=gW=p!7>@lx-4HtpVCeU{oz_df!+deJ1E~wizS5tS5_|k=Uh%ctdh;n}Nj9$$>W4~tnO`mVS4$)S8fzh?J z?V#-j+HM`bt@r|?^J&{g+eNg!Z1}eL0vRuDE!sBWTRW|=EpbnwMSWSHGVsd7X+wR^}3xidg+kqI*;#-4gL zoI$ZwUMI=Fc(KX{{s*IFHnHPgEO+W#o6wH}>W*0DLA4J94 zFDC9bs;7v%4J}`8gqEw?yXc?9YzpsRulV=ay)`EFR+e+0JrD6csry<5^%!5ZiPsJ# zHj3X##aI((OWmdfHJpgCqn?60MJKNSx#RD~-@1w1@pnFt{+T&S8)_~@smWy?bvE$4 zi|4oTe7(xuQUo6)Hq%6w^K0SP%#U+JP6NMsezo`;YSVAKb_+E20{+ozry*XAf3(`E zts9Sjvr};c;wOm52mN>OqR#U5`lboxYZM#JBpm0W}grDR?5r0QQ`8$H% zS(#WRx>t!EK)0w!pcA6sqcc0$9>lN;AB2BBPEEB6rF`U?3()8rN1 zOpOcTXA`Aaeg8+`QaOCI+}X4Vne+fMDZ;g0PJd-?Q@qUC!2PZVkV!j`NzdRT4S$wz z0<${uZ><)6QTQO2f*QHq5IsR>nKG$5eqq%t!>rRdziFLo0oEdqs?jF58qvB2yulJ|EwV3l566=o5I!!N1 zE&ir1=Uecp{I%2sPpxj zTR(EZgV(47>O2teGRWbg_?y^bQj@E^<2A+80{+<*4_?-PKCFZXF&71^o`;SLt7`L< zAz)>t$~;)5$`?E!%&ZeT*7c?62;`c=Xs->UiYNv!nuB$h$k6 zoX2T$dT8j&y!Wj5#A36IuI>Fs_iV3@hw#!>D&Fi1xtzz;>Qe8MW5$Vf5no)%-jBq} z(^mBn{wq82N%-(;`X=YGx~Fl*D_-I@rb`TR-?~kaQs?fjBIn-wik$V^sd@NBfaj$= zFXcIWAyVdabp@Oa_XV6gdA{k1fQn&jSgy|BxZU^|*Ky954w*AeXXBiQRlvDc}E zS4!?=HhVU#K$h+x2hCmZ=^q_+?&SFOu^vF~f8C{7Pt&x)74v zhI-fVgK}^S8*wN6B2otbDuaJ9kGSxV(eM)LBBjYAyp!4u5$2&Yk2L;-IQ#lM&#Mgt ze}lKa(=iN!CFdL9@r;u()XNwK!LordG%?0zp11J4dj~LD0gUDXqf&uE1#_ri4i(Iy zg6HH7Spkgas(eSxp@KP70E5xMV6@v1Cof|}lX_1{lRUcAlTrG#xBlcNTWYzr>1qQR z0jsnlI*iC4KT)LogTS7D=98q^naTO*akdRMw9r6n)!_yIjLy4yRC+jEPj zXGWj&ufOMCKjmNF{I1KyWjolb(*2y$v6J6bxp z-jZBQeaV-LnY#wb#YR0O^%hHqsG&PjxwuO0|6J(BWBT=TCs03k&579f$i;)x-jZCD zcaD{d+DrdYa`E2>R=!+RunNyVF09_JT=e=s>+Q)!?H5DKMQxxKz;Web&(DsPi?M(H zKe?DzHS_-G%f+61-Zi;+it@jll#`3zb!$#8de_sCiz@Gf#*?eIIIY^RLgfq+Xou2EE<+)rCDxVwIUJjDz-MM@kizK&7+g-NxeR4{Whb*WQ z52X0t`26=BVv)9a`5eeRDPZCMpLq;^TIAhNJVC62?)`86EA9O;WPWX1 zQD}%fbb@cfBk)rtJJ$9K{VF>8&3@JkS{7dMFT2PCVio&+J|{MxkKd1FaaGaJE#&GV zkD=^~CWF0MT7SQX6A>RL7WiX;E~Q3*)p4R)v*O-;9!~V`7do|r;XItsp37f9ZycGu zpm}P%kP76KgQnQbf+~woxQ*5PIKMK?ERhWG(=8L z1}to3)*3&V_@>>c#hzsoaRqN$zl%7JC)lTFpR@Nj?9(6c{leJWgX4$QKG^lN) zRsHjxzr=p6!~UtKb~C;=*=vt#*lu;$h^#C7w~YzzW$?Y2x;r)E2>oLlvQ}PS;)9iZ z#p_NflYN3c^hMnd`jomLkBOf_`wO=rJ%xMCwi$;9#frT9u@BnjSsJ-|0^BcJx2jy; zC(gO2TE^ivMAR6_fx!0@;Hx(VwFeK6bEfZ9W1xL2-<&}I_#m?1>>;0KoHN%2-+LeJ z9B=O__B~Ytsge3RjedQd(IRh#t$jqk995Iy$JqRgM`t{7V8b{@Q2S`+4b(m=E}rEy z{1#v5tHk%8!a3@?lZLH<)ci^QU-N+t_Dd-&=C| z)MKaOFNxzXiFolD(>rTfZ^n|Yb((k9(pNn&6(3Z&*H@T)$HcUBmr#>8s;4a0=%H$A z>97a#a1*$Q+#bJ73tezXvulb~Onqv)>DSW=-C;S_~y^VpIs{PIM7CHln=i$_Nd{@oU7k}uQm}N z9|*MM(ZYVWHhnUFm6M@`ld%U+#;-CR+MI6d`YFQ4g-()*HT}p&@^fY2-TeJ_2L6ux zSw&8DrF%)PSwAfh8D@a_M3K5 z4-P#eicC+CTZ|lXcF^*3i$${h_YaIePp+e95j*4Y^62kHFBqsFBRTh0`MC>qecj8d z&e+%T-#=FOh{g(akFekOu0IT)i|^S1IitQ2`&Rxpa&x_ky&HVY$zU|Q4~m}C$vTOi zBY(*kt6<5ul%BIy)x#Oc7dyX8^gTQHnD8jpy@+@L#Xl|`>U**V@K-H)S|fcQ>`!*| z^{4vC$CyBGx!OX;0`r@<5{G&`{VNNDHGlHP)pQ`If2sOBZR9=_I4@va=wBY3zmz{F zwXPnXyyD5#j+bqvvuD>e_E>&e zKXPrR7H-v2=J(O(yR-U@%D1U-dQ0QLGjA*h70&v&hzy7Ct_Gj#bY!?L^*bbXr~R_N zK+4<>Ega-KLCu{S1+ED_v^>K;26ZErZ)CsaM(6|owUSNY$J=8mk z8gUX@QTyls`-T4diEh~^QP0S;uI33{>Mr{{&?RzF*#Jf3AAg-XU+zB%e1>}N&q3vO zb{gX39$sDK)YciE-Vv=PZlv63Tsn>%?BndyW@yQ+Rq)kbsq0Rz4s_2M8@&C?2Fa&? zu%G%EVtXX-Y%1K%dkheo|^72o!Cdl`6s zoEnYoU%7u$68uDV0#o!POY+I9{ezzvjoYh$SD3u@?058-z>V)*Og*$1?KSguqpKQN z6akAOU{wUHa`lE>k)u;|>cXL8G$Tu?7i>7datg3(itEY86Xd<-n;q86sXsri*}qEY zsl5;Cp`*Jrd(yW>-_eO*<+oT%eqx!X+WZ~ou%ykEPpUR5*WLvW5l`^Aryqx18 zR$e!zFRhaELZL;MY02t&$gW?pH{Gi_>-&%;i`c84&t7)5?%ZinD`7u-CtFz)Pg^^8N3h34I|SCJ8^YI}(!b9$iOl`B<}hW<}q_8neEvySm>Kf=}k^{XmE8 zjn+}C@l?ZUh#17t8BXna)LgxUny>K7meu6;?u1S^qgR9DOU(c}wjgv7sO$W!dAI9#Yb^v%*ne_0?cBdz*l56H` zq3`S>N7=`Yx{YIw8qGgv@BTYSUFT!{hBKz$t^awyG5tH_)A`sDw_(f?qvhvE+^OF= z;!gY68^*LTZ@4W#e#P(r@r!pp8CVRdg!Y^;s0Oj?Kg}rb~jKTCT5kkUsqfl`mI5H z2szmn^@3xc;;*H*S6f!7V;8tj-k)Z(D)nA?VbNLP(Egv23$7+&2NHJsR~{Z`cl7C@ z(^=!I%k|`^&>?GnsN3_ID}5x#RcrPQHPW6sf~Szvt=b4(U95*Xe#-uCP*43ZDE6|R zG{cH6Q>Q;fuDId=YYAO$5xP`$m7q%lx>RS9&@I?oj1;kFQ^cN)Zm@oCD|C4hba|5E zaRK3B(ieH(BB^ELBh0~2`py4m@7v>}sLuY+?Ci|$CV>Pd2>}s8W;cWgh+QFG`nDTk zqu3kPg4!#(f|vHKSc{ilH%w-^cquwU(E2JE614WU*d;{U_iZV8U`N6KHXY9SdV}OeoPz$q*9+>H(gqtxe0_)PHRO(7e;arRJRQ{!a2tsC zazS^uP7KL%h3M5wlv2>uxfed&Uhr-M>Q0=PpGBxm!5VEJ^VUh{8_tBz$Jy{B(fRv#4b=HD()oeqh#4>@ z>2B!knb6&MZ;Dt2{-~-Iw2FE`c{YMG%ms`q_xP{d13d>hfxe6Wqk|cSM*0i>|Ml1h zxsoZ+rRF_rtb2Z8-oth2*I4xB%W%&+>mKN7-p>=}JzOW>$fB=a$rR{z-p_^BJ=dA{ z@LDqHb^n#P2m00=3;f9YdED%W>)RVx^iNlyAM2hAt$VIB?=kHN&O^Kc_rNZh{lKr_ z{lv|FxIJ18`m8`d);$-R_xP`mlg_3%UhuDoBW_=Toa1M3=G$|}alRgOTyd{j{mOB* z>J8)pw;xw$?>dgS7P3pWlw_DehQnOUAAFld9JPU7U|^N!8E3KK;B|b{dfbz0p?k+jfJOF&2C|;$z}D&dXD}Wbl6pcrFmS zGmf}3#&r$p48nzAH@}-Yh`uA=fc<`YiMXuAp)|sdMGnG_L4LP(z=q)pT?!ipTZYdM z@p%}&o=$eGwV0mohbQ9Gr2YCYL)w}gzrW0?<*-?EQCkcBMs+@F)upgeuvzfy;FrOF zgZ)8Yq3d_?c}I@zWN{X3P044Ne}fP9_x$7H%skkbr;dy2hU40)=l6=I=JjfGpX$}T z8z8sm9}_F{j%k%o9n*Xpj%gL=zpGW{y(?Bd^{$ckT(5E`_Mto1!$(D)XVwPTnx!S7 zdp*TsHFQ8V@)C%iZ{XKI}*y&R9cjUEUi) z^sEi=Z!ZyyyRmQPv*`P3yo>sGmoVe*$@u>)!N`M+IP0^b|7LujJO#CQiv?r-*%&K6 zQLNS{Mt_RBo&0YKq43p((Vt!|gf`}nkDh&&5Z!QfZFIvo=$%Wos&~GkRxVXSva=vm zHa;)f{axk{U4xIoqTSDOc?eAv-FSblJ9_XL$ik!e_#p2x{50eg@0AeCxLD}&gP2np zwAM`&-yuwNBJd#1+4E7{1M3)^-Kr#kFfy*sUb*lRpXHTY%jX zV7CO=EzDUvY&Ue%>{^Ol#Yq=>U=tQLCG8+^>TbwK9B%U9X#3;*>y(khaY4uF3hn(h zZ4Ca4;2mBu?uUnP)&j5P*P1=W+71u&{^0=Ljg5Ppur>F+&TWnMAZ*R_H~Z|yf<`dh%xGkHAat-}ib;~ z|BZb?=ak@CjrqGnxMv0KcbGN9@U66SR>Q}ldzbQiqAy>Fdz#^QqaUv4;T`s$FyT^?($8w%j~SaR zMcWE)4*(DH%0aZ5xbc3tEm#3tuoSd|{wG`Dh5jddP__3sw+FLf3+9q72tb$i=}hv0 z`*dl5e+M5k5qzL|YpLFVuSs!U1&^Wz!{kvt$)9JUP7HpK2e#Z(0)MC5^nHjQ?|Y}u zKTpyBcgv21{>MA1@f_*-BbNSW0Tupy=w8g1P3QN)40}-weku`X>Lq@;D`0G13b{rt z?I?78A6zMM1BVN7L((omZ}+!L-$C4Do3lQ+AVb5RK>)kpf{eK!V=m-#PO^4+ z;Il>7z!o;0b6op@$Rg(hLOpgL9vO^%?Tit~jgIFu^#q)kqpsZy)ZBpnu1 z`GC+QcM7U2E;PATV;|TG>>FE(ePbm;lSdNNyu;WhRziNLsOGogS}!*7YrBZEbn#no zHt}n%Qys_KolX4O?o`L~cBzS9YbCXiw@Xd9(s~)$3CqVCa(_JRj0`&?!_LTvk7UG0 z5_pO4nO7?g!H;+e{=`1`747gZt_4jl1${06ttKEw7DUy1$e~tFKt5GhRIK@M8`3AA zcn7THz|`PO1nhx?&C_PqJH)D5hlX>wwTgCh0Gp@Q!ViJX!+MN(YCY3VttH#?D)NP> z>lZ|P|3{W&W`N!4FAw7O5y-c;DNpdJ*(}Tb(-rHRtuHIltYByoZFmhopMJM->-H z$a_f0d*JMfdJ*kn>bfFmj$9u;Y4U9fUspjaig>LtOm(>IYhn;IRA-Bn6wXhytKMOUnr^BE13W^lK+-#@0 z$yf4m_Hh0@hf+X$!Wh-iImDojaaLo`8m;e`aF~1R`1xN~5iH%~mma0FVnSbh$k{FH z@51+Th&VesGg$+VJ84< z06A{J%l`|10e0xkQ0WRm4BqbOE?9k(;DT%;Pr4m)vy1Ys5^S8LVZLGGa0W%YQ>?Cc zYBDbBy(8_vJJ#b&>i>p3r3wEj?%e?cGM zH-IkI`13dqTKr_aOZYXh3APo_02Tpw(v|a@)&95s?QNZP|7GY)b;Q`LExvvg;@^wu zef4dJU&nX-@AN+Vw&uH*7`pEwdiOVt+1C807Y%(y2Y<#_{(HO={)_yX`JMZ)W;c#M z6WrBc=&S#nd}e<0r_uKB{F&9SUx#P#o^|xSbVuCK4_wcmSrPml`u%+J8Q)V^qAn)N zpDEe&3Vg3-{)}(k#klWb{!IM7br>g@c!p{Wv`QWC{smnS2PW1PCUq0t_k0QS!Rw)* zM|n*Ktv#6Q?*ZiD1Uv(oFwdyq@BV~N=v!w@$<6U~74QR(<6mxe8d5pEOBy<5ufTPZ z&k0>ul+Ztj_rv%Non+FK$C-ddG-;_RVz2=^7He@Gcz??@>21?rK#qW~e>AYhfCD@e zxIyzZus;yixkZk&4nJR9Ov&w+6_ve1>gr}FwDtW~0Z%E{}C znkDcF^m8zXdw|2{_!Np05I-WOhAcD>A`4jSH+6ZcERYVgbUD$*)P=yq1KScV(So`_ za~!JMo!7lZI)XXFo(YT@+0<*$xR-ZvxDA5&@~(*?*5y>>C6K{5Y8LR{ZHOzjNJZ$& zVZyqcg_iFw>cgi)w&SCl_}m*WF!71o@aeu=dY$`4z&mt{gmpE*c2C?1|HVP?UIcv5 z;ehK-X5 z?mg)6cf_IR0}Syrt{Ahp%Yj@j{A%RRP!Gm=k&lnKjn8Y~uhchmJ?1D(dS^f`B!yp- z<0}~7AEB`-QSY_Yf?*!(zUScE2HrVmj$h8Yi@V;YIY_|OeWc?Ec=hN&Ja)3~?>vur zoc>0VkIOAS#`?HgMSNTj8-wqaseBAMX1vbywNyS%^6urkK|9P1&hj#(0KNy3IQHQs z{yv4LfP-|5o}u(kvpqJvhx`ohHp*9HU&uUTWKM|4)py7mbU?53{zl zr8|waZTtOoM_Aj;cg7=c^}A>XzVA5iTgKWOuJfOJ6uE+f@0F2Zw@cz-i*e#}@qsg3t{#V@;zwa<6){x14!$XNThWAOf9XH)x|`TGsV+ACz< z-=r_^LLZ+r`+GQMto_r6d4E^@XC3}8A4z}1)6dSMDfIjKDCt)*0{T7nPtq?wJU*sv zNXT3YK0h8MJ|!c-=ZF6!K93HMPg?nE9wk0F4+uUG>BRK%b>BaU&qK!bM^SH!x|p@l zx$7dm{xeW(fOk|G?w($MFry^FJ10QP+V%0hDKjvVKeonVjUP5szy_0%j~x>S*tF2((hn)!aeBF*=s4@XT& zVIk^PdH^@xCnz8$Ex|rR^y%F1s)=ts75BZ$eV?k+ur6~g_Oq@pLQRYlHHN5d4$nUcz1QAL|Nx%-FLovTyat@PZ(#2Vm@$Q zBw}6c({#H-x4h~UXP)OqJ_YYHbBV_DS5TW^tOXC@`Oqychj`w~aouI>j%!tQSfjvt zzI&1o{qd`;`(6jPH_;Ehz`D0Mjwx&1u&Zve_s7JR^@Y($M?h)78aKv+|64-&JVma2 z)4w2wcZWTR`9uAau9tKdOUHTayKy?r<*Q1U&ivO$1fxqwez}W9kLWyKZsw9rJE1JI z?pbEtbG>bwbg7qJ4`91I{edym;Uu@n7KWBsVStB?fH9W}U%J`qw6I+5fM@g17_@zo$ z3Ac+%m(RKet*dTbC93^lM*MIu-K$mBJE(3GeqcbWtabR0AP?P%XAfiE(6`cs=k++& z8fhOMUE2lxb{L(yU_>N3kIQ8&E#)<7SsgQiF}orH#^>{)lpy~v0an!0cCYL#R)L4I zG{XF=0oO9DGpqpo#1mG{53l!G(E@yi=M}{26`&hzC-H$$(Z>hjjUxPb^6%+Aqj)DD z-qm#za*^Adcqf|!GK=da$hpvUF>+RPJrjAWZOHY^qO%HcolG$bt{&9>Y;$P8cuNrX z{8`ZU{0=!~)Db_3y!BnkTdybC1V0K+

l|3O?od%oP9&KGpajCu%q# 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 z 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%0DJ&>l>S=W-;VpWc-HO0SdaUy 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

C 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%0Am8U+r)LGnZr*WvLVTK=Z-@WR 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

uB7+;ZsHoc_Yz@}vv)VPGEy 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%0D>5{fXR))vw*}DBHe}c`>T}+?mvNNZ z&>GL6D>sI3zhP<4|LN>gmvJAHKChr%`jIms%ea<4JK)k~S3zr1hu@ggVQq71Be|U1 z_C==C%aq(XH>Xa=-(?=ipKGRI22Pc6+=A-yVl>-d^K}b=bB6^VCC1GC%ZnIC zcmCfFPOJkTuxDO=4ccYy#K$n_A?63$p!Z_zRN7=5inXeY{+=;Va)GM>dkPy!+ePS5 zeYKn;z9DgJ+bR#?y%X_ zP|Exz(D6FpMjxqNL_P`YEB-Ks(zg#F^uwUn}DJV(W|kr1AGdKk$TGXoJ2Q7<-=dL%hE?bYcle;5j!uFeV!;Cg z4=_H~u#D0{KW;9u{U-Z{@V9rYfl|nRsed5<+y+`F({>+Y99zS8cs{{`Dk=sg14OueAQp)-b8`&JS%}Vz4q)8}Ob$H%3uqRZ&;G*i;pDqg!0B8pI>5>=m|T7XW1&e3!aV6qFLWs zbg21v!#{7LtsBAFUooG@xu+zq1NI&8fGYZ!0&m)b{vV-zk@0VPCD&PSyfXf=@RiIn z);d)54SQgKGjST@+d+Hi1*N>hJ~K!13iu`}aQO7fo#-s+61n^WhwR;SB%d)~dzz_5`u2~~3b|_tdc9d(LCBb#M_M_kV+o=z{ zQS?hqk#mB{>2vk`1o0UCDs6W5`3CDwyY)Y24aDZ4ehWN6^mpkO`c^Gh;Zu2lHm}OS zaw*U1Uj>(|(A}_wThQ};$g=om=BYdL01qyw6ksctGM}P1iwzc@QJ=kLG1v(7pfdZM2AVes*(I6MHK5@+lJFS1!+^R~dBTHx`!q1}xcpJ?nU zctjDoQoS?&rN&LPg`OZ|h7aiY4(=IqCm-;0-ME>1^npBhYkV?u3e4dRz}H*+6wDoc zir*wIbBDe%{{($M%zRKf=Fas~#27~!zQ8#k8M%xMm2XBecluJ~@|<&!LqjrrAkjH5 z+`DskcNcAG-N6SO_=GQ?V=vZq#e<1L#BesQal)W7)5BhLs0M~r@;(YdS zSJ_VAR`3(s$eUuFZiSxCVGM7=dm7;r(5SPO`uMyRdL#SA*?Zu1dbQe)A%R*?OEdzh_Q=W0&ccJN?i>>GHb9sbr1RlwwEM5qIcotrT{jl;z#(fj- ziEVZQ9zpSs;rXZF%s<7Z7TX6N+Q?q_abD$zmYk97x!A$H?#S>5gSBY{r>&W+8S@eS zlKU^^zYK5i!2_@vRQM=42fP>MH!ACX6x{~i5Wf{4DCdtP_PK4kXOkzW=V@o$JJl6xqz(?f_6N_9OcmR2*I*D$b7y~>z@n`IWKl;h< z6?>9466B_pZNVn-yEztG&S96mFdok1NXY)TF|^4!9g>SLZ3$0VDS2(=%~W4bT@Nwi zvB>!?J-l&TGi8lIR z({Qd%oOc=;nOpAdCiW|6F&~xt0CP(m%gq_YLFPLmM8}w((V90?);c z_I(6gG4e|&yf5eMD}1fmxtsBiBn~i|etgU;@qmHrMUHtb`QBQ|1kpwPR$)Z^-Q@5` zyn2}EI<#N9op%J5V)j6kGe6QNbELWV!E>z#I7dn5@($?w0bt^~tIjmW1Z?qXocG6j zYj)x5FDFi0L|*tKz<51)MZT0Z61dU5S1!%KD`%rs-@=( t(4;NzUfVTI_cJ3H_K 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%0AFx@k*$q*~;B3ZX8)Ncn#wPr-WhG~; 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

@m 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̿`^lK7(N%GjFrdH$yIvc?C+wwKq&BH}xv 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

6G*i(%Uh#ntG(N}od7@I{E~jLX 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 T>D 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�X00`IFdGP<}Q>1gbxoJH{W1Be0S{grpvik&*v3sbilb;itp$%$Y4! zXh;j~@EWW`RPI0;G3eqd*E8zatd%c^nf>g}jz?WgYU#&qzD}_N@Wix~uzXO(sU{E+ zn6CtpP9RNu+n(9XXfmu<9EH2h(~>0&@syu(Azo97zE*hS~}^x9h8{;~#?QR&gQ{o~MUlhslF*?V@K) z`W?**eFiSUNY@m-CXYvsdev^LhT51kK%c7y?F02JjH;luZcrTlli$UQ9DV}(maN&I zZX92>pjD|iUBx>DYT_Ph0$8AJfWDgToLbBgQ?jDNu&AjTH)5ssDCxyf&}Xi&zdrm4 z0?UP$FD3F6-y(Rze(~5%8+wrFCWp_12A#0aN(@m{&H^QZaVggV2z9A^Zfk*6LVnTI>lSV%E8QZ&o z%bZ)?rwJcz??7W1h{E*OnDYah=6d+5_J~}+W+M`x+a*5q8xzaKVVaUl#JPoYwakxy z{XgD&qj|b|0C`eLz>l4J>UB00O3l+!cIp)T6;JF~;|H4eVT|H{mtl%-iX$;M2!jSs zuJT!k%9SB4$f11yw?Rs5Aw?UBpZ1#*c8zcAd?vri>}Hmb>jlkcei!W>$Q=w|2en_V zGFRuiLeEcFNP8oZ#J^!@1mP6d97Xdk2dRF!LpPylTaznJxI90pG;X7OLstFl3gK=g zP;s>`F64z1RcXIwnQ)mh7BeZOl+zW%ny`r`ZDuGye|4*s9{Q7g3E-nR3Gl^r*n3~h zNUj1?x_*p0E-4=icv5K0eY$+KoWKvRF9eY2#NswFwgS6ZtQ)AM$o^&cb@V&BcXtX@ zontg~{yn3&!qbq(73ljmpdRjbhbK!NdbDvj4MyxcfnflAlii|eCr1#K3>elpUivd8 z+4}gLVYquhI4GC-!|B`~mfv>%z|*q?^P^{r{%zh9NtMr&+rf#Roq_`d4akJtXB67Q zaF&JTDD^}EtXa!%@f*uOrXW`z<386y;Gy;J1dy(ey|SX3Wfs_c3)9%Znz^y zgk)eW@Mvm=&FZSn7k^*@c0kEosEpK}!5-=<7PHJLA7;|aI4^^eMc7-`d?nUvYSM}| zYhz<+0O{K)3oB?0jA{T%O=B#zhHHgZp7fV%OWGv?HusX?`%T5kR;jh8t}j9ZZNA<*73NeWz~GWr{`188Km_}Jk?6OxbR^Z z3)=(y)Z!;a5cQVSHng|VwB!@>m5ifIj^{2#mm)OYGn1jGV@^7PnYu+>>-m}NuQ)GT zq)rp|M9rN<*PZyL;b+4yXQ2uYL8dFV6#IH^RY;BPnjDl4w9HEb`BPw|HcUu+0PZkx zdy2M67qiWdR2#Fye?W?k!m;?$lHgKPI}sNm3O|&LtiuyYqKp9%L@L_*6k}7yy-0oR zGxv5&+r&%NC~Ot1R*TkEm;G&qP^*v2EMf*tTukwr$(l z*tWB=ZQC1e?A-I|y}zKJndzynYRqiAeEl?gB3)JK1NJRhlSY=jyT7t3Z|Jmin6i9z z$tH@O)=QJ9Wn|=XZLaVxwx;_VVn3t6tFH5Aq6eVsb=V%*O6P( zLrs3WYM3ID$^LJ6_!!^^2s}CeZuz?goWu8lDE>qCaDp@f<*GX%iN_=Y(2no3qvzGB z=@0)$@tbL4rimqxwd7nGtru@}v@DXM69t~|**;iu-%K|vacD+yw3vpg6bP!$M;2L# zzKWPvOyC#5Jk#GgN27i&<|7}9qHzjvj^^xNie55jExpo?GI8@}8woTnJ)#Q{+!no1 z(qC>fa)?2J51WhcBceg3J6M!uZo#w0wR5IW&eVUR*M17|yO7ica|rHbh(A_e#A!?kT;e4&Uymvgm9$rHWRVQ~EpXm8b5XkQ4Mj1A z9{qZrQ9`$Yz(+%*J`p|g3WCeFm0<-KTJH#hWhN2#=iFy(E>Q!^sR{1t`R76`x{GMXJxZ(P=g zPbX3BkHy;}O?Ig-pq^0hi09EsQFx`#*s&eDhNm}1s;WdhS5{q2Y<;(sI;h@=q~`Z< zpJV)-7uHmJ!;7*YSC@m*-$1>YlEdcbEPNcmbUmjbxZs+AdRBQLQ8}L&>YXS# ztLYzsZ5X-UeoJ4QxLv8rt;aTRLMJ>^!cG>LyJH`S@jn7G!yWMu!aW}}aL3J>@1U8s z?DNi&_()+1+^CKXfnh9kJ<|Qh9tU`UIESaIe?s1(%^{=7Wift2+UD--3)(eAdu;5W z;Ol5w@#*EC#9);@Ppj?OhTFm@PZmlE17JpuEv5erkySie| zy>o)_1mHEIkWPU;9#CAiGu&^P@x#@+YKYepciRPf*zQ5}>VY>dqNw=tA}VlIw5g5a zJtK^%_Al=+j8(i74^8}jQ`-T4r`~_=^Y^a4(i;PvxFaMiDD|n0qh FBP#?eHoJ4Djn7O2<}4WN z6-)I&=fC|^b6~y__*y~5a4DSB$@c2>;pbY^E_qpVTi!Z#obvYncAF{^QU`3=iNTo!uK3#@CzpaFZCE zkBTC(x>$vOVQ+bz=999gNdNWNx;(X3MlYa{2zW68lbV@=kwDbU1s<(hH`sk-3+1~E zH0eYLnjTfSfBxg6X|*dAw_@NL^Och0o1%!@$B!KV;B~lYnV%c&a~e?+drI43(TlEQ zMV=`wJ~l-L1*+i|Ngx)&`cKBmfzBGo(hI)LF`9bV#FGIZ>fJ4|i4OFXYIxk(Cz*e$ zz7iIk6BniUve}8tx^+cEuuw+SDGd4j|NHE=usP%wH*>BGQs8BIp+;xWE$=#9C$( zW=HkUMq@ILJ*R)m18@g-qOJ4>^%Xa|YR!IlA7eO*@rTcmd4heltn>3`Rt2Us+&w(L z9JZ#2yw=D|8x(`Ep6Ka&bM(KJ z$KMHQLDo+QAar}e=ac@sHZ6?byy2*9?X3uw?Q4~@^rvIv2eP!Q--Ovl_SGaJ$)$~b zEG*mkl?UZmT=A4Lt2$_YNS#@jh1}tv2JsxQLACqS4&Wi&PAp=l@Ke)Vijo>qk8MW{ zRPs?S9pXSRD0Dayg@aJY<9h)^F=dfA2iJR0%)-ba7uu5LWVX6xtv+Bt-ib%p&}y6< zc@s8g`L1P1yeFm3iqZjX4z;as3*u`Jtq6d4>Yi7mHd+e0ak!oMCV{#=o4ef_G04(P zh2q(6cD zp^xSAPG?Rdunlb8jwK9gA>6nH5Et&oHX_9%uC2j$)5zNCWERZYU(&N+G;_vt1vUCsS}>itMl*O^_PPJLJ~;y=t_aUO z9^;AgIwYd0o{y}iLIUWynVGe*02Z!==WOS05ZTq=^Y|2dB>hP%Bct$BJU(nQAr_P{ zu+rk8O*Le&n%CVRG(R0<#0o)NNjy)Zrm-tHDNcEnm@I~>e;T5WI;%Qk@g#t_h^}D# znS!nh%{j3EcIcl}^7;j_C!-LUa8`i+C~QFvInDEpl8Zk~!<ag}J1XI7M8Ny44+3n}08OYM_AxUql?@2nA6I z1k4#VQu5{6mfGRgaz5LS#HoGv77eIjG9;n0A4>`em2(5&2e(4< zgHJKchREv~sM9w;5*5T`hkcNs_R{vk20>+Ra<#cFegkgdSS5dyhDNW;kT16vBABTS zd5Abw&nqNz;EnkSzD%tT2^hN}jB;uew?|d@indL?W?d1cf0uaJ0Pvs~gSjicA!uEk z&cL-k^Nce*B`DRwLUKdW*I;2-IEpY~l`NzghkYX+HY5zM@CCc-J_bc-leqwfSc2l% z)dY8udXzpP4VeY4ck`#TnfGwSjkX^+QX9xz^7MNgcnFZM3dT)z#1k5=&~wW6URd?~ z)scE0Aq855=ibaLTb%FbXxR5ftNv`f=^w-you)m4!XYD$)$Z8zx@~%AymM)n{H6X$ z;*)dC+pZt__1QYMIgG3ckD+4Y#*#5jqgXHs$SaG9(xPXn+cTXJqWiZgZwIVFG~Ey$ z9tdnH$D{W=+%wFFIjMKkj5K0#ahNlX!NRQF_wbe8KRfmahpOfVKgf(jr}s|xkWB)S z%3b$OaygLyS0y>Z`>?iFs~vIXsX!YC>>D<0t>nLo9sHyS^Xt%YNam?PQ}wTf4?Z8p^?CI@R9VfL3YF zfqfjHx4{t)2QV;atYSFe^X}QBY~SgFzH~unWXRF{+;_;$QDxKLVnW<|Zts?Gtpm>` z;6;T~j47G=rd3Qg(vfTm_AmoM%oLC+KztD>XU&)&H+I6LQYG2ZOyfEq;tkQZ0d_Df zIN2FKSZm7#1e0P>SWaJ<8sWqeqV5k$crmR<_qB3z@C8g8E<`Oj% z<4Nkp1*2|}5=}}fH3}GbkYRMOoFY)}{P`Cz(?<=KqFrl%zis#oO-t5TMp7-2ka_j4 z!n~UGII0v18Q4&%94KNsSZXJI?FK^AkwEr2n^&ppplUNw6cX*k&6}k=tw(_< zss5b63ap4t*>6$S;0Rp1)ttI(x}TjJLXbG2XkuTgDXwc`r2k0{|6PZlqN z+)&YyR{sv+4wIfcaWs*z%z@VrQJ5<=`P;49h0M~ocd?X*?U6#pClDa>6Q1DV`uE6AwL(s zX?T8AEu@524(U|&eKmus0Pt(2uH_&qyBG2eV5@i?cIIb4itw#P;~ck`0S1bWkp{HZ z(>V_Y-hlk7$1}fDNpF~h>_`_>45qOIE8>KA6Miu`=SD>VgwLWkfv#A&}x*$Er*l& zS0S)gqVAiyk(NuPAKPxjW-pbj!2mrckZT8$#P)xdGaudJK%>Bz0nU(~xjs!lBc+-du(csrA_ z7j>l?BPdE(^p|Weq?kBTNrv(vHg3erNXlNk?HfH7!_0Hdj9JoV8$y`U`B2DVro&+N zu(Y8?mC^EWn|BmYQ<T z5jSG1%t3$0QYJS8=blvz1d70xb~MO?iapH!fpx3zwEE^= zO(SkW_T+?-uz7=SR6!XkuscpTFGUK-MB9}Ga_E&Q39m6K`R6V^JXH8ozGlKGqR$ORgJHTA74XQ> z_6NP*Ky*)j^HzN5EWb=f(G=(&!sn#Img{&v6lJgO?ciSu1+6st>C0)wxB>VE^=bt9 zK=emc{rbp8x%BD<$#NP4ip+*rI>NDtfGyD1y9%s*N0=gYCOQzWHawIT%LL zr98yL@7tGK@C*CB~H3@X5Tcdmqc~%r5a!i8qv|cQu65%b6RJpk}_9)-a0dnY+4xZW+Sa z9}odigg>HK)au>ts0@49j3z?Pa_N7r(We1%8wNR8&?GH<17(P^*Kp^?u}@qvb(Ap< zo5%8{?VcD1Rr8i*t(+!%I~r2J35|#ygJ+3Ro$)e!2=7(l5jgpYt<$8V`oI4Z1Ph(S ztyA~HNq1GpR#*&jOz0j(O-Y+M0Xn$F?}=S-pefjVK3elR-ND*-C8G?_m&>2port#c zIvry56r|?KU8tHuwiLz9;SLMsJa`p9O)W zi^czs81CL)HwyV$*#ICPvPZfyeAnE$A0wO1;?}3ID&c0izrJd!5@aaQhpiaU=YeWLzcs#)mqFR4MR2<*~z$->@1>17)ui65wA7PDk%LW7NQ`T=H9qX;xdVv{(Jw zca}O|?&IqRfCorM7n_npwLHO_c*2UNtq7H0AzR*4c(2aPR>r$yyTgkykF?0@2+uIX z(P12O+K9N9&C?SDMx_-0sLx;NoTGv%E2#S`et+-v!L>^=XwqGWA^yIPa}tJUPh_`F zJ_FcUmLP`obAxDw?;q_8ep^Ctt#Ro$hvx`AmfX zHbirz*qp@(mf~yz=Q1X5QrR6GBpJQ z-R8u&Qy4=&?z-tZt>wL$gU;UU=7II=8$>(-!pV2v8X_9P5_tOs`l*ILMXA&^rg(CN zbmv<@=<-L}jV*93ody1*tLdLDL~gE2O~xrNE4j~Ge*wJeai=u##HyLk@h!`cGp2T3 zGqpVQ0*yhvo=V_o;~8!AwqPTO3vq}80;hT| z;I+rmtZFRJ%o7hsYjxBWU|Hx(ZYVn*cadLZMPxpE<|s8XQt z;^dwxTfdSvFg6VXDl4-Oazud~MSw3B=rC*3XCUOD!WBz?2z9XNRLP$oB&{)N!*JNa zP7Wj_V}YP$weCcd9xMmc=fq-522NKv`*&>FMDKDB|H4|lxCg9RcGF+z(cv+x)ocda zo1Ow~g|P{arSd9OK}g%`wTEU>flSq@u?DX5976fd_l$?kpYicO+@mnyB{5>Q2B)^y zzuKHA(GwKd0P@Orly5-ewG#y=QC=+Hm8CntvJzPX2*z--r zAL>4-?U>-++Mk|y$$&k#!QZn@U#116N0;UCe6BL{|7jH!pS*3I*YVkB!Gxk_mjRV` zv@QVRf@5eF5t4WhQ0W=VtwPM6s#P4h@2;NfrWZ+};K`Ds>T%`PK$LorU?+qDY!1?&S z1lbKlj8^VM8O$D&$g^CW2KVFM#3bb|I2v?clc+opD>A2Ve0x>0zK9bKXq0>*9!ovF5iCWnVqsYcrnWcHbINgA-l7Hr_yK}*o;y&^`t=VV9;#(q z1><${_;QA>GAoFS z=WKz|6t?bd2ftzBaDcX_ZS=ZG<9~IlJBsi_Q2>ws8VWZfLz}fbIN=mP&t`E}cHQZr z8@QL}H8>&tH(V$DBD?1(iMHW5xk;jM+2RHzMaCl7OJ?xyU1e6QLQmC2s2+$M$WMuO%q zw%J%lbo1&91-{{{36}$D0QYCageX~{v!1T5<{LW`)dtC!*njWaISAA_&Sq)3>Rv@S zV;?@dl+TNSPq!EA1q5SB6z(1})PuO0>MIFf6` z3jv|;jl+{>u>imie$vS7fEbiSw%NWTI{WU?Fm48dWN~p@>gHN~(!>4@518gY_ie3~ zO#~uMS2<|HxS|Xb$Y<+z>ne@Xg($J!M#NHl@#5lKP9U+#C?x603KUQVuGR;6%}ckv zeM_|i?9Arq4(k)lvrd1te3FrF$DbFLogBZ_y;XFFIvmQFi;sB7uc{-ut6yNueRo*m zB9*tp;D-9TN^KYuK3ZQNOw|1|xNF@$(XjzZ&&)At?EG_2IvLK zSL0#~+k8s}(Xhc&LJvtf+Z|fybIFABTgqc9>^D>ty_9+l z0o=jPE^O?NYJT5LGTN6`YCX%x%m*tkC14R}m*Ey&mY*4dBt&>$!#qHqocQvTwVHOm zN8dbitF7Q#`@pA#(gQ60zYoF1VRRD}e`B%=6VUe3W-xDP#Mbm?BLwvavw+9?+tfx) z`X%aFP%QcsK=&^YG|m~K1nliimR)}4;r9?QD_VEY_6i)u0eIpmHkGgtCUcFjpR(S$ zv}zE>8V1oq!Bz6erh4h)!5qG(R*}h47)pDs^)WRFLnF3{BvQ*g1-geIqk1+FX~|Au z_uVBF>+tvMJ6#&+*1rjv!ZE`x^yUb}WC>|1u@*ocR%fW1TPeEAAtBN^uAT*Pn)2vs zVqP4sQ~Ssi=M68?N`gwS%Sxe<_v=r)oj3Id4EKtVdI{2)!vVb7{=7*BOu2V7@poO| z_^F6nk^D>NL-&Y{xxE|k#DD!%knu&>fIRs(pSGvKWbVNVwj{QSnJEZNsEl#nG_r8f z@8x*?Q4yh&-hP7eg~wRxuzH!$9DY=+LY82!#`yPHj}Dp%98EgdnON3oSC&WCy%Pk7 z)_{GGD|WZp2eUk}?jNk&Lver(PDzI;y4=E1N@d2!)L12F*#j!?n|};H1gh**d7D&@*?z{h2Xkd+Y{$wp>i=Rum;-Oc$04w* zXU|85r2+J*JU7iW7*&mG?+nBI3v1NhM=ZHa$eq6Jo=VFbXAZ&p2@yjHsLdOCscVVq z?qPor7><}Wt|Q^yVpM$Q^0znEPnkwG;of3LjJ4dNTb8$$;7B6T$Ts08g7c=n9_$r> zos*xl{|=gTQ0mu}@a1H>ue$2u>^O{-QMfyQl81V?l0~GU;o1n!7fNn~8oG`ImImcP zdd0<&06C43OI!+0@K<=Gar|E#Q^pnJf7ve&^v$&REoZ*orpPx^${k3`0KZ1wm>=F? zXO3M;ZCI-ua;W}S^;qkdW)v%)O?fF>9`YnmM-nAqtFcDbL1tX@pah&hCt#yQD8D^Z z5vB0=#fVv&BJEe04nyFQN8hAmv3k^juIhrcoUbh{ky@RpW;p(=FW z$3Pad=aK~~x-jT5SvE@dR4ARRfixabD}B?E9qeMIdFwb~ZJn^rP3zk&9iV&b^W+X2K;5B-Wi)y~)T^+3=+YCmR_9iIy z!PJ*wZq?F%)3LLwV%|spu**ex2bG9H-a`ahM&JfWW>hXZ@6~>TCT7gSam=&caVLPc z)t@03tIOwUK=NqL@>a;@-B4SW9oc{i(g1XpNhSsvo?QKA_7Ds=t`1fEonZ!NPBjwh zULu5k@3e4NxC6&RSZ%Vca_I}*OoRc#+yXDFQ03E*uW53}t`2j^QRih8EP9`E^ZpQr z&0ha@fr1~MCY^Xz$_7lbGz1k}{byT&20}TgiR1WW$-WLbIl8vca&fPX8^K zQl>3}hsp@L3=%04Eid!a?MFcG^$NEm)XM6`mGq^(@ue;bkLj7`wf{sNY(s!}wWd)3 z#DxPRs~^qO8Ulo<`W^-L^<*hb1s^%;^{m;|vJ=|!gFoH1I6xDK))~RgWKMfj12C~W zE$~tvpq%`NyyKHG{kjcmlQV~X?$+Vqk?@5px-()uX7y}_Sg_QpTP2%3IDq{1U3yR! zU4!~`6MU@75h;vMTIHTVEVs|bQnhKC5_JzYr7s#fMCpk5@QrCsw zrt0EnpsOsn%=8EJO{zNdx82)rE6Ryhy2J#L18h5IaT2Ht_6wB}p=V5Fnm>N&E2S|Ek{RLm4^S>{INK75a+7!}yN1(#G?vC+g@8vBp^H{XY z_>t-LPliSB-dZ!+4=EM=rVF2f&ML}et#~}JMY}&D8`f$!0 z6Y(Q5@QdO8js=+F+@V(QFKT5GOtqI9s4>o zXL0#6g6npKP|q}8Nj3w`O%w6@Qs}jk`SkzsngZNfa|h&fC2a1Ky>6GC2*Q$Z+1eTl z*>Ypq&F6KJnQ>+wz4I@dFGb&wRNt8q!s0ZpjwdUPCHGajemtMb4_YI99vft7D9^U> zWN@9zTNpeg_7C9!;WgnJ!I1t3V6GYs;?7OZsRKodj>Ah?p?WZU3_G~uGe|b7OV5Mj zLT?a+F7rbKXvcfq_sIHRWFV|xxxxGCl55bGssz3-)GGQF;{YVO#qLqc_*97uD*tO^ zC1ulp?;v12ygO!sTE<4 zIHwJ@2NfP8;GX{6t>3tx4$*@REQ z;Mvv37#M>&X_NdS*7O^a|9dk$rtx66)91xE4J`z1_THdl8|bnhbk& zg=CA`U!6gT5qiiD{M?CP|8O3zwntK#k+*Maw$ugmuC=Fx8)@>990TqtsOYeNFSx=~ z=DiY7CW|)s$CDmb&XxE^A+=3RGC!z58PYDeL0;%+&+zI7ym}jaV)0hfYxWJIa=+qH zm#yeree<#hKH>QJg@+Fh%FzbVnm}ncZA!>@mO-##Y+w#x-_F$DL1)^tUEYtu>r=<%El+5C}Qh_3z{0vk$tbtyk;If5C$4p+=I9nNvrmW^BZ_a9sP_-KLHt zexYzO%pIT=X1+I5Uio7XPBxJ_E*i=nc)vcu0_qr%gWC%1!cue3jCOIR;rxC-%PG@C z=0$Z(LuxsG8IsycuHksj>vtX}C$X$tN)M2gsLA;&W0K`TY}qU6Qk{saRAzr$TSNc+ zBhERf9Gp-{MUy zcNP+TSfcP_V}&liNm(;=0C=tV_n+=)tD_q+4_=X`Q+n{f0Z40c^*df=A-(+Ccc>Bq zok!75vGEdr8gZa>CsUFtbfQ5X1=HfHRsHq-W~txVG*su zIr)ef3?2<4BG4Y4&8N7&le-QULDu101BNRqxxe8PicC1O=G6K(!jpCS+e`Kl8Cm4~O4Kwg$d4=K-n+^{TYRbI-nYGn&E$0XoUGYkkD}^IK%u(AIUR z>?@5nVe+b{^Z_+*k1rZe<_9Ej#WmE7PUGkjE!Kh(W9t6mD75eMLbHNI09}&NA2@F( z$2SB%XzTd&@Cf;jc-$8&c*yt(wJTT=I^F~*xFpKYw!W#eLNa02#tWTSnG2Mcjl>wY z9>&jy`**n9g`x-gO`rU!MEApanPr8p^sBqd_%3<#3eEMsD}$4k^U9E(u^cx{t7K!de=OG}*FN0FH%qLeG< z)b!z|>fk=!)>y@d@XHW%Uu!jJUlF)MP#bp87oxmYpHG(T_nmE-Z02J{LhaqOgvGJ4r^ zCS|$`Cnm>zdJEW(E1|gi^L;K&4Ur-H+EYO=6B9?Epv6<$F+=rVmBGDcnWkuCXU<7< zCu83&(9g}N4%AhiTFgch@ks!7p!)9$TntgJu~J21|1IHZS~_DBx{f7?w$vBommdzy z63pMn-7LpCC>RS{Z;>#A-BhM3agWIiRU_}7Z&j3LVL1igTq*QMM1{lY9O&QfG+)&MA|$ocPp zG$s?sH1c2BkR+tWB9o^Z8pms~3&=wHGDCfH*g|%WjAi z@Q~@?(j|2@bZ$a?(M*NB2~Jf*E|;I~JA&g*<5nzyy>s-Y==^5CSB>#lS|<@T3WczJ zANS;#JSEd820vID?Zhny0XeSvD(#P$^hy*xM}jJ4&Le{&h6&L1w&!f!gO;5|AQ%74 zNb0IxLMTy-M94f`8^LgpcHvkNRMU+k%US)(oGR} zr}LmEUTKvYvIZ{w9|}BNHZ{2wu5}+Mcz|D{i(g!{%@dKW&MtCal=^hUv7jK9IKRj~ z9gRQztC@KkOZG6>)TkMsXOLzhKBR|$L+4~I{#z zYxo!F4T!5yI-ok6r^_fuI38vUiw@iH28t1pnr(ZUmh`KeVZtXDl&Il0Th6ZAaOoX2 z*CfPD^a_goR0VraKs;TIXd)8GEY@YS2bn5%VO=$XxsXJ16#_X|P5F{TeaJ_2)6Q39 z`mOm-Hact6W);Y`znCvySRTtiZ3qG0ZDgypOTlnn1L* zxoL}dU>7ia_GA9+GGh%?%@yu;48?mc3U#8ES3|2)bd46T*o0)5q6h6(<2dU3#+8F# z06a*e_%h=fF)21X7v=@C?5J`N2^VHLCfT3usU1IQ(&<9c*?(5gO%-yOI-o}d4TrIY zk^r3#8G=_!rRqUngQzKL!Is0bJ3!$GyBg(YGnDD*>#X*bLZB3kswM&r{{_$`hr|SL zL3SVW`~pqs8qqNmN?h0{!wt@>>>ou+p!3}O&vvEQ&RzGAQ7RR8wsao( znXb)v zafzjyem`uPVuJ2wyCc?dgS`@(aMiD-2R@BR3v2EDA$xwf;ZPK_14)og9Gd-5uxuVx z(n?zU5_&*I;{%b}w=bf4rR08txz&CxJedg$;i#KCc!2fbv!A^Q94?$nD;VMx-M4}j zcy8`8oWw5wGx^q2R7#JR9c!8tOXAj9qW)5?;VB{Le zl0|!?5BJt6b5LYvdW{CBl*}&4mU;jI3IV;^r4^$0r0l)6%jRnk@i_wr)P3Yzd7itf zavzalWj0_yLCf6f#Dryqgh(O?kVld))|QX6`~BNDh~dN=i&dE3cwI5>VhBWDQ7;&V za5#$~?(=H;lMSv+NV!gg2Nvq*KD(SAB-VN(DW?g+1D@m@eGHuh{Lcp=1(}1XXqfll zJu|R66KKLL=?m513le}|`>OXCW-?ItSDSDv-1Y(d(yyn;Tm zu`uKLSApOcAio3Bf8Ex6c_z%YNm-t88pDXcsZnZ%df`Z;)_v&xTHFusLxVon3a70% z<`%H6FNA8}lUCPS+S99ohBWe8c#9iRyx=049drGupAZd1h@L4e!Tgy)_a%^*Q*K;g z#R1TBUl0NpanSyS`$AS1KR|f}Fu<2JXLKg5`O04(vK!`DXEK?riO%a8?5x(VLm#LZ zjr=YZkVO_A1zrkE+rQEM{>6 z{I8HCQVDkOve7h=4+RM-6ton+s|s)4ILWAv96~Y2SHS#}^2fy}?|5YRNzl4T+K#); zRr&QRHgG31;95vJs(D^KDkyjB5lZE5CXbAjb)l)5{EDff!@C9^t^j|lHU95=TKb+> zMEd7`IGhv`_;>l#o&aS(f$Rn^cXtZW4eRo_oT zOoUHn_0=G?fYr!BbV)J0E2Ahu8|$QevFJnGOLHG-1@DyLlpS8Sx4-VIOdipjmM%m& z4a}frz-n#AU%^L#Wh`ns_(AQiejNk+O_qGt`PT=g%WFq!KyLoaiK>Ue(hP$J4QMPy zf3$#WqU+Qg_=fWF$-TCnW8zs2im^pin~vP$<&N2;Yhx?1p1KAcXfLNIs>sQK*JgK( z)8CB10v=qi1JLDbhI_wMK-_M>*xKR8-jK}x%Tk5Quz_^|G#HofoX^fijY5XQ1HB=N z>Vv|bi0YIdo}4NeON~{%B*wzxZ6Gv!@hMogQs-3MD*PhAY0uL2C%c4m90_C^19$oF zk=SV&@3Wkc3kQIQghH=)fd^`*bIXPui6$mhs!_T#lt(z|R49clGa=}bE=1*F7d7ls zw+E;;TIgLNT1lZq@vVU1IWRNF7wpT1*bK1RsL+3f!(yWs2yGmuB`knIf`>tJ)*D_B z^MYXk;@nbxwon<43jajO>o5k}#@iuf(|qUmTXp0$W%eQ#B<3)eizwVOrTy;%pF$nw z9|&Fk@mf!9JY(c0Jom@befh$i*1+!xoj?nBodPC??yQAqeO?05+*-b5-Il*kG5~+e z7rcBW@P>tVOtUKT%HxT02sCgP^9C~aqa&F@E!}G8&zybxmW}Hw0YA_}{gOsj9%*zy z2-o6wY$KDO`BxwX)n<8^Csk756b3AT__b@Kt)x4GM*1g7t@A^hr2ZA)2Of6M$#kzr z13$)Z`UdpKhJ&GN%vKl~iSUhbCT`gpaZFj%C?v*zPOhXJm0P*KzwgItY&adBcHgr2= zKh*OI4-6jp7p&-S@gK?RgC;yd-=3!q4bO0-%52Dy>qi(8G6_2U^tr41xVf~dqY;8d zh%@zC7jUG65pgaRxyePza0{~fBgmR$Z>xV=gd+eyAed{!)mu@cQFxZWN8_gwps5=; zoX07erYoA$GCP%>YloNuO*A1lSy{|0To{)CHFM&T)~OyLM&e)@ET9M#_b22}u&5i$ z?6l2q{RE~Nu7ncS9k2M%3gp0zO6q|I)VIlIar89%2)bsF>(PnMnfmbg#J+_f(WDG% zN<+-H4y8H{HQHA{_qPWVMl_EC^3gh#tdw_bp9am)G+XRfIr93SJ@S$(6vOl%jNTT1 z{b{M83a|xk75Y2v9^RnP4F$k!KUm-Mm+_RaVd@iNLhzApUQfqwwA3J?&R>ulb zz5#bmU3Ekn%YM|@aZgCV231SCjL2z>FpqCR9ZM6Nfe=|r1V;i9T+J06>KwUIeCClF z*Br<)s9cVpBQQw-UGI^N;}j(j3(KA2_pmJ)DEljOW?LP+Z!m`LZ?1Ve-{Bgf;-`!> z>yQlWvA!M26@>L9L8iPZYzOpxg8tD~2>>!Dkh zdgWG155TY8a8FmP{XDQMR&xB@>EqIjHS45sE^I(Yj{1D=GX=6+JpN+MSxpG9c)qML;QmDM1ciA$ zLAcZD3DP;vEBdXlXYYgy%h`m2}%E#$iWo%{) zOo~WEZJqKoH%9{=&b{&DFEUC@8K~$>2SUKmOE&cebB)tTL2H`|j-9X$`EiQi$9pe1 zTZ>_A+hlW<3H#PI^X1IEKA3jv)T;Au@a5Ce-ti}ZIf*6EXgU=XmHN9RB#1re{60g< z=Jnw>pV#+ZNCKBeYBC!E*j=Gm;H@W}9{Ug@DO9<2f@m)>PpN#U#*qBpMzTg+Xo;Nc zHZ^kA7El{QI?dvtT<~LArzEk@z9WmsdBFMDr&Mk!#~F0OJp#?nc3_h|R$UTES2> zg(X0Ouon^y02_CDrR;P58FXJMB?iZ4!W40{Pk>o%;_R)tiWT5`kD7EzvnGzCl`a2B zJJ31u(zz`9EqKSE{q1aV>GJ_tPq6Jvm@N#N=qAN~Bmb9Dj z)nM&Ui~S0@MdTWIfc0<-S{tg#tp~`JeB@mdYbhtqgz=3SZ|0nAce#sfefLamVg5K9 z;r=$;kNA_vUx+Lnq@`1AnXX#DX z1;!K?J{f>JsaiJQEH>G~GK+WzE;%r4&U6(1PmIy^ll`Prej_Kh84dPrMa`i2kul*D z^`BYrg2RfwHO*H67ANalQ?NeN&rS1_P2w1SR@AER)Gi`FcKMJO6_U%a7&-2a(W5N0(A2WaNT3=d`6XK^agH*1TZyF{GyO3`! zGDSccg5oA4aek-&_XC{r5NhY|?GB|&A8pw(XMslsTbQ;;$8oHq(UZX?Bx!)&o;lE= z`_*MA#0<4DbcLy8OSzBZIxs0WZ3Y_Jjw)Dmm9(*_C>VEPq6;pk4;thEoNpiF+v-*- zQ1h~Qc%47E%H%cA${9F%9?u00hBZZkzafTut8^bJ{Cwny`o~iMz^fKojEk8M`JEhg zUBIYTel|D@j+89@q>99O2AQk4?C;NV>)tK1+p$y&DIOP5K2bv(&S^{2qgsFU1>-$Z z=os7?1nDt&a-d+p--}gBIGXn{?$tL>{5*R+WCKaAz616R|AY`OF0*%uSk>q3cjdVP z(LS|g#{kkH(dG*gdJa@ecQE+6*0r#FS~P@cRh|;^;);C2z=r_u$;W^1ZG(n=LtZAo z#?XE6U{#w5XIaXAIJjvrub=h7D~NZg8MI&l{6MGW_8*fnCWm1&?R8%|8^2inSH?Ow zm-O?L9?ka9_bjI%K}xW^>MdT6J;=@JD<<2UJE96Bg9~h~ERY@kF=B*eam!FUjAVZ^ z*6qk3zKuQ42Eof!B+tjqr56`431B^qMxr3L60wuh36$9FYz#`_@%yJhHI#31en{l7 zZ@3eY261YmEN0rms;qojpgovu$DKvyF`eIgczp&o-zO-JPuh5}#LSHp+bDVsC(Av) z_6Zvz#jFIzP+qd;$@hSKRm`?IajkX;)Xp1oAxhFNiEEwwBCR;RyOyW`4RN1F7b5}SwtxOzG%7CyCqD` z^H|y#sqj1@03Vg=suV?_C6I@Z^y=79%1o&;yWv^wlGy$3_g>shiTVEHfswJKk6b8a zbjBSWtO6UNzHVj$L>O_7rN>{fx<1E`lv7Xi9_CR?qb18@i|d#{N7AWW3v#$J`l*Oq zeh1J$XTI^GW*)(dcWqP#y$y?TdC^J&E;6Jl3Eh%n>k3p`YtC}~U3^5u#X1#Y6DPKy z>q$6o;UJg8=Qze$JB9mY$(f%(G*_70IZk*D_5~mY1C`l8WuHdpDT^3qzNQxdJ8xF_ zM;!d)i7JSK#AH~YTaq~5Wanr9BkCHvD{Yo&Y}=XGwmHGXb|%)uwr$(CZQHhO8~6Qm z?hiQYS>2~aWCwhwLV1%iyNq^h*cXz=+yh*o_VOSxouceVPmk(K8JWl#Zoe znTvBz@1kg0<)U)*xac{ zqTI*JDR~%O$Jm#wNwZA5i>G8k?Nn7Z3JN(`D8~C0rBSh584`<(Xy+#5+*cpL)N07j+^JOZHZK7KdG}}NZETg zvpKS1o-H%(X#*F(R2SU$G658~^F-Re_KV_MqM#xetr-O!Dz@M{qTP9>&w}OjM#X-# zN*QD+C!_KjxEs)?dc_fJK@It^Wtfqbx?Vlv?bOdBmqC80n-q{mg1|i6^D_pjw5`RW7NVK@Tabr5~L=}w5p(bjR>!_ zT898Ipf5lNq!EFA0U&tZuord#_--bFOVsY4b8|9eo6r5NL9k;^tT3^Lat0N+0E-nR)b z5Exbe_*ui_%<3uKrSunq8{H1?z*&Y?XF^mltP zq_FzzOunR!1>VOc^G(MO7mBkbb!c7q6W0fl96w=i{*}>nqXL{~T@?r)>)?H~qMq4F zfTy?7Cq2G8s}ucNfg!!@dpCA|SZz*@n-|}sVu4;!MMIf^fY(%+I(UDfd+lX&WZckN zqUG)x+BgW-z+TvV$OQ5_UPvO=t!Fl^4M{PSmlD8JDDoT&KzEK9a;p_N1LZ8s+8D*WB`0hHX&X$WCf3VpMgqn1i7$l2v0MS^+{9& zTjC>T1RMl95r5bvxyK|&65tm9OQ;6iFA@kXlbdvJqO^Dw9om{z7Hx2%C;U))np}xy z_$VpN;h7nWqC^9lMLbfGgKiAq?!ee+K>aSgIf&zEIX_S-k!nI zC2z|WJsCg~_Pi070Ep`-Kc^TNxO0$o*}2p9WFm?v<^?YkBsWyp23$1as}14`wJ;#^ zHHw1gHuyBlAY_b!KDII0>^)QnA$D}m5#1SNP#YXQ+cod)T>>n;j8F1vFlnQ+ycFD4 zsQm(%^C*CS&2fg7eAN}X7so%v(=3s^f2`orm;B;wN#zdl?$4*L^AP2shxgODca2EU zwi`=?h~2{y+i3#?%x!;}radyGWkkEEi%ev9?@q6<<@Ea>@?AaA(5k?bL_e^4f*?m?+CIjSX9`=MqaLqkkve*gEZY69_}S1I(h>CwBn#b}4?6 zU|3s3)Q6HT-oq9!+o`3p=E_ZKKn2t~-B=16XmzlZUDNm+p3R#8>UWa}BCU+M%vo&D z1<@0p?{D@)4#suO&rXn|Z{r|de1Y0$1>joqLjE2oI%Sg`92)%&K>xu8s6j9j&ks$7 z%hY%~`KnpqLvwtbKlF`=)HbW+)TvU?cZv=%T2YvzfECSXzds^lQ~EqH$?{}Hr@@d# zQ6;9TNsHV~h2I0TGuM*2bPttPPj13K5KHd+`I)2%k}=>s*wB*SP(u>CRdS0_Zj$b7 z6SdVCYphxI-Z##IGa-zp0?0DK31%e*X8nmi^w(|^`XSakrMV0UxL|4j%nFncjP6_q zUDtOopUok;9D~6v%QW)5k{MKRQtgXzpd8XafPTxqPuIsu7czHmVawFv{^Eo=^?0A0 zUer@dc#6UqrRh`;KwbtOxH2|PF@p+3gF?ifqtaVt-KvMvH}-LL1RJ2ba|vZT#}dE= zQGxKh_P+u?=NQ+DN5R0E1bLVRiUHsOj1bj1nRT>VYz0%(&bI{IEG{^8pdmO^cj07>ZLlp-5rShr?RB+J8w_6Fhb!s*@%Pn6I3BlKJQM{5=?8kc!Sy@TkFz@?g<1x;jo%0@#<@or zLF6G={jcSU55NmJOGxBRO5uHP6R!UMU8$ubBFQHjuw_R-A@|+7f6xePV!<+6M=$n- zI|IR;>WqhE^>(AI#eaR?5u^tqb-0}<;5IByzLY-~%kLRGKDIVZL2Hv9XPtalv8AW* zBi;$Xw}E%_YFdwFcU9GIxkjd#rL@ss%AR^IDH^p>^$@*KBD>h&Fq+I=+lZqIpy@f6$@5{)_qyv%tF}Y&L5)1D0A8TN z8<`ID0|sjyoE0t5#$w1*Kb3)@brA1K!o=A8`q&Zc0~UZgKy&9KU>)%2 z=uYV=e;R~cSYw9+n{F(BH!fsmF3HqoTaJFUVZn&nFFs!p8~E+PlOtFlA_7FBhWl_ zx2#7x)VDu#s+)B*aar#29rDkD08J(%XjG*8i}~fYD*7?iI|$ZNo1!(;KQ=<`Hw^*_ zsSZNb!2|;bW)5H59b+OeELHrZO=(H5#tiy$Vt`+jwBjFR;tQpSPN7_?`{yNLEo^SL z^)&tlQ-T%OBSFm75S|q;;k`BC!nHhopM)2s)SWo%-A0Y-h-qkTjLJq+hpDmC^2{eYFgmCiB^|(_1om#OcXUV4=g*XK!n&SDT~&BbD%+ zBlzbg>f#sLl3)JbcH2vE&J-nmZv10JI1DXb>CO9w9qs$>WA!}54$rCss821)Y^vVz zZ4<1<6UOm3q;M6=ZbaD}n*)MVH7U>eiY88nV;^1|Q@zB;jiP$Psj;+t0xGx_kxTRD z*h21vx78q)%~mvvyF`jg2?reD0$Vfx_IZKCU^5a92I#|GgaZ80Ppr7yO`e8wc_>y* zIEz+}<(TKczN0Jg3+0^YbdyS1v(_GXt-%DrY_#OC9WB6^aml53Q-f%>#gpb%nEf)g zo8_!YE2=Qmi%~nNt)atuptre~=I&!L!N|;9sDFI`d@2dVeC&ABj#)NECvkPWJFIJu zpLZ~W<)Rj}N*BW-j*8&EoX0bfd7$7~cg)xB1(W*;edQSUr$y2f3RAa*b$1VUc>>l_ zTSF^Z6v4ZT3SuxOX4nRc9$&-dbaxM=8c;X7aEMc25grC)&Q0}cZEX@1eH5t@-WFj5 zzTEV`M@vk>TqMQu)ej&%d^(vpaf?EH)-B`5`=vKX2!e@R#+gIOh!lrEwFeDbNezOp zQhbmp`1b%cY*|24&nE?{5{?1<(HMpqHaHG#$#yBXX4MV`tv6_6K`SK>7juL}+WH2J z{^+-y07HW@@d%40R9=c$n{vh3H7SZMrm&0_)Iu5X{Cp@pc{$?PpZRfJGznT7%=?i zq-&sq4ZrR=96^D2V$)^W7<=`Y=d6v|vQlZU#f_Ue%h}-r8Q3X5wq{C)-ByTX>8zzj zVg3Xktp(sHaP;a=FtTQE*~rvU0aB~Ib=&-!mDkoXOIJ{}eQzwS+#7)p&*WL)mBFnC9fKD-q(%_u_nc1lFB zn)k-6)(Y}p!udd80tPT+1Ju~e+;sEU`1d>bC@NCg2a8O%zA!+hEpA-#xS|5HVMa~xe! zkX#ZV@w5fkmS(1TO0VM{by7M~R`fpj4<6tjpl*UL<;cf)GnkbH1*_(Hwnvx_HMFcr z{Y9AyJZn;sq{v0-_`^HxGapoX7|mM;Avh!QQ|b>PPFt9E`Qus9f&NSEH!~s0SZP>D znIIWgD&bC!G+T70eZ3ZpjBh*z;5$!1qmt@o7OaPNG0NSlmWzC7NMg^m)oN%IT!maS zYU8P3Hy%?+I!6i|PL4PQ^ql#QOr3C#c86hHsfL5;?>L%2hspbJqOoQu)y$i8FHQ;8s7kcD1eP(jman&$ z^4}1I7}jL~-j)y?%(XJF&l?%Wvl zoCmzC@F2rCnT)N6@m(vb5B&H%B3zmZnS-7;WDs!Cb4k`1mBAmC4$4nO0TTxQ>?wA?hUp+|T?uhaT(m)g2hr|N@ z6Jd?oO3IO`E(5*F$vpQchxj(5yzn5bn`ul>C?ad z-|H`fw)irhetXA^OHt$I;gbxI)pLLA@`0b8PnYLASd7~kWCs^?^mxhwzc|CVw9&*b z=b2h9|HY|J!83cgzX~M*bjYbNn)SDMkA^UaU)LU&l6#Rg`%)<#yr%0i# z{H+HIeHR++$)S$pu{13%~Q~leJWh$ zP-Sg^j`tT>p=R@>zSc$FI>myRRFhZ%j%@r#mz#1=`~=qGkzh6z>!8v0*!Q@-K5h6H z1cNgvtKpE7e7-l&26+gPCB5M`#gc85bB$-+jm+|we@&*6i10UlxcHy<5n6CmDx zZH8{AQ>>M|l0w1Mgc0lS1;~VT#;sF6!B9aiQ!)ujfSl1`6sl4su2h&r%2yzTxSAv9 zsi8%VwxE@}5mor-XQfg%O6m24ctG>R{j`_986sx4D7kF+lwO>UVc`J!`ButYk5F3> zxJKyy41rk`Y#A$?EQ{!cBB9qo8W=W_c?O&Ojo}Olr3FPgDhH8`#kz*EHB@2uK---7 zk`D(jKKJeqPmc|Hnuu!<^c_(Q_hFJ!*)j|+;?wwb9kH4#4DkJ@@n@dN?fJ*P@~c1d zm~MCxgF-05ThkS;_dvs&LU103_~`$r6f#?z7VkMea5$*V{=2{Ar1H8~3HUDty^nGKwv71VLs8vksbe$O z038GnCYySLP?yB#;cuQIv4Z9D#I%70kcaX1p9Jr@MtU7xy&}WSDRdg82gx6Huu0Zs zW))8j{Ua|#19v6`)b-7@ogg_aBkO07X1;djX}Prn-~eqGu@=;2tW`DZJX~ zwVvN#9(Cqrz2F8~9noh*DVuFwX$L*ejyiGH*KrMJjL}VPMg06`6e%YGWQ@zR_p5^| z!4{}76@dI9V3LF?ZpZV5V(ynFSv^2dBvcoOpt4%a3vhBDVSkw>)e(=qEk+S?{|dOBBc+m^`CmC9aQ)#bUIKxruJ7l;sBO z+vN!b1*emoS>MOv#u={|+tK54CHkMc3+)PyU3I+uQk*=A&P~nVfOa*A^OM<-|*VgMWfUc6*<2e6s zug>-M;eSX9-AelSYhHR}*B*+>olUZ3d!@Q;x-@0Pw;_?R7F`)|bwo-Ucq4LpAnrEe`&9KPn8Q z6Y6`YkDe;*UfaxfHinh}$W9Ac-wL$R8!?+Vey9WO5+;Or&we zGjigkm)8VcLbKQb_N}f#4rMdQi!wks(4rm%ya=rArH zf-^F`W(l(P721g|anS)gjE0+RlwL$*_)o$cwIjV2-)$l)of7#YW4mdM@@RE?|FRKJ zs{Y;%B*5phiG<;^C5g&Q(r;8-Ngh2neJrbgCh6Oau)N|~`Mok^&Ky*gdighv>XsKb zfmH)$&mXO@mlIN_vl^!y)#i-Z^n&MCGAUSe1Zw?nqjw@35YMRJ;`Aamen zWdt>z0jt@YUE};+tDaemT|qG^{9$DD$63HPk@=RNV%t6lLL-5mfx@q;{Aezni{hobMr)Zv(VE$X;~XFQk%UtCdTHZYcR zP$A1BB|)q)r_qIwu`onc1=x8rQ*#4eCgp&hy4+R4o*B^&2_}HQv&6I3JF5`R(h0k{ zWxJ^hv$F=)K$!)HSZn8Qw0rT z+OP>zaIkAIq7$1-Xr2=-Ljqj@j;8XK{x@!*%-)R^Ts1X+lgda?2If47rTQndUpPX| zt-%DxVWyE3i-i{#{o8xd0Ws$peH(WqeI!4ib+i~hlH+Fbxb?p_A2fm)Nnq+c`Fc5l zJMr=|$x9-r@(jc=0RSF6Ri~P`UBr5&u~^|YkxpNUyd%QX@@2G1CRLPK7lA`-TXd&8 z3{NVDCwKhILHqATR}5lu9>~Sr+4h@dTz@URRJwlYCpa*-fbh+mZ-YKYGI0{0D?FC* zE(KX9*V;zE%MKSE0Hw2haXs| zvOz+2gdyz=EKQ`TVY?PnOgU)p*qW=mw$@r<3H9~(!?7)#Rd?UH9saX)JK|D3KCw-BQy=XC`K6ECb}Q_my>`jo~seTRb!jCVS?i`xqz z`8(cVadqLZH*?@a?}Q&KMxcrvAv|M+>7wC{?f<$f5D?pTb(TDx0eyoyDB-T!EQct; zjeiA?4iuHMDv%XrsquKvH?|j1NIYDHQ_nk<#12M8o=b8veNH2-F1K z!@imzkB%I|ARnAr^gh@3bv^owM#Wk)yw`Au_<61LK+w0Ql4j%js8^ib90$6W-x!7n0PPTBnS+ zG8AJ6!$rSps@1LzxLL%JDX+Rvj9g=h4G~am?J8-ynq|cSeEjQFDrY>a`N^0!A5E239N4P8qMuV=iDl;q!uE+;6ZJH)^rwj?{i3?p`rCskh0Oc>iQE zQ?D1*=vDu65}@C9Ng`RpNlUUq=n2ZXs;N6>EDc=-Tlw;OdsP*t8(d3#GiI`mJz~Kh zf7P&62|z=_Kn$d$OosfhgS@E{4JV6{LV9x>2w@#qxqB?BmEk49X4qo=VCow9#waHrij zcPATd^mJ)`WH3tHG}9mh{QHkpp2##V0SO}VZL{5HLBO*9 z*@^w_0|%65?jA_LHk0(NG!oqu{W zp8fELHQ1PJ^FnBEq-@Yu`TAEUrhykr1PoI1qRD303Sy&1J?PQeF2*>&;f>w}dmlQ) zU8beUKX0GmLvR54Afbh6sqEz%p<*e{<<2Rk7Qxjp!(jGDTj`guqTc;#KFHMfN&GfN zPjFeKt@u|p3={a>a;75<@cWJq){SDUPH}R9oW#wnZiAyFU2EE`NVZiK5}4NaEJcb?+b&>S?&khpnj0Y|!EG+c zg2TCbJ0m>(v(m?>{wKDJ{$A|ddd@3_cfUhy%&Ps8Nr|lG?n!jJuU@)jht~wVrw-5| z!DZAeb?q#6@9LEJs7XVS$QOT-;S`&s*7=P=a63Usq!-b3(RH}-Pt1Z$%^6yOssa*B(5*f)4lD%xD$|d`PL!j)9?KR2!jJEy@0g$2pEj zs%%`W>74!x+XX46`IL_{#C^&aQghKm;<93HqQB{AhypDrPL$d<-qb)zmV@MkQDB0T1@ygPvj>{{r^4hwq z1CoY7q(UV9IrZb=}5jy_1#0w0*%c|1v9+*o|Craa3$oPl%dLPY4?YDFL zIXG<~yHz*-tKCfxA~*{i0uq#AobMc_Ys80ZZWdgkPsKG>;}4B6JSvQlDMiL3U|prnc;Hjljpk*%&_g30jpD2kOMRQZKPd1pO8y zx(tF$wCp4>s?Dz!+GGWbj}{{m$x7!o^|JrM*o1Fn#7Q%N2@ROe2=0){2!IFbu%42= z4MBSXV12$Re#GSk?P%k+2b7&)y4R1HzsrD+TLLu65}Fwpq2aj9??X|{?7ZN4kmB(6 zkXT25=SrAgL_T*GG_npL{Mo|m&&938!|xIQ!a6<(>RdR6*)a$BVyKmpZs(58D#=-f zHL=xCdvhZV2)FN%F6$y1r=Xwdkz^+WT7SR16?3>kKEMBNgA(A-2D460u3AuIc+rQl zoi)>(_P7i?P_v56&WBDODEp;|>K-Gd4N{=1hao4Y1LE2}t+zyb2-j7rEUNRDybNWW z?_$W&dhpcfNq*N;6181ex5E3bo4ctm?7DXP&nQSXNq>Y%oH2H)Ag_*t{t#R1M|U9`O{&xRUF~jc^@cvOGm15z^EX zrMJS-aBCc!@3gOHI|1+gD(*1e!DHImktZ7_=UAW;rbJ}$o(x~k^M@I5x3*9yRT@RhDwIN~pjzA2fu0#D8 zDEN%6)?+L{SE(WSG*k9a@C+wvu0Am*bvnN~5UWCTW7WntsvGs0%W8$9tdm!Fxdr9c zBGWb^AYod-e-JWRBGEdjwL^Y8ui>2`PBFx`_P+rgRlO^uPjj^F7rSFai3>-IKOy$a z0OC6Kbdyg8?R9av7lQx`lpp(BcU6%b4V_86{Ztg;ucs{thfr$QKs?R*m`ieC#1Z)6 z9xe{s$51(cA>1RexvVJ^VPxD%&V-)<44jJW>9Z#X$RjNI<6HB<2vxBk;Tqt4VS*1y zFpxou&o_d~IEkIiQ*o3{fi$FGw0mSR!tc!<(kGPb(mpSS5>o^E69+~C6R8`f>N}~V zLb*j}XBZ|ga4x7erU_&LuiHI72jvmBDC;8=L~Wiu}#>72AwID-AU*7)!7fuo;9)?)?i zSJnG6*&9uOycVSrUoG?6V>o|6N&bq^Yp(vwSq9UzVm?5RQj30yCCn=jk-Zm%q1=&V zmj%?E#Z>uXh^NH672PGw;Mzn?5E~LxeVHSI}dtUjcf;QL4l~#(4Nzytc zgEYQ)#P*0@KZw6AX^))`>)_m^B8(OOl}rQ>Rnoh67Io5zz}w( zpIt@y14 z2$^I#?bUi)>3jmT$lC$+cBpwn*w^&NBXfwvuj(=>lsaPiyA#6ah4#OXKjpZb%9}jC zvrm+Q$E3<=T!H~LU`H_a)i-_|`CJoVsz>6%(vq$txvR%lRw7FX4d{=U&$IkNnMc`1 z7&c___mpJ+zn96jXI z+;j)L`V+ZffzF*5g^s`3d`v|I>A=OqcsyRg`23zSMCk>@CCFL91*Ok;XP-R5HSDU=MInd-*Q5vsSkHpku0{>LGntp@zVw#aNL;pMrtv;FMgk=L5Mj`2qvI94W`GVM`gG9>D!#Q} zFIR`o^@pP6KZGypsgjf77bwrV(37}wPxv5FmV;WHmaD4A`wT;?0)wrk=Vz#@M_Nt^ z>xAy1LbJ@znQqmS~vx z_tjT25g3w*r3Mc z)O=(<{XOY;u;^8~UCsM}P@9lTNa6GAMl-at0RFLhI3N%u;;)E?rN>P{Q*~#&qD^YI zZY9-Y#$8m=@4VPB|5T=#UT-74l7cKnf&sU{iIS9Nip}q%(-Jo;*zx(T)zK7QJ<8J8 zz0Acs16>Fyr3shu<^!F>mjYf%u?DmTZSy3M$7T($gBMtuaQI+mBk(F^Vf+5@5ZB7aVH`LI0vN}1vGN=gR* zM4tpAcgUKP8|;>8K~(ktc;WI39P&-Nx>?cnkFp_&0X2gAL+(8JJ&{fE!X9f=k<~k9 z1-Y>!!MvWR-Em{SC=!vuc!J^TWCsNHke{cgaBKBM+!tZC^B0*VWwQb?O0EZf!@4q- z!<_KP;uN@X4?tI?YedJ~u9z)T*0FWJv-P-@2b~9BTT-*O*?X2+tLRk}!>qX8QwHxf zb523Dd!WIcEVOEFZ1ZA(Gu~q~-F>$pJ9I*42I4Seqw}J=Ae+=>tvA?&O=R}fs8>ky zRT%^Hs3;;BZ#!yVXrK~PIOWaCq{!~= zq4y28Ct`3(b`0)mX@~t%rw2*+Mo%N6tgb|x^bGjHN+$_c$jYbg3rsAI@cI*aR=EZnm7rDM{D2yV68B+A%uax6Pw55KyK z%gS}WXZG1}_4LYmPQ}bc8A|osFKMVeH)9boN0N1O*8Z1u$DQN_(E45#5HbW?!+wh{ zS9$P%Z;@<(*SdlBEmOyG=*F>1!b!3La1<54O;_pqS`orR)RbFnn*8cno*cJ^HUO6+ zNU*0o$S|2wn0cKrb^-V*VX&L z(kj$n0q0DtWEsGqZ%OV_CQfQ

lA~5Wwt7sHT}X_T86c2BxEj@EQl1T<3S2w4Xoj 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 w0iod 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

UCE;Np}TAUepGi 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

uZPW2^g!J%D&IDKPp&*3&tGL zyWpSFl3+Qka&4Loh%54YDX#1+VEIRy2nYAhpZUEzvW>n5z6@lEX)6G}ooLYq>xuY^~O>b)Uuqi!mD5MT0OpGJtloparY(CP@*?js-1$dS> zD9EGzLf;L4|3&z4&9y7N_VGphk$g$p}V^~1!-w1 zL0Y;?Lg^HwyO9!5O1_QyKhJaD_j~Sl-|rrN!htDlagHBwV>%?Dt z*XR%vzWHhKouD)r>Q%^${fVm!3Wvrmaf)>VH=YbHrN6>5EVWC48RWj^NTmnvoF8&# zyUBr^RbNg0ia;=fUO^Pr3Jw`<-Y_)*`x7B5NB+&YK$q z`PMWhT>PqS6@!8MNaB4*ecJnHa?gnA_+G<7_9f9tvvGcPGS;nAJzGCv z#l}SWYC)l&+I0w(KbI3tM7h>#zYfQNy(kVx5XgVdv;lfB$DeMe6~g0_+OU5bXXw{l9Tn@OTGX}Tahbf{ z_GKB&gbwBL2|0~tLAQ5AsWtY`w;JdIAmgYOo(H|nTiRwZ*lK&q+`?r$572^e ze5mE7Aq;zX9`>1XrYVTO_N^fH=Bb!tYbUtN7+Yu|*`_{}o`cXgZ@0`vLc(GgNLJe? zQ{%W9Tac&G)FPfE{swyhBTABQOjL%~GQkzO&8VwCXKK`YSdq&lH$Q3BWD$1km1~N- z@O*3fEHQRF=n$s`a(`|@GQ6WB?O}B&yiJS7R-pIEQtuuo*7CQPZ;%~Z`LV**p7DL~ z^dNH730;uJ8fAbjBJTUjpeui9&Z}esE$J#LU~OLJUGWrrZncBFJ~Lzz5%+C?rU9Q^ z|N9yhi;)sU9$v=8V&%6aU1JizUg?Ux**F4`ULaefxln*Loa~4_9h_pQnpSen$$4fK zf*84&F*7woJQlA*4-IarU7jE*(cuG&;!Q z1~MOq>MCSQOsd!Ql$@KanpZKceK18{Qa^aoA4@wvr!bMt`T5|a;_X7mRB9Y@ zp72?xB#36~aM(4rAm3hY6NZR=r`v7$3HI4S@`FNGuZwq&_A{Gf{e3-YK2Qf_UZ8NQ z5zC-Xj$#9g)fOQ}s0F_|?edE9z7mOF>Gn7+k9~%uSYj=6k{t_=R=XA`L2xCK|I>)M zL!Cu7s`P894r0G-kDkrQGcE9bG;ijIU7Yhyg2pBmyI{NXRM4;@6J&gQ7kkRje|X4I z?323l-Xw|2n1i`QVnf%XwDzTd^cPiru;x?v@au3;;*yIjEkIxu6ioks^`%cDw<#<|T z&ngmEltPqC`tHJ}4K|a=ssc2<5>6kP%F`->U+`{p6mhUF1!|CM{4FO;^p{9`Mw=i! zd#%Fvx`vyKzM4oQ%QV`NAI^oJlSPzBKZ_4 zy9oE!c-F%Ly19nSXM(OY@wXx-hHdbb^RZF#EOpb8eRojRhTbnKNZ;krEI1lC5HVSm zQI}Zh_{}2xVz8q!n(H9XS&+PRqn6sBhq;*kEg;?_=T38fCW7W?u5ze<{4~zH@ zJiMPi?QAjC>5S)kp{Kl^L#@Pi!t-@|=4@tfz}LhuBP*aklzW%y^a9CEv8{VBapk#5RXHdbRk~~@#8@K#%G8|Opna)z zcK$WuDFOw*8(TcGQ;Nn!z&Z6H2bDJW^3~W#bg7p(%J8~WOYMLkUOW=s^VUuZYx#`m zJA^sdCMGY=?@r~SwbBZe&64IPJm+MEn70d(tmdol*>=gN$=dm7+S&3(Xxa! zU{swlXM!AFm-GbJIW{u(7?FNhJm;j0^gc_A+t+2onN0*HIeqJudj=CSS6oHfC)lbn zWE;pjWD8kb)lA~edaf2b9naw%Pq)3vM0_Beb<8vjbj$~BMf4q|t@C~(m^BLguC1k6l=_rT?qKHPnmt~#koZ#!~4w{ z_x+IyUADc&j>aK&b(p-zMtiuI2y&#}@1GQDFjWb3?=$1G8Wl0pR+VeB|DIe|JDjW> zNJcCCvjIL5RisnlO~L)E%NKO0Ax0FK=DjrVib5;_elB2%lg-s1htc#I)Qc+Uvjp>B z9b&(sfHrI6K?eb{N!p#|v5H^K@ufo3G=+F;=H<>&g8j|RjBjo@qHL{O3RbQXUrtqg zK^#2(wfBk~ja_k*j~v6H(aQt*{b9t!SAAl8vrn%>50P3XLpzA3>|9LI44&_~utU~O zf*xNZFJYjfLOI1xJq}?rOz8AxuXb~SEPil*Tuu8fFE*q&25wC{Aa)WkAK2i);t^gr zKAq>v%A1H)UxYpJE#K4!Gyc2)H4gD2enHJlRi7TPSMz|e*XD0NUAOL{UaEs;-9(My#?N19w8Qd-nPf#H z0lP?xvx9j<2VJ(mr=<^#&stdM1T41_e3@wi-f-e_ zO#bG?mtSu2+9y<;zh8jE@>v*@t&CWWzYrKRr<@{Zau504^5G3wh4Ll@?yV$J@51kxpk3T|C<#7k#hrL8($30cd+j_8 z>-@%%q-`;%+Tm!0>Wn*fdU{BQ_zcEz(5+k3Cnr`&fBXKpeO2@6ext6kUH|J=xYW{6 zCTnn8vVXgx>jQ$)7*7^j+c=0{r#9Ej$K(#rO#7F~16FX9;eux9^%*w)fpEe5pByf??NSCdPJ-%N+FmKm}j2 zoT!gEcbde;S$kI+UghT?10>5TLSNX zmJByv5%Q|Ow*0Gk?p?}a`vQ#2k~Ooyx24aO9)*+$h?s?3LJk-8pXqHy@2=!872@jb_3`Uy&xy%nE6r@`jL+VVM1;HfIkzrvBUDZz%#k zrLUU!99n3+nW?0GiH0`smD6`npO(H|ylTq|&)AIl;qGi$-BYQgj(JWdHS_MCm7-t4 zL0;8TzxtC?k*aA*4>2$0Evl>Lul(B0`9WTn^kGgL)c(|bTFAa~eYslOuW_5xsu${W zO1)b>ECO@pc|e4C;Z534Pb_#5J>RpPM7S3JeMAC~)Qr43-p<8`QFtfBnM#5M5B0bkkMiW1sVsgvQgnEq{nB=a-y?0IB%9o9jh ziAT%gH;>q-6bW!Qko!(+H8YVO$o;%tvE|#fTuL}s7OI7W?uLEkbO z6;2zb9abVrwN!d@J{@hu^L&FDvbPkt>tDt#h2?=`C@7V`9my$wK1xtUrY@}C!R}(L zy2Ai(opknV^47?m`16zLvJ-O(>*p6EPI_;CYEy<#l1rgzdbI_X?6C~rJox;m?~PG} z>>Db#8Siefbg}Ph8PRbLkE`AUQM2NUSvN_?IB$obXS>$&(pR^dJns?iZz+F*)`F8B zf$HSZqP$FB&20Ueu?`Lf#h}bVmCrB!`t@1B1GJHn<5*%(sh04Ng;adIXgUu4HDTS? zf&e3~ZTxqPu5>4L;T%fZxD#m_aqZts(Vc?UtD{g=3_tZq^Hs7ckNd;AN9=-P3`g4f z1)ZrG$?x`vvxo{OiWRy0tL#0qOA!`7h>d6l~%3b{AUh`%+0)cOloe z^plpm$=$utg5f8N${Qm zXnv%@TUt2WtTq)Qo6Dll+(Jw&c)zPdpD{qL>wMI8u}2I~xxSg!sh3~j@=8)^IAH<<=}4+guMkI_Q9ej& zFAGc|R!lP{QB>5Q>L#Nkj%t4q>~UJLC`DM>5$1-elul^H2q<9hWyvhaRg_<^X! zF1jKr2~F=s%LCG*W4f{66;5|FUG=enuuQmle7(rVa#oS#KIUfyW5(zl`^w{ zmr-eB29#)R8eXN~G_xULVwya2sB`0j-AuMLuo&_oGJTh;uex-aF#PnbaqNrAb5Vm5 z$hu^2p$Pd{{XlR*tyNGDaUc*AAA`bLyl|7*a~jHe+FO7_oR0#m4hw&Hq86nJo_3$q1lsN2#K9um7*4oBPMQUddNX0+qy@Ev4|M0sV^voGbfs+S>50U`lm!$WK?`Yb{1$@BBgsTNNyqHRbl2BnW_0OAhNd$ zp44;+hR`0q{toS0Xnc;U$*3qSpy!ZZE_>fipysox8Uwh1;fm)S(4WgPA^Tfd=gaqsM>Del^j9KN6^NjU?EC(Pkawds zS=={UVkEHO)a-JFYmwayILn-o78OF3i1iD)9k5=aHOr!_jAi4KT-R@?%xUjmJ$+cT zIHM^)z-Q@L)gvqCN!6D5+=SEWV%p(MP zP-K;6cayf{tQWuy7s+=)Z)4p$9AP&F`!1*FvbYz0QJ$|33dt8rsz43e9o&4fA2aL< zE6R7AFNw|Z68D=Gq(8F6Qu?M_p5>Pqj+adS>Ii(RS)t%42eecsqAXE=sVR6ld?InhOV-S-d$H6A-wyo9GqB; z#;AisBHYN6WZJjAH?d5n!yPOK-#$5W78SC8^LcjX+D$;TTtj^=R?v-+j*s!R^kY0# zH^Bj#;5zSUr{?UdYD#N04VnzX^@gzR8QCQ87hU2ix78C`mHgYgg4nNC}YBu;}jN^2B8A)Ofc5_Yq=#X=` z!c$1oGrFVQ@r_#-OhW3Le6EMEU&Np(j;E0t7f{Hy6*Zi`)5O`)UR9!$ZGb%%Ao8~D z0lB;?j>y_}Kz9Dt?8^D@Rd3|x+HY8>#vh&Wluu);P<^h?-gn&#HJ(U?4RpZLcNR>A znQ>+hrW95L&k6-xRYn=;Y)!R_O)77pbp@v7VX6Pc?49}on;XniR?ZC zE7eKZ<%+C%w6)emfd-X;z=MADm*~OnPY0?t(STFv>$@HJls<97Gm~^!5s0?04&;(Y zfCJFpNgMU(P$>LuTn9=+&p2Li$)ZhyA@c|GsD(o0ix>A@Dj!+>t`=fEJ2Q?NS;d5d zVz+FkReX~ZUH0xKOkOZ#Wmsar5O5!&`RMdF+D?loSSwAJ_OjofSg~jf9YmYK1!IR< zI_&HH^zf2#bR-}k$+ze^!inB!UXZ4Ke!-+ap)N-))jt(~ARQHu4_9k1M+TP4~9sSYOkR zDigzR#EW7?1?Le|9}X<&I8}X5*9i-Nr~%{t4cC?eb0ixq`W)IwSo=Ck}0(lE5G>zCXf9f~~7x{GvE#dA?%D9l?yNZ10$nd(th z;!B%-^zjU3Z#P*=F6(ZIc;*XU8}i;OUb|D8zsCqWRfOA_WooVoCUBJU(uU{AZ=>l! zP$yWv%BdF=2&T|S$Io{emy$+wrkk*9+=J5(cV^E17s#d122@(`747bVRq)7&$(b%XS`ts zKT%UXa0O4b7kDum3aKOpQLyKPjA7yzM$EsYohZe^It&<{h zKXle!P*hMJn{{9-LHGnRmZ&X;hZL0Q_%CQIe4wM?O8wJ1%RW5;8V!d&T?pgIM+FA@s}3YLqD zpugVQzQ>_UVd3f;9D-(wNOgdJE9PYJLpM(ovlpJ%l7UtecyC2TXcmL0$B!a$b|tAi zuW~r$vae*x+MWu{OJ+2aY3ky7TS70B{Lg0-IiwY`0IxrQQuUg5H}EN1keN|jK7?E^ z*-SM1;;Lfo1QnsRe_6{DfhYN?Q;MK})l#^Z2CH_Dja7G9PHg1xORdnO*?kT~hP6}MvA z9$^#Q#ds0O?_*{6h0tcGG(7@sgAdK)myV)1UF-dq`|sW6=W45BDz z$O*h9*_vsDsiLKP+f>3}jza-`v77HP{j@m-$AVTMcoQV@T&WUFE#&euz4g5Rr!cPQ zFR*J;aQdqPH1dQ4&E;H#9z)5MD><9G>F6G$)Xw*mZl+rbYt!Gy^l@^PQ!dFiocwhs zJ!nK>(YN_0$Gxc`<5l8<$vCFr-gEMq&>PmmU;ee!(ov{NuLlM`z8t+zQ#mu~CRVeLdy!GWofHG0dq)JWBJ68qEoB_AAV3;opkp~^FuC32! z>-8P4(pXSaqdseju!yU?PY$uBg-*P8AG0)v!3jE`+F9B8Jf2BMM- z62FAT<>^tGdFfIUrj=G~)hFsssK*waZqzo|^kP9zO>R1Qck^VWl};Wc69i{`IK2ds zBcokx?0p~NZ4tKkSCNCw62kCe_GzxApJ-`881MZPU1oia+=ka0-F9e0s0tlXkctY# z-25g_`%@H2LhD4@E3(uJ)z123;qpQTW=@^PL+iM8M7GCH%2nMX<<8y{A)=t>UgmD8rLskZ zdUvx@=Ym4I7sjmP?2f#5?l~-B4mqn=XXkF${+th4$$OthCX;sg^UIct?Md;2IybeUjA^Jl}B`-yiF%^UTg#iJ*onnoMYMK57a7&}eP6T6I> zyHD?7PVeUKyEmTDIE|KVO&nuyNSi$~Z04IoFo-N=LJ@h-I`+(zc=m~tV94o&CZ3UO zcBtHFemQ^laFApZYy?L;vO&13w?z>rSU4laLughhbpI$6afvVEABg=s zpt0`N#-trlop)+O>yGJbKT0Qegkk{mgJ+%U2aX#IUpTt~H!ryk%=0wLT zb80PyMwAEjm2pw9jdbHzg=iw?jn)X3Pz@{ZHT{={YC=6nzHdyYcBJMgraozr7UrLS z9?vmTB8a8Nt2V_-ctwX3{cIiXbvK$)U^>fj9$K`v7dkh~2i0uquyNijq|2vVPBE%8 ztfw$Rj7P-7&Y1A4Vz7Cp?8Yjwux5b{({JATnai(CG}5P`e$4$of!wg{8(LB*>)eg@ z&-;Ji>77K+k)Rt!s`k^)T@f_$nkaj3(V}3iyxAkxTVdgTB`kwQqu9dYo^KrRUo&71 z<7MB9=gp2U28S86YUzE(m;1c8mixWhTly+IXJqZUD+i9KCSO%m7{REB&pW0)46YGQDebeJkgC33@a}CSl)S)edJNo=u;uU|5W~}%Ql9tg**>*gOaJR@Vq9&F*d2p-Irumu1$$8$X zs>Fd8VMpC=L_qeJE)6%SlFh+5WG!gNhx~l2XDTllxS9w*R&=Yf!&jf;@HJ~zBBpYC zQptt#h-)tb;hqg++s2vnqe9$>u>lx{w(fL4Q#C_`@@wz8LW1kwCG?HKh^M3Kcn1o1hOo3& z&tu*sa=v=w9IP5xPE~*zmxx4$_F<7;8Q+nh1b~S}W8vZEp^}>OL*Ke&n ztmx@Ia(qAkUC>;81G~|{43k&Oh*Ks=rwjCD^%VW0*e9wrfSC_rg@-p*v`n!euySGH ztPsY*L`LwV9|BG|7D_yhpN-Z^xS&@?2D@Hxse%II=&jL(u*&DxWW3m73#erx=e<^a zM}pgI?Kt$KTh!h%V?)fbYC>;{>^EYg#QosjeUJ!#>4peBZ~Nt{16r;L_bpmd59m~_ z-wHDBzF?^aUJeeWXJSM2%{n+?DVAGLzRVWC+GicEO-Vs7e^`!ji0=3+Y;pKOYcpCJ zoVg}9XRV?gEz3vjw*vcTjn@Zcn*+|~jy000tX?hF+_$mbw9Q8?+B6=#7(pkkm@_lL zXA|!f8fMBdym-ikV}BO>rb>*blz&CHlyzLmqUG z(Pol{+jFmn#hKY?NS0Q&s2eL1KMHoO;IXsu!w*}Znt3gUVZ6)q8M2QOw53L8=qOAj zM3uTt9p}JFccv%PR^av#{;a+enOj1{f>c~f|H1_`+-O^6b6XoUB+-t~lb$F#ptd^F zTzkkKpsFG)#QBj=n(VIk4Y3QhWEpulB$vdF+myI7qRToCQMc|H zCq;V%muET4gAAs3&=e?gr_Qogtv}zFg+gzCd74>nhiWS=?|rEF`|9J3(@nP@)yF(C z4m#F6j;xr)&g!S18sA|`mM*z#+y{K9A0Lz5WV6`V>P(7Es(W*jz6D1UCc<)bpnY)9 zFEa(XeueH#299-~rN|hhMFkB_<~>n2@;&fTeGyk=f=#ZQ${3|nkmE^Z9zZv}FJ9vGR_n=qMY+Fzi=G?FKc1*g_J@ zwa#Lx?MFtHwHh*xBrIx@K%(rw-nGGiB~owT;6etkBR-LIEH3l9Y=!cot!3X*)?YSmcBlb zmRDA?8&h`GwzW~B`O;P81}Vp2|H;pnN_`4Ss>1DUI6l#;-)1$qh~&G+_VOfP$!D9Y zx7V?O=Q^%tP!_tuXui1{SDar)VJ%95ReP1I z0;FFy*qKrD%Dv_cC}Lymq=HLzeuZQYh+AGdpZL9lvTseE=!Kj9I2YZ>xMP^2V5f7X zBR>zhKNwUN{H4WR#=C`f4yuqSHK(46Bl*d@){n8S>+T*VkqIQO8P zVVs3moFy;x2m6!E@@$@aStY%V2@_F;v#;WfU`FGa}@mtbm$f1IqmK-mX( zCGDil&gG3V@(C<<*>1?NlHf%+k+y(rN)Y6bd$5B^1Y-w2%)590ME&+F=e82AeA7Wi zKT3jhiuzW5n*rZWPjH|1nJ@NTc`Cd;Zg0;8VjKC`DD&J+FOd(SL3#^JU7__U7UiM_ zeD^B{OqP9`ggpntl z&ZT+Zk;kd{Y~~Es*{~D*TMb{%MMsiiJ@YHWwlkw%dV zuQuUUk{`g3QT=KyDxY6dY;*BIs^?X$)8)p3U4JQ!i74;5hJdK;%t7V|k9=z>eVPDo z^Q?2foFYrPF#GKnXRR^SvG32$A`6Nz!KA`WKgkaqVvH5ad-vihk;Ms3BeC9fxJsnk zzOEoysK{5y{br$o7k4u7!afEbiEa1JODOFALlO19_zD!y!_vVZmfeEwNDzXjSsdXj z3iaf`1E+q;K7`K(4^eK_5dR=eVH%`5AKD%lMhSJIB0!7X-{rgJc*#{T6?gL52&Ml7 z%t4uOXHOiWOIiELWB|TAvoE9>cXn1fdj8XX6(&sHK`do(+Y}m6k9sJ47_ksC`5Rj7 zbeX3auLisjzh@)9qwALY$(}k`=p1S6{Cekb7fQ=}6*tT#g{}_9%B7&8=tl9lKt;T{ zB1uDuq;3r>EyRvGNYCG>MApSEW6VcHu3b&=rm+N13YEpe&iA3wg<%QnGOvU{P+URFx zNzizz$*A;6w=3vK;`^V_lcl4zBl^{v7U`rHySsI^=U<`gnScyt-s%wL`v{M zej|~!=&Ao%AmO0RuT_#{ff=1|5SKD z7=0wFYCc$(X($9*W$|4X?BHz6cIKqF9^H;O0(y`8cqj>_tXGegDEjUa8OBT>wmh;N zH--W=O~ZT%+hWStWOE5Qw~fWI)oRqaYR88)ebqMD~!^VyTMU` z&gwgqwm3y2R!x*YFr{k@6QI>mO4T_rknto6=6OnL@{l$nojrK7OW7A+3Fzc+W2TTJ zh)0)&a%Cj35)^AL%@)1|UCo#qn$Z?rh*Hqzu!``mw zGnc7^IZ+hmiu8grC7iXx2}NqeFPth4-Lydxu1bv0XdRI(vUUZHv8qHFZ)!Ze{w~xxw|a^--+u`q#*CC5!TD82Ln1s5MJ*`xt2=7PA zHL|_8M}8wS-~*V9y56E*sYYmW*q%%>wY+# zQT2#Hft-4S)Me7-X+0Xuo0h?Gf~!+oBaN>ZGd4Lw+)>+r<$thX-sg@W!le z?dP?++yc;0sXE}qP7qL3&@LUI3A|cKrw&up#+f!>EFZFfvBpJmO^LJ$lzK$d^^esX zlt>jrmx9qety;_qUB{YOxHkib??OkW#r!J|@lm{ROAbcDsuLL;E;lH5Lcg+GraUZX z%)vv(-N`fIxQ=CRL5-8i>oct%^Duk}J;w(sy{%g`D_0m4wIEE855IFM zo6jIJR*q4I>?u*-Tvhzu9dr`qhp0&bRvkPii&sh^L#A(UCk(ELDk1Ck_Y?gv&|grb+HM`EI!LNx8g$nWnu?ePSYoAz2p_-}`e_0wp{GxVX4HwK4>NaFu zw9_m}=(BxUUx-Sqg?}@YQDvx1rmGG^?u>e1Qt)k0KPzz=yX$4lA|LUUrDx;ftV1>B z%j6%K1NdX(X?jyCHX0a8CC~CXKsO;m6Ya~43nXEuuo`y7_(F44AErx31Pl;2_|v|MoIW>tlY~_vejb7~tlRVBK9YK51#*9o*kM0;t=H6#T^19~(D!1NM5@!t5gU+%G@Y6;&%} z3=@`jL^X-L^NGw8e|2W=xt!aM^G+{DFFbu0CGR!+$%NKm)KaG~YAc%v>4yHQHhleD zUox9!=D@C-hz-ep=!DiUa8*rualM!{UHh)Tn+D7%ZVtGBq<0>^03fz=Sq$hB=-|kNN45ySd zi1Rg-G!~#n7Y#ld>sIcsT2hw(LKhK8Z2l~JQi$@#pkKYL4nsyDlTVh19?6jDTk0azl`dkD7EyEQ7rwbkpaqpeY=B= z&MCTc^fSMe?4L59Wa)lEWq9}QPP=BXPT@JF-*+e(R_XFqm2HWMGqxJInkbl7YiDQD z%?_uU+q|#$)dulIUGrIj-&+&|w%exTu?S6RK5=CufP212?KZ;>;44G+=RKE_MoY@b zIXO;r0abe?nx2Ru+La7g>JH;0pcr8r!Jk=F);u2mrQv7t-?lTm2=iQ`aJ%pCp+*hg z23|7(!6lx6doIX->ZPQpt2z`c_ z|8l-;NbwvIqzOENGp2%X6ssFL9NC!0J6U7Jch52*zH(Ib`iMj$2k|4qFsP) zLu{Mr3wTjet{ z4hs#e6Z;LtJI@{E&at2%{V_7Sq`yt8{7X1~la3}DibSj){RF!7=Kj+he46DFDRrav zler=>{CIBnf;O(kF_c8}L?q=TYkg0t_P5rp!7qMJI_vl9J7|DL1BZpFCP|QwmluNG zz^BjP)qST@{zdrK`f6QGe{Tl5F%}3@(Zp zh40C#vg!~c3WSA!tl`!X_3RtIihA zew1X$xmOgkLVVw;x^70Rh&%F|%?cjYpD}Ihd}rH>B%cV)45WahD8=QZQt zFfjqMbF;CrTd=yio4DDTGjp);u&}ebx|p)sS(~u9xB^lnifKXd0bvIq5)u$T{{E-( znb^6qa~N^*u`_dWSa9&0@|l25_)Piu`T1G-&B0t8yr#d~bOKwuSUXs{{%#mkTnmZ= zXp8u7yZ_L90R0&M4=wqZ{{O=liw1B;8_GkH0!mgQ6RLShC)PoJY(KzpK(DmBi4CTv zNuBKWu0|BRUXK!p)ENx(Kh6I?wHs*yE)p*C)r&LONu=T(59BY6sfu-kD{aLrL4O)3N@i{qU$G*uS7sD)~r4=pcZe(2#;!17HMzuYW^Ru!Do6 z8wJ?R1MFaGPT>T0b)ztLF}DX>I{y6?p*++K09F9~ z2*z?!P}(wo;NS6dAU+6)e}sR>kAV31K-?qzI}Quzf)J?h5&j*wl9z&-0rEb=zvBsy z`GB}b*aC1SAbf;>^l%S+8vRk-|IombflyrkM*sRtKN^^|y_21}J)jD6GXV;B2Um9| zCr1~6pm6h|cvLzCP>xMn3yS*R%0mG*f)CKHZZ7VoZWQV+U& zxTC3~nfY(6{f$#|b94b){x4C#>-n8W`Ee+)c5rq3JtkOzT_5e(!`ji^)y^BRYI6q) zCr4{nM+b8=sC9rR27niUV0N>%e=G*L6WGq$2mIJk6!u_mipTzc^aXPl3r81wpwC^* zP2B-k^f0&c#+Ch}UsfwedvjKI6L$wUch*0h?8@xo?%-hV!fNE{=wi$20=U$lf57DB z0(S9cb#*iQ?X<4m4yLS*0MCFn)q(nC0e*4;_&XH*_OZu4p#%EEILKI3l`9Aj427X( z6m+krVhqcJ2?lX!8F3r0kp!7Ks}L4rfuZWPf=o-X<^loK`!9+MhE@d7&K3R!096Oj z6`H<$0JQ|ry%^(40QCXT^ZU(M0F49C3q$j-0Gju^r9XA!fX(*QaE zpf-k<+WpgSTIr@KtY#k>OuX9%=#TU1Vq9J{>@kQJL&+SVEG=SM8Ke) z$0%gR$Edd7QO2M@)ruG+K8AAsrXaH0&a8I4X4TZb=fRab$3Qdy7R=E~y5JphN zSxKIhYsWzEFsnY{-?}+p1!xF1Nd2+mlTTqF<29gS&ZJ;aQbLj{gwcfGX$i(uAY+Qh zCPQI@BXn=@0C$54(GoHW5*9K7Tn_jFi9*KYM8@PHAp8)}qfe>?gA%|n#fb@E6f{5! zFulKJps7=_|L-z@LI4@y{s8sdXSaMD9K+r_SUIe2MjcksT1; zNF5?2&>gVg|J)sqTKa2Zp~3k7phThg!2}7(fbN4{CMG1|2ZaD$6aq?4NLCGeI@xQq z<}$U#^!#kWqQA9QM9xVrs|F_o3B<~OZyVha;WjUNY zqi+xo&OI_Q(7G+(vh88uEq#q6qHM^w(%x&<*Lm`&JunR0f8*xO|Aw19BQO%Irrv)m zGyK0PGyhwHpnvgy{hR+tWnwfqD&H*A|84pB&Nf0Dx{NK3~{N(?M zJHcQ6<4y?JzuEc^?({Fk{GWKz?~eVKEh6Y?sTd_D{9}ViYX7wd5#s)%*1!l^|D^{J z+I}VnWf7c(vzZkXUWPq`MC0wbs^uaEYN^q{AY65Thd_wgVHE3bml)daf^dKV9 zf8^yKM-9dYBRc-CxhRZbLqMv=q{dW05a?j;N#W=TEKDe@T`AnG%qe`#T_7ueV3}bo z`Iy=4aexN=645L8w_QIDA-`ochEorH3Cvkw#N@}`0Xz?knDZ9{<}_n?Af*zL()5UF z{r2xi%m%0>2#h!q3Vzgcf{GDP0vHCC|K?9n`O^f(kLM~ zAy_Xs7!wbSRHPLa9Q-mE6O81p1ppW&T2l|04nQw|EBGfd3=zH&3>Ya@%NRBkl%xVi z$_88k^AXiE27$mxzz6`$576qshzPDb29>_jnMGl@r!@r zRf4#aj42WlLEMRtQbLN|{7w$${#O?V#{Z@&olB};YU~xvO#$v{>s>W2n zLySzMx|Nn}>aWr&?lO7H|AO_GE+G+B&<9mu>wkO>R9BtYC{ zWr{4z5|)H?J0aapEZs5?g&@*a1`@MZa&aLVCoqbcfy5QiidkH90zl|Ob0WFxyrBqn zD7uNmMF6IFaIw1}HXKVPxW0pa~kEfn0?gO~fyc*L!gWC~u=}!_g=r z>_*ARR;Xc*{+&$h^AS(k8fW?yP36BHL*IO@@R2TU0~d>a!XV?i;Hr;FJ=CMg{0!9= z?UNZ_+Pq5CrWRk!U26035nmfu*B9a7jl}4Ci(1WG&v~>?ndSOP_1ZbBclU%SXH>L4 zP5n1RXmwF>x*3f{T7QwFM4?*%i|hdyl=N} zqBZoEU0M2m)`XxoX`Uz-)w3&)ekxGAU|Xqj_C)Kvy#vX^QFC%L4<34b$#|J+;^of| zDpe>hr=>RCF)+zR)QisqI)fPJcoBNc7brv6-_@ z+r4a3N!ab%?5L>PzG-Fjk1bc_QuHQ??-wo){FHkAi2923HBV%C^p%f^58VjA{;r+t zj&8M=Y<{j_!L#irR@^AP>mP8m`)q&)D>4s^(DQQODk}V+$(-VuS)O zjfgb;*l<7T- zxo?zDyRykcs{PrTak??xVLx>CZ98CowffWIs>Agget7si;#KWg6g^Az&Couj?7T_4 z3Rj37ek-76EGup@^kaC#UHbTwalYG#osBySVm^$&vSX`2z=Oj-?hr(exLM?g)wpb# zxOZoyQMTZ>thHBb4y-Wfwkfj8uQS)NNfl^&?hA7&oj zk~AxpdAh3L{v^t~%GLZgP9N#s-xhq*Im0MC(67<9Wr6_r;ui`&hbQRu7m9BanV4@k z!hc5m+H=SE*{#>@)U#5C9!K6%Q%<>YyCaofoQGUioT_t~awd0GhH>qCrmKPIT*;{$ z`sYWxiTSHbT~PnrCo96ZdUM?@$HsdPFG-ojALZSn_T;*Ab7HW9yRI|gSbS!a`n}IN zBb0`(Th38J7N4xw+_Y5el>WhOs?X-=DrRtZDA{WW^z3zr8>veZMG}JO%5{4`gsz{nAUkz!ZO@Rczuf%=m)1V9RZZog z=}YX3ul{D)m{zjhmrA_7ZRs?HQ09zRVtpRVr!Lz&F1lm&$3g$Fl$tEnl;oax6W*PU zx8qWZqKi~B?!MfxPfhFQ)XiI-q&WL}?P|?r(m)t(g;N z(q`I4E!w{&;e+$3{;6|XoQZFW?5-C(+}+Qw*&3U+>&k<+7dLGRg>R~7N?Oj!yq5af z@RG_1-!<_Y3&r{`y_y%KXx@6Z-dNXLf;4<}%5c}I{EeQq`YqLOE{6!X-s35HPc`e0 zIo=eMukZBI=SOg(@`0~bLs=KBy|i<=1)iPsTN2lyRI5_d8FD!?;zNeHeYwejfO|Cl zAHsu66tM9ha?|XXiw&R?$i=0dIhu3a# z)~>wZXjW9{vd=VS{E?j^yZTOgl-fF^%1(FPYU2KlxKNIIvMa4-C7-0il!67*jzl)U zlZxJEDYk)^r_ZnaT8x zzV^x9&FOW{tqWWyI8U&T|5z@Po6%^dF%a&n>Q*gz_+9tnUADZ=1?G{S(~9k)va~72 z%<&Tgmf0Kj)C+5Mtl#BZ$+z+4nr-e4l3Id{rzfhb$S>@yrKS+~#BHjNAr&3UE#AkM z&=zF4)LNr_Df7tS<87VwK5Nc}POm$>_Ct1(=Z43H=R#sOn!9L8i0I8-N7$E;kh}B4 zN;rvlM`rT#T=lDtGi>T!y#*)lS;Ak*EYW)u4glI{7Zf@&`xi z*Qg)ZQ4~{~-}Aik71z)!l5DYbM)yY53UGd_x z@!BPij&?S^jy>a;K38B7k^6j7ecZ^fldE#qoz%?B#ai>{UpQ(j;w0JWG{5Vly?|Rv zy=7MvX>0J~Bo}L2Uj=P#TPJG?x7}M>ZNy|c>?GgcG~C)QvDs*s(3ONn)q}lHuYPQD zeB}LURldXZ6v>S;lS*p?pH-M;%FI`c5LG9R`_UX&@0RhtP4144`4Qfz@w}a~2ZNG% zRBq3FOb@sqXE^V{g;>?Z4buh%_}^S`vY%<&v2z;NSD)v1?haXHr_=o}zD>1z^5K6>6%kjBSodvINRZ-w8Z!sm$clciS%FJluC6go4Cr( z*E?;-)x8O6=fovjx8+cctEcOc-xF?aD(y75v7IcailS5pTGUFed?3z8OcBV||+QCRmLCM}z87hvV zJ~^jP`+4f!dsO$`Rek4skD2{jFYh-AGJV$*6t-uJ+My2f zeNF4!BaQMoZ%vmrKQ6ob-=AFVLDh@)ODMzPt@9$}@ zzBX;WI*-dt`_O0V$tjJxr_Ux1?$DU8GW&cP7x%o>CFAE#&$>5bQ)H<6Ry+O;my`Vh z+I+GYm-MAPj?T0?zNt*&_R^h0^ZZ^7L>#V|($TP@u^gY{i&2$HwD>sWoc`r=uDSQyC#=Gv>j2m;41~=Ofrfw16=OjnU zi{UD`XeYkMq4&Z(4<*a0s^J{_@T1PcgNN3ebiQ3M+`jKh?hZX*kaPKtZFsxv!M=gR z3NQOMTk4mO*bnb(t z$B!fsKc=Uyt=PD$ZI)otbHl_Y+w(+2n(chE8*fSmrG%zLf9g=oWX!yn@^FDy@UcY- zGhQ$GQG7mE`_p2{OYeqwz2@+Losl2kxTO0iP2{ym4$rl#r4DaO8wZ=4L-aOz%zCeu zZti#ddzN2BEPSSMO2K8>MH#Ci?{v9U-L`!|nIrltSguMdMY(9Acx;Hp(5eI14pKx; zy1dJo)N1opsm6Mm!}Hgvt18`ko6OBB^=V5()Mo1Sj&rBV#4KO!<~6lT=tFf$gKxM~ z(YeQ`{PI4$uWw(GAauPv{1I=-_r;k;b3_dY2O15g=04yt8;FREGuzv9(d?5}+0x1- z!v+Dp1KrcCtIx?gtzVWq`IV)XZ7AbdP;PlB^On!XDk3Cp>p(Zakw2$I>`8_H(x{b}>nNlScbz}BPhfa(hGWB_N zzO}6OuD@z_%8hqgwI2?{~$jsEtB-MA|ZTyux3Nr9j@iR=- zN0+WzkgT)9Dg;9ZSDYVC7gsDjdvc2=Q+#<#o615SCsj$FHy7NP!U^LB9;^)ix}i1G ze`uwvYK2TfYKI&7K-`t3I5{rGlMb(&@3wI0aTUoH)c_lDE$0L?-q}t=U7_Chcj+wsBDneF6r1GR zB1+rrFAw>z&h%2gIv`qb;Fa}@o5ve!4W3Q0zDgwL(=-V;#d(SY^>gOlQTYCJt>Bu& zH@;R$94Fk{^y+Gc`I`DqT4&}@KJ~qO-mCubQzwR|ZP1juDr>Ez^4Q;7d3lj+)=7e> z!FGYOmGG+p=GM6(e0$`$92-0Z=dE24akgM}ysOrveCa3Sc+_U5Z+o%m)u)}_LK}+} zf2`eUZ8WD%OUz@L65+trS+iy?e(kKN?iO)yW9;0m0t?Hz^RBB-8A+)nddN%i?bm

647Tuh_6x;ssheDdY~Q^`x3HgzI5ADuqI~B~fn58y;2?x_ndK?_vw3hh}y)wb)Wzvu&A($&F-@ znAP=Hr+>S4ujS2t}@x_56hYuJfE?HB>r_%i>zQOD2_Y;z-X1xpIitD0CZqM(A ziiCDAHOSfTKJ39?ant^6y5#*S76vo4P1kQ&E@Qq*?YTzftJr|+TxXd(dTJ$?yptJ} zuh{=_-JYne%a$j9b$UHsdxf)@awdFa`tw|?No&5ZS2Lq6EdD{e{w*W7j&y43z|3H!Ux=+=x$wu_p9D~`1 zyn9zm`LFAFy5fX^)bV$^<;$O%P}lhu?rW-Zxj{5Czp&9Z$)WU7(RqCtqUy_L^`@Mu z@pkl;BA%}^?N<=05)Z!@>M0VAyP=Z&Z2{lB8&iiuHcTj9-06_;DXLMVCuR3Lxffm} zmo2fLr8zYIB~HrS(Smcugo|$yE{SaLDw478coOOqa(A)+jThmqf@_yw%r2jEmoT|~ z`}##MZ@n=S(R_RKVuOrIY}ks03qH|dPJ{oH=`>g642Zh0R13D+XzHu`OAdwGoa zvk12fzlnUV6miA$OX`_|D$Nn+OEeDz5&FIEcOKj&JyC&|U0Zi=|K8mOL5<7##4|oEzm*=bp!}Y0i zX1%OY&Gc~;SJ@t}Iuaz(ARB9&`Cd_Copka3bw28KogA(`GZHwixGyM^5`lQ;5s4p0R#vPW-r;UDS_zP493gil^ON zDHh&Vt84gj^(8Jr@@Mg9e%ts6ytQv7iGcKqiR=XZXm#TX<^mF`=fnRUt1 z`u)bf+oi%4(+-T7KJIENF^ShMbrd>2U3rNo-CdFTByS;g)?oW3DgCVU4PAZ{++B8X zS93i+)2HaI!M9%6zlw2>bG|Md0=R zKt-EX!(l4*m!k-)A8qvaSytn({Jw5}hJ8l--QEYjGAqS}%tqc_P2J$+mZbQ}%}Hx^ ziTpgR2QDin6~Eg|iT5y)7CMyha@=O^ZhafQ%GO}bc`?;r258T>X>DHNwBFoq?o6{A z4e>eA5;gngStyF$P+zrfvHoSh;MEHPD7D}1H+W0Uy7hfP+A!bb(rNy?%Jm|%3j4QQ zzHgz=SSW@ZQzsjK~0S83D=RxinW7}9HS&Sb}mtarxB_k|kzYhKlz zzjGjaRYU)Z6@76*l@E=AMjQ{GR&m~%dnRw(*0MKOYE)frR2gxIBT%_P<7=} z+Z9h@w_JOhIptW-T`sHO7f%uv^>2AyOG-aeCGu_YC278Q7cBbX{x1WWyHr7Z2Nb6&Qnps`+9Fgj26I~(;pKRz&*XZu6dhGJnyK>*qm_@m zQ(s`bjJrhR!8qN?v#-QC5r(u(4}W+ba5^GbRYO>NUCY!tAb+L{K+${Oi5t9O?uIq2>-y1{Mac+M1 zL!st-`nY#*nQ(n*Z+ZiU)v0iqergzH-ZH?o-Ud25#tRJ2g6uixx+vL$cPjMt; z;;a_YbH^%P^AJ@ps(Kh-yVkI#bp2srsk8RABuzy#SqXlbht~Ib*0ntk5l>H?xX?Dj zfAU`IG@%W|ap?jFgzrsSJTPHk>;1{cWJMikZiEA(mp9^7QQ`^ zkXp7d&g+v>PO4nO^&1PnsHD_oHsg*$fl?oCS-IvIQ7LSX#yrgr5Fm+kpd=>vTO4>}tjZ!ieH zHRJBS`}!;8%|)_?mZe8}Z%lgTteyC6(k-bCnL9c+EL5<1-b*#}J;%N55<%jCcKBS1 z$YJp-xs!EE9aMSMBCQrb(|dJq`CZ2FoSji62QZ*JQwfBC>YdDC}R&n;Jx&lp!a zIXa3?oBOe1cu?&yp)J+=R3RU9l^V2ZHN%}KCz^&Ff3}~9_2KP>b#_2=>^r#=kLxpPg&`w zLSB`T_4I2MdFmI(as6b|f+s^)LTsKKnZiXm*m?3H_vR)(z55GZN#4!Ul926+b}q3z zaqWD8$CXgAuixJmKbt)Bf!xk-9S$C%3QEtX@jY53_{7#cWgY3s%7AjlG{YtB^diO=mGk3qpIxAhT(cG?_ zQ?%qwsZiabV=^h{dzLrkh4}V#Mc)$S8!t|saoICV?et?_!THj|;dS?B_KICgB%54a zOQ-F;cFq=3%!jTi@s&@F*F955<-jC2#VG<(AUt>)zQ_}4%XMz4$=uVoHIwuKzBB2 zwmu2-Ut&AsDn;Qwu?et0Ap-E<_^nZZ)}Q&URb96v{G|^kg-NC}X*4QBLt9fvPg5JK zX&9Xr7Za33B_$_;uT?XYVFC4=41RiI5VCPT7QR|!|19tD``=g3QK}S4JyTS@Z?^AY zffGkAc9+PSrf(B|%wyYSZh4`@z4zh$on2z<>)|)|%%q=0Txd8s?}_PKi73Ww#}n&i zl2Vjj3xt%9|1?>%=WN$Y$)Q!_E(w*KDx4L2hyP){iCV`)V_(x7-&)l#-A^))r=B~R zu}A0a(hn3h#qZTCC3KFcnQTnSo6p=)+i1K|w>5UN{oFU)Z$3*aX@1!@T;hJ^U@N&Q zV5hKSzL@biAxgZL&Zgr@iadR>!ovHicah&&1nIiYS(5iO>FNvL@rG99;(*C|3nRkc zOw$$rJ2b&zpq*KTm!9jC_^kIYxED14y&*!!R48KsDxWPRV(SpK=p@R3|sOKo|P)H{;K=<`DAX3@g!J7UB<&^A*wfWf`pff3#NjTJ-itEy`140 zdXBD~W%hW4_213L)|Ci ztipfQ%h1Dk5^S2&NeQSCj>dXo{=9Zj7TPyu<8+wcN*p*GgdoiL1vlluneZI-KRZ9d z(Q|TiFb(`Y;Z->uf83)uf7Y3pOFMKYas*(InJ`Hi z;iLZP4HY7|@)8Kgp)B<784%8f&=1~qG6%jGaMZT!=SKiX{lUg}0*>Sl z8!rJI`Teu;Nr0oahhH)VIfFcfLrD}Wat@Ezq>`gm)rj+ri8iLLHUVhL1lU_Tj^*70 z`OsOF-}6qxPa5C^77%sD^5n4cu*+Zj3tj>^@-;^nR1Jf+WmW{7kr4x3$c#8D)5s_; zI)P4#QB@0sWn zh9UluUv&l0Lw?nF0g$Zc#G#r0XUYjcvjbzl1hIHef&+!IhoU@nWuNv2dZ50fktDGVk9Zo@4{8q*3GQwS@O89L2k zMhbDIB$MHm3mN1qImCgKXio+YcDTbLj0m#xv2HojX|zx*KP0n^X3~>v(NV2m%Y*_w z=@cd@h>9_M_InM3%r|8qj!z&6!TU=BAXzg7K$I1tzK{Vx_iLcd&H>y5=m8i3n4I8A zAOh$EI0E3a49)liD3MG|2&Yj&W@8ek9-bpUkIDh|O6UaqzZpLin%3wMhc`gW5@_xk zkIRmn5Fjg3)&JI7Ifw@aTtvn6k3;o4L=xCfsyfn#85H`lumL*vL^wx(_gNg zsI)N9zx6eBbuo1+AOKF8#e+r@K#HNDR!{LHm;fE57h~h1&Wa#hZ$+p-Wku)&7zW$| z@FIW#z=@}=2r&@W1HK=g*+4u7;;nGswc}9xMR^ z(_+xPOCVFi!kM6S#$o=3kdy>Ki-yxetdtadg5tCC1-w7vGu)}TPNxnb;$zNmdJeTa zR0UBbL&wlUu_y!d6wr=fy#abYQWg?G#f_ptA3LSJmaO_=t%tQWrd&Y-V{Hx6!6aSn*;=!;^~hvh{7f5aFl{aDe*iuL=@`FWnC?lK2eh98 zj00ffpCOL)05;AK4T;*Ajo$+t^)Dx`%z=0P@*Lru&&5C?K<&iNuL(G3c?N)^egG3h zWB?^3af!AcXH#MABbR~qks5>o9JKTyFXDr2+VcTd=fF(?M>;0^xh3F44&3S&TpMsS zp4jPi0H4Nzqvxou?B@!AqrPY30)V4A%f>|jN3s!JY~4&w)S6&TW}3lJ0TD@~b3P-Q zS)=)5fiVvH=;P768TfNIBx|sz_<*-%SVqM#ldxh&(*^?H=A@k=VoiYgZi!8IOtZA2 z(LHhg3o{}Bo1<)d2#)=fzaH{iCW2zcVz!J(N=ytn1RL|5<-CD(ZZw($aHTQo4ip9w zjI0|!(d~xzV6!b-2Gr2h8BGqSP~D$v>qbM(g7YI59cU`7Dcpfgvx>xCj1&(mLexh1 zYy3>dHX3ga}c2-doPK~ zK)exW+aNAL$o?amsyalVs;~BE#NA-c3n#v5VEO=QF)9>rIf#@8s4!M2yab%CVV@)> zhd6?&LY&Q#ZY-GwrlE+qs2E~6DBNT^CJ$KJ20hyoTT5?+a6F7sEcd8>^BWcRt7{T% zKx_b~s)BrIJ#_{`#5dS<{OkNA>(&UUH5`V`F5`Vdv?F^hjo~@dGRxtc5qxicSLav^foyOVP{# zv~&-!qLRYq{i^z4>MkwRh^Vbj)KMqusuT4H+gISxOw2gmD^N zmq3Q&1Q?j0Gf<-9qJC4We$@~9fF9EM~^%ZS2H?O;mEC}Efae@HkCIv-jd ztA-KL2Iy%5-FOI*Oa@N*n?4vq31)&^{;iH^pp-y9G|n3#L^@O`)^_m046N<2*AAhP z5iekAR!GC6Bb6VP4AEiCaGWaPG31}~pXs21i;l~U4n@$S5Z3|~5pR8cb)q3YL*d&U zS@_sA&%t$ROjd%$0_=or<0-U#7$ukp<0Oa-t78~zkQR+K7c@H(=&&OAC5d(-VGpE{ zg*1Oe4|{h|{use@N(_7>0nu!Q^fUe>J>G{uXBdX`NPqYv`lugZ?E#-JAX32CNl;z& z=kJEsh1Cxjn>Ql5L3(5-bVYI-2}f+8LwB=G=`bA8f`aIP+65#bGz(EX5nJTqeFg86 z4K&brIRYWl!`S?dCEm?h;+c$DyjVAZlq<%2&_{#d`a61%MIFd5e62I4>)_c(^Yf0S z;nbJh;p;Q3??{kCIB9T}jdT=N_1Kz_9Y_Rx;R?zSXWDj<&A+6zXNx=#E@;VyUF`Sz zyL!@opo=bcz8GO^!YH3cgAfV@b5?LT{&pd(Le0^}2m2AmPFXcz(?NP3+hB>NBa4$E zMuzy`FMOosq{X$V>O351t< zo&<9!buIu}lW^i_&*$&j_t^Q64Ic4mHf|4bB%@qN2`=`QV^bIQE68-HMu;sO1`Pu< z7h6=bEGTGKh%F4*IwA#@u^eKMP??X*g=-K>K^ecu6{N_;kl;l@48dBMHJf0M2{+N; zdKp`(8U`Bkfrd?nJ^rnna4?*}ADC|9!a&u-Xn-Ll42GE|(JdTV7g$OSW=8@!ftm5p z&L%SfeS$_?Q&aD6bx{!7Rbc$4t6<$j$Sv^1?6cKSH+=v$egWd19Qaj;qrE@&^J~B0 zHvmVnm;LU%cM!}W7|UcfoiPXrwC zcy@ZU--d7oZu`T!98&}TKrhBS74N@!$j-vjtLxX``b7tX$bR<$!toHoyvBtrnm)*S z2OkcigCP;O-Hl1Sc|>buvr#8nvi9pi{s|Z2d!Gv-M6w87Kk-0(__ElhD?YZ|VDSFJ z-~ZEkyoTr3H8WlgGzn&J%7N$TVwa2L3NnrckeC6OO%!`N_B>DMCtmhb-rv^tzvTTp zG7<59bg}D$WD#c8!lpFL6qq-3WD#XBv8jS7LukRofLRD%GsD+dm>pD|oe=I}H<)X2 zAEUhxia;4BARGrF&{mnLb<42K|ujaHPZNlVNk$EA-LioD>X73#KF%h)9K)v12Y_3 z9YFeS$gcq*n@#}4r*YsXA&&e7*w4@Xf-iu{D9`cS2XK_$m1X${yFfHpWkKWw(_)f{ zaWN>0j9o-cBBuNy8N!x9c)K9goj@(Z*8>F*$^y<7hqTa8Fo}S?gExY0LntPI5f=p} zOPE9<6y$#c>qgx8i=-R-7IXlVgVRT^j+Jo>Xk%+p2w{mz_-8#ay0<}2gwLWOT?X|C zaRaV5pmC1oCmTmLTr?KhxCz9O+(H+dUofYP+V0F?>;qE}oKEJGj0C4SC>cpk`i z+^*=t{{AD%KALs(tB{;!eRZ`a;HoX&D460mN{FqNvwIPBA~^)aVrsP^BZOiY;?k~{b`SA%!-D_2YV1Q*d{?3 zhOof~>tJjv53>TYcK4G0)TW5r+3;Bjb> zcWop{pLHMmyBT6*EfxcHb%VkMBF+>AB$I=H}ty9Y29@;v{~7$$~=YJH80e z{-_uL+ABosWz;uB0A#Pz1~3800Kg^~8uaL8_yAC5B7g}%1^^@&Erxg8Pvs!pOc?;# z7m<8HYd&O0&;ytUU=H945Dbt7fYymTP!g_9NTOLG}VT z19So2Y++3pu(T!^0)zwf0B#x_44y5c?0r0Zztu+y%Bv}hdw zW6z!zHfDQ-+c0uL_l0qZE;N-8AYOx~#ciQrCV=f3lwvH+f8vROztH3R0DG>Oe-8zO zd=h52CDTXkqbx%PT07vw23)<6-w{eoA>%A-v~C=G>aO@0!#IsC<0or3rXjI5DKY00 zeEq?;a^mhkm>S6GV1<02{CDAN`Ctgq*v^L#t<`_hHaXTtd~jX?v7ahPhuZj`=~TGY z8YhRZAv=MNG0;Kl5oD8Oig392OESrGC;*a~4DgcSf%WNSh;fExf6U_QWOfMEb^?efe15^8+R zfXLcsX4zH2pA1j5!Yg%_5+U`soOSh!4kZ#* zb#x6QgTPe|xtl@$VW5L#mC7D`fBiqVH|tFyrwyb>yv%__h2;eLfcURAW>@5-$X@*u z6ENEaSd1}C8QUxHPkj?H!&V}cF(1mPfe^{?RtVAD!R=!BSO+UiBKYuO9Zv~m9atce zPytx?CXkXei7-Impa3{ezzPky#lg}EegS|%{xd>Bw2&lq)}X_M8yXH{t25NJxG9!x zP-TCM9k0osm-t7`8-#q>F(VGN>%KC)f6qe*Dgt(~=OfzF!TQ@AA8=?riV^%JU3bv$ z^LDhKSms)MLyj%E(HtGs)i^wq#(2Se@UuZS1>8%>p0%+sRywoi1n0Jlr!3o z7)v=uvx?h#)Rx4+EA;1SmDx58w(dDbkzIBPrhg)X4Vj&2)DdiZ81R&EYl0U*2>>4g z3fMFN>LH$r;t+a4SPN-g;q)3M6uHLWyUDnx0Zd7xlE5^Z2ZM@bzCqS=O#g7+huhoI zAe;bwVuhWaLE{Fq-fOW&EIwG#7=!*Ug0zair)7<3e2}4u+5qX$ydR^9E#=|V1MH(9 zwF{p0KpNz;f%*y99j+8|?AanE3~?0n<$sv8$UPK|YYLN{fpf>2jHzw-#{MV`NDd_# z@5lG5|0-Ju92G#nSc3CetWu+rjtMm8L0#QQbYQo5Re#?50CtAktFh?;7@Bn~281y@ z)?P*^+60C7Lcd+Xz_tz9bCWUJhhzI4u)~k`-od2{CNifvyeE-vUai5`=$yxcpBI6ex2y z)B#Dj<-laox{;0Nvv5P`8?a_cgTOTZBjTC543jW}?|Q{lc_6AqklzE*gD zxQ~D{UV9PBXvTpv-T>)0pTmJOUJqp#K|K-JT!8k0Iw0U37^{2CcaY-%&BM@E5Vrn+ zy#@%o07sDb1=?c}2hKR(2-FYmBjAh|!F}ow4xDj|Z&1c39600lU#$sBa329@+~zaX z73ztg9pV)bBH;Q<#`5RCY=^KGrH3@#5VwH18^r&cdU93$Tu+!bqw=SMh-N$Zsj}`R zLLJb>mQMo4Hn`lt?vCA0g?#pyBO8eSQ0U-6lZ?JU+7Wi+rYXB>6uhAlgz1~ z!VeI^xoCVfIaW^VIY^H-cHv^zsc)VQfk_H;gr6TGfvQh|^TJLPaC2gTDbQh@z;6e{9XM7ZtsDH>Nnyx>$;yY3#O(Tr z|F%MZz;pM}Zy?}R$8KT8zz;fsF(Nw50_8iX z4xDjq7bwFX2hO@6A$?Ic4xI5?D7z5qiNFHtAP03o@Za#LvYOv{6tZbyk$Id9ZC9o)T zF46=4`9fHbN8@f#F62;j=#KLSEVyiF45s_o>0n22mxG^AITCFnk5OJ6M`MyKS=$KcHkb|V(P9vcHJCq~SsVkt0DxBW?2PD+ zIh_Vyr(jsXPu~TT(Lo|~8p@s$9m!x-0+EV_6`?6T472Om!%hJr4F(}wFwG*g9u@QUmG3#N6^&k z1nK3-MupZ5XdS~2(Q}jzrAKQFv>%1;p|prD%8TL%BmvMf1Smavj`AQJl{*E1ofegW z;%J`%#Y@ud30Ly$2}@xtuK_3qs026*&<4;2@D-jvhp-Re3&4cqux0^J0GJ6d55NIn z2|z4B8o+*_n*-rmfb9VL0L}nh0_Xt90Uy#H2!{Z;PXIjtB>*h|BLHgv7XVLyq6?tA z0MrAt0qh4bX|W;X0fYb~0yqQ6wE|BDFahuaPzBh06Y|~yJ_t|&zzd+-ZbL`~XoYwi zg!3V+fv^YC5+NQ4@hcE7gm@K%eGqPjdwjQnmqKU(@CHB$a4&fFZx%~qYi=f8D+a!m z0AC0|JjMPbzUGzzr%bfA=ftOR;DWzAM>u+p$@9Ox$oijMlTWULeuFx&*W~QFZv&>N zgzDyG#WIp2`xY|vkig)}VE(~Y9>HLbrPHWHWFY}v4@_^WzH!=cX`n#I3LU-!v&nCbg}*s`4q!B9@{S}&)MB%=G$_%b zYG5A+_d#I%sMi>AVCxG*4uwD~oSaC+8w7pn18J#Xbc+HU*J*suBoso#gV||W zokqxp`-oq&p9ex*J>MRa5qsbns_WlSR$v7Z5COmJirKE!uy^IzEzYsm z&-n%awJssQ&=FwaHIT0x;{SF&q1_ZDulXABvnRV@{#e4;XXE<-NBih({2bs&4`bu4 zfa`JKR{&qYf!_q&hyz!I`No-l9^h!rfqabq(=}${g~b2xf-3xkL@-=9SF#UZ7^BRK=I`K0m-pGJ4#xW3}t8wqLZG{%min6;Ens z@3yw@R+$bhbds5#^)q79_0OW=*0K~&^IFMb>*`$+GjCnHX)SNJePCtg1e-G7bNy<; z#x^gdW#)YGquY>59yccr?zKs3l^W_e(q&_xcHR5JdlB1WU-P~bkyf@B^xWQ*jZd}p zEvY%Gl3i`fXx&w!^ZdE(8ly{mOZ{c-wuUS{FDSd%uHoB*_?x8VcG_th#H{P;>=r~n zpi*o4?54;a-K8p?*J3rNNE?hLlq1$IcNb@4kz#aV#X`dHG)$&H~ z>e8~e_}J9l{VLdAyy~O8fA?m4+3hi9aq`#g*OEe4Qs_JmgP#|^;&C!`pbxKk)*KY= zU_CNd@YJ{64${f3H`GqwaoD-p$ckAp*)e2icX{h-Ge_f=2OV{q3627DH{?;iR5HP=~o$L#gu4;!3=EO>{viVr%cxQ{!|wPfbvDED(B zPZ9$cx6ah}kls|ZIN6}F{89bI#neWx%lr}qmzI9bGX=8xE^`mnMbW2ITw1)eK zp6~ti7&Q*OUXccb!fB+rUgymS1C*0AuTyFnhEH#mdd<`?xp1$w)62lrCQ)QW(7RDp z<8`mExpzN(xJ+3;(Yta@ypWdZA@3{F2Pvm}o_a4V5o><4Thhm=ReEsWY6l-(dF{_O z37I}il~U)(il6W))>tww=-wNj%&%VNX?)X{l+M#C+77>Mo;PXUNpp?7C7WI}yV`AU zTw+W--s8(Nw8UZmv+4TTvwXE}uWcyNCHbb_H$7#OzQK2ii)gRRqf5R?j72wNE))Db zoga>O_^$64)xE*yv2lc7^C3TtiqI0jIGJOHo*C_aqNJzeqe>?Fm!~=?S@4?pcia!u za39C?zan}v@!|X z9u4RZm>Bu!!OMWRCoWrh-j)v>aM`)qqs%3+T4kkXh2u(?9jZp2(@zI-Z}QHLH~0{E z?ki2Xy=ew%VC1sqDuyp9F>T>#gVwdA4&OEE=0+Dt0{TZk-D({ntt7N1XZz^{9Ux?H zd0s;fY9~DZp)h@0P&V;>fa_peP+3p!oc+4vg0Js>Zt0S46x_J{aOCGV&>)X_-^pdaJ5ec>cSxxnm#hk=U9X!9@TacvrG!{cw8Uqz436!Y=PO2Kb?LS zV!p<_GpFzm^2gj#>dl+#ha%Kq4|1$T-NCRX3*-Ou2v4%r2H62#tF2Y~3jdx9w3e*X9`%)ZB;?Xv%G>o;E&u z4P8S|;o!XJEn#0Dx!A=$RZd$r;YexM!>6q(t)7so+oMX&$wp+X=X2-Z4JSRRw z?PScWBK>VN#`_qN2ZToD{fe<3Vx~G;>%3wkz1M!LJ6;g`>`wASecf}hUHQ@yP2WGo zy7uqfM*prsZyz$>HQ{U!ebqqGs*BN^=;bbyrSk`*GV&d{8CT<%v}r$`%~<9} z=RLiZ%4lP@Oh5j37lYR&sr;E&2V=!v&y8~L`I%y^Ll0u(Oqo*2O!sRyxmgO^C@F z(QxAlNSL8}db?QA`h=>bZ_aHoYEAGheyML_`#s@vlkl|Gx4Mb7AKlc94umC^X&*eA zvwlZnn7>_&LF&y!t|8wmX0j8KGWD40Q=ZOG(ka=mWj~poWZb%L-p<0kNe;;glUnq< zl42@yL%)`YBM93f|Z_nf6X>j?)JJ&0QRbcua?BTetjlNsAw{ev&LU z_V1z6_+=Z+S5se(9O%F45G1^@ePZ}@YGQJky1Crzr?X|s&7)Vy_I)O0_k};pIW{ad zeYTgO?Z=jy+4*mem3+D&9HE%sAn3AprKio|`mG=C$mBTP2`w|N-T7#4p7zs%B=HG* zMW-(2(s*&CsAEPCzoy8ZiHk2U3qRCxqVDvayN^<3dyV$()_>doFknMS(v$RW;-^}d z_YC!^q)UtRYAoBbNo06(hsl{50dmu_c-!zMWx4gS5A`+|#`JP+o3(4jwrmOW#-(bH z_kNtVP2A&U@nIg(IR-jHSMMyR%&K42x#`GFxzB|@3-3IdGi}wzb}OqvLCG%+n=6(t z0$!Gso8P?QM;G;5F*$j@acG%-#m(bR7qjH6i|-T#Z&Fz7r)aiLVApoZ#zjdFG9N9y zm*%uha8k`P(eR2TK{qys%-s0gUs9MjSHZRK>9T!~kH526d_>gbsD{*m8BW(+9M*Y7 z>?_#6rO9)O>7J!kCsLeM4tA#98*KZapzlm>2)MY{<!W+W`};_{l&Bfds+9Cs>}-1d zeUXjWed%|FAH3xYi_^nbkvrxJ2dGum$e$ar-=w>5|82z~=_7UCe$@sWjVqQ+txI^- zET$UtBu&M?e3OT*{m8nNJA^0i2*22QvHU}yVDj*ZvJEl|BLyz6*FgbYQ^U|1xb3W(x-7hu0Q2I z0;BZ6$K5l(sy^=x_#R_>his-Pdv)> zB*apdbtQw(^x{vR&Pp0T&$An$SMQ)L;};ZlQ<=NG^BaNn_3 zY-2WI{M)3NiZ}L6fAk=YDeN&pzx2tP2RD`p+|b$h)m6rlI@BY>=-#Jqyl=qbn~-?1 z$FS>DRe4vxO)h>Bo9+q+dFG$wxlekn`N4UE@Yz9`9?Lx~*KHi@y_Vd2u$R16oEVu! zy?ZM*xbo=}$*BsaB3DIrR;sR$+iAng^D!iNn=Jo*sWYyTRnN!oFjyo1N?c;MxbSGh_@7G#b9hA+E;P6>&fS*h%+?(e(yy*YT0S(K zJttuT<@+H?(MD4VtKGqk9$sE_!A;d4Uhj&|Rd4yE>~!vQ`M#KNE3Cgso2dXyC}9r)tOIAP-A=$1(?XP;m97n51O z?1n(bz5a1D!7bT$7YPrxhi8frnw>hjpAD1@iptDNc*}Kg3+1lJ3As;4KiwCrKcCB$ zBlfP6xvuKG@8`q9>JuM^?|qwU>(-k=D^fiwqtxE*TI+eqNZ5Vr*?6L_cvif;d0^7K zAjZK%Km0Q!M2b(h-UuC>wWC(JTKBS^r)+vil&MQ|eOln;fr8z>kHoJW&kegz`F81r z@wraNv~-b2xe4_1LR#f_w8j;5YyObUxV>%(FXKZ_MP9@L`Lkq+Pzy8LHr2sf9>(sQ z?SAx%l$QKI_Pzrwie+23XQn5Rhn!(VR6ueDK~YdiA_@u!N}54Xk}wDeDoI5_LB)sx z6crUS=A6ZdIcHQ~-mq5Xlb`OpWva^RuF`088M5xIo87!^wKWQ!=VCtdFK(8Sj}P=6 zS}mv3$Eoq8@2vu-b??%X`xQ&8)zrMRyOS<)cG`#2$1Gi(74HssdHB<@%Jm8Rq*v^Y zI-~Qnbl>^jm;Ac*T#z`$czBswj>m$;nMvz4_T29&XcF#FT%MAzA(xl(xzMaH=f#X^ zx~gN!GLmfPhD!Ea%xYL^r~a@`ePQqy7xn9TgP2WIjg`D#4c@rr6!DmA$Glv)q&s); z{eAGehrbk{4T-B7f zk3QSWF0YsM-mUUc!{%5bCKB%r8fDssS~$8ypa@Vs*+y#z_o4Nu&;C9Z%_Mp@R0nRO|4gc z^wT<~)v$Y%UL;@Z)-3)2ORKFk)uvG8ojZ5I$C+C?=U5P}D(LzB;uF0URx=zzRmo2m ztB$R1(YU6dox9A$yDDZ((!o-#v+k|~RF^%Sbz`Q#+Q-%>Djar9slqAd#)ESHvm4FE zzmvWtJgLnbulFNq;>|;adPfrn8C_N-5BQujIH}Nf!)NU5@%v>I%f3!d6ZRQ)PJha+ z42954ogv{rz8coZNbI)Q)Y5-yq?%;*xsqFIkdAZh zw#iQS>jabgYf8@R1|`nAG$i1w+UXAmCl9-SW9p>$<^B3reN&WbG^?pMJ=Au5&oax_ z^v}9C^xv294qHUoep5NtdU~FEns$hW#`#`*#(dvMI~SXx6jqm+v01`zzFN(Jv8$R! zbC;BroZLF#way1&NxyL~%rqW9pGfwi&wLhQbl);x_r21K*S(idyI8h+YvWdfvZ=?o zw;nzWPw=D#ReSmftnctK6?f44ZzW#=`6B$Rak8cyT)LTdBqp zZk@3V!T)k5evR~;;;+SXG{9col9ykv7VKUR&O`%+HNxy(C0dcTF{ObtVoaSKjdk&=B8y)ELXa(Tu+`TW${y9s@DXY|S$D_=Tq zw3f@^EaT^qi~IJgy`|}qQs-fH-s<46U4sN|(t}m5jrNT%x>0m?-5BPu^NCmF{c3hR z^$JjTyWJY^v*|^y)_TWJITGoE8IKqBSTn2PlFGjCC!()~#a_xv&wCZ$)K9_aD_eGk z^`vJ@KVIc}X;^9Nl{iSn7Ml)xV&r;h)_@Wvt$uHf7ry-V;5=_009F#)V#) z+-uR!RZDGG==fje<>XJjyGXa{vybw;DQc6s=A&(WGe8 z_|?4@`j65bb%XF-6{IhH=8vI{`EFjDRo?iQmL!zksraQ z3`{d*xXrHf-ke}IpFe9XDLc9M7WHGxWDnKa1xqFzET3>zuTbgY)4u1Dzq)e@7ghJV zu9?W)x{{yP5G;GAs)xVyh_BunN2dCQHErpead7wg8{BY7WveKctoMh{Em&mS_#j#1 zI(K;Dg{a|CRc`|aZ{_bTZq&FNRIx{PTKArVW8d%kwzfdoWAm>0w`y~AV!IoLE|}&d zpR#q9?gxz(tyT7wKN>kDnxBKNZ#UesZPCH`(--$(b5)EpQa|qNF{f(Ly%mZ&v1{cO zPX_AsmY6*0u*r`-HR;Y;6US}xd0W;Rem>w_Sb51Jm6MGJrGhkmypT|ocroO@f`a3= zmVv>eBiG)`lfAX&`zx(8v(3kE@zk2OwYIO~`v^VNYd3oyXpVnc+w;!3lw%kt|o8zEySR``gQV?0DoqzF_%~^cC+Fgu_2Y zB)q;bBW<8rrop1&I-@Jcy#aUa%S4Q=k zIx4JNczMo-bGoYzzuo(Knx*oP>LJyo`xDfCmK281ygX-vb8*F|ClNtP(vNRwl&`zh zc=q@%|CTUP`RH(WquW_qH}yE; zWoGtXUfz0`%!WDEFO(%NC~TkddZ^|JnF)=3N9%5klaw>CoOxS$dByAkfvWm}0FE@z z;Myel630vhr{)jFK{Aid-`@LK({;hZyDcA%H$8IRk@)y@s0u?~L1ocs+ff?lKK9IZ zcrH)YYc=V&j4UpGpeJQhv|6jS;c20^`NP|5y>eEK?)OsVPWN2rZ9!8Xzg~6GXPc$J zLWqOC+0J9{>hL(g}rc zZZ{KlZs;lZPO;$TEIm|KmQrT)oM<1FLR$e`@1jds)1oKDypq{qoE-=Pzx!u8qlVZ~S<@l!WE;7o9r4 z?9#g;#yhzoy4>OPy*(-hhfmeo!K|OU`JB3(&FS4QuM9b_5^}kr?cFM++r?KxyU9s8 zD{Q^f-6}YTd-R3xl4!4u;l4YJSkros(-^zgMQPtEJs+2l5#z@l=%(yfLfkK@_mR5b z;dY?0<^^}y8{*82JE{uq>#v^joG7h%=O9rQ>ptji?2LQkug_hryoGB@1 zxA)f#mEY$0WYQT)PNi#`{d2Rm+ciI!)_-?c<=_|7Hecs`o`K5f<_5Fx)u&Ttw8?G% z$k-=u`fBj=x!rE-^=q5DOYdrkR<(*V-Od2!&$+szHFJ?rJb`dUA z7&*7~M(yWC&nDcqkGL@Xp!UW)XVYZnr{^7=WK!>Z<*e#RqLQPi zr>C~XXI%7BcLUdbzQ)yPvwb z>CwmeHqZ6tdskiUTgr3}@~|E`UC%jQ^T5n|=ag5pK8iao&&)adPC2stX@b1kj~)6k z{q0Ko%#pubdS&X)pvdX$6q_C=PpW9iK9#katMu~nmEzC7b}Q0Uq_p}K-I=&gm?Cq^ z#aQi|eA+3CXT|!T-|Tl^J@!%1aV-;O@NO4v$~Q* z!Ya3PckPSBtvM$*xn*+Q=OHpvMndI zPLB4m)dDrz(t^9^qHpnn8W+!lr}lao4y#u`CADsC>NP8l#g)?uGw$qF8ZXhHb84bt z*=*UXhp%id;Xb@u#a|sTfbdY=)22OThKBmn?yq(}q+KXe2wSqv!a;fSPObd8-WL;x zq&(l$YtA?BlMy9rcW!#Bv1NavhxBA4&H7Z=X(s|+W;934W;-w1uRPA)e4zRdIYf|d+Q*XoyE^GF(IXiysn%$pYUY)nGNxQ#_?uqgPIy$F98|CCi z&fa!GUT~Ej&W~K(rm|z(O!uLgTEp&@4)N7`Y5CA#&NbHU8Wq{e9utzE@`|?eZcSt= z^-;()mCKpNES>V|LeRTDe!aEN9$G_NVYlU6X zc?m9{pP{v1u)+RIeqp2i7kSul?p4R{0(7GG#19vxdFy6}cPf)a}^yfNQF z9&gZVihTjKf;Q@Z%8NGa+x@AH`=9dE27Y_}W>FjY=qL(&@u&@b4KZI*j5qe%<@Z|S z4Sw1K?WKtXdBKfRqcVA)vfJnZqW;g`|5WPS0&<+(02oSxG zX`8|*U;y?0T%O-bqW}Wb`>QXS(VGGaQ1VZbV|G2kfB`I@b*GlWr+@=kzBoT3M~4Cs z;P+8&^j$BC0utc&7yfbY#={jDP=MZFS%`!GxzEorumH)Q*)iDg(9SRnFhK8PU)ho! zCQs8a&;Z__i;#3FZkg>x0S>^j(p;u*b;bk=cmVPhA6fkJJ2DgiL5s+m9+dZ>qVh~I z1|rB4y!wP5Di^QpOTvHzWy0Xexy_~7Gh#%*1R^M|-w@ii59LcRKtbMRi+fR7|N9dp zDWHNf_pZhc&OCov849qV@#;)d!oa&93^){Ufvf+$;hc(srPZtp7{H+P#-V=7vV}hm zH@ILRgNC*KuuI)^+CI;(#DE5F|F|Bm8=n36xJLm48;W>aFrCBQbD7A$s7k2^&H)Z%lW> z01DM(H!Nirq-qvcN?{;{mcyxs1_zDi26#|_3WYPfRg+^=QZ{LdfED}J+%GzP<;vm+ z3SgmCGUL_W1IKe$j;4SX^67?x`i<3m_D*FCxKO#7Jmtxa$Ic#l6!1bbic>VC=cZF} z9~WZ)hJ4o9=0^#E_BECi5JQf{Pc{rF&L1cVZHg_SXHL=rcer)!9A+JssCtJ z_F_83IjiM zZXbV{9$|4+u1*RAKol=o^VRmZo>si?gMlEbi~*A$7`E;WEQ!E?5bXgTvb`Pq3U@El zrhp;y?q1$`X2`H-3<@BknmT;YQ^)c(58NoAi1w`aQWsC;^^$s>i2)-DaZPh*p9JqN z^q_zvD*08-*~y3F`kRRWB-c0ESyV2n%Wr*wfh6*07fy4YcToFvOF0IVs7!8oe*Tm3 zvmTigutf9XXs(Nf)0RcE`(l8J{D2gtTAoyCt2qTUQJyzXoqTzL=6p~d15PwczZb3A z#_Kjng#w<)=X|r0dJw(-=G|5dKvC}gm6)S^eEx;u6c9yYSLu9#Jj4JMbvd<$7nc*h*1RdeKozc{&WrF<=Te@4jHDSKaC=YYc4B=`CY>P<~7N^Vdf(z(p~oIM?{bD9J}XDWHqmd|}1zf_Ku3 z6Dh!p&b>3IhJRM!gho-o7X`(Pv|c;4&VHII0>Io{GIGL`)tMhcDIkn?Pu`8`anCP& zDYd|W7zOjnf_hFE?K7PM#;7{Y+pH(G=V*2Aatx5s5@>Gv$Wr|3n?wO+6#7M|?Kl%) z_e_=o%&1(N^x)w>lW8li6ky1q);w z*^8SCyfL6gGi6ryp@uasLvEU3V2!*&T*Ip5@5Q_e85m%rJTiY>fv@Av=p&;r&_=^{ zr+Yw>+l2mm(lFqLoBKrL&71`nhCLsNfj3I}rQwy$-&~%rjKu&Pjn9Ph`kTw@-#$H# zfjC_2{)O{pPCR*iPly3IO4-8_zHn3S_Ee&PIqL7`4J^jPdo0d%;VKC8gbrGgLX zQa~N0#XFbH8}8e@Y27&t*imnL;%YaxE`G_}DHyn;`!H@+&JmwyZ5ko~Pk@BU>cmwK z4nH1+fjnxPyuO^1_PSxVbOHwS=y;oDw7qD2HkzP-J&L;DgWAf+g{B;7!T=xD7wP6x zJqPZd*VI4(eayY56!{cv4_2W7KMGC{M_cKcu58w%fIq5I0X9cAd>!;Qf&u_(j~&@< zk7P*U_0bd%NP$*m7$uYZ*7M^r3I0j*@4UXowMb#Wkf!8Dnqlgt{U;_T=S-!EQfJR&e%L@tS0aGjUEHL0mY0;D;1ue!auRLqTz$0~?p@BEGGgq(P zvVsC2J&!OQ(j&OAFqi@&DXsjTUe-8aOG0xh1|+G^n6%h^oKLCL+YuO;q+8-08b_D! zKX#`L1}G`+)7{N+9U*^IPXtt|d{K9H{)Q0~UMph2l1>fx(wJqluJ=r)fJ=(sujNd1 zeKV`6=miEasX5N-?q5>5sUevHGU@Pb7gmSNY)Gzm!hj})*5msh@7VaFSdRiWskT-d z-6>nx&89a6aMISlL(uWM)JV<41DPDIfZ&&=Jvn_gi+l-Atk>P4G3B@M4q zz`!W^Pvj#@jUc(P0Te(=*^0IJaG2Ru7ZVC7rTK_)ICWWTuDcTjn3BJBV)FtQ^N)+Hq-N&ffbk3vm zmu@Fv;FWITQuF(P(vP~GVPgQ6qRi1ur3AS^qkR$>h^6NHuJpF2Vq>*|2#|GUBJGUq zd8G+U%rG!Zar!mdB!#x13sWh8mRhApj@r#BTaScNKrJ1K_+bfyhQ{B@pa5Hn1vNdS z)Sk|~s6hd@R2%!em3a_soD)s~xU^HI?L0GXZ}7WJ3dp5!<@u9IC)aH^xpxu+x>To^ zmEPVpOxMAW0(NQpyV2Yg=I>yX=wX1DLd*i%og1lTqyq)?QaS!DyZHQqGXvQa;7e43^(v05}(A0wh zgvpm15vytz$HgX4z%XSGn=HweANhm5D1exzPq*UfqgU>fF6vDI#mWt>>#f;OFC|fc zF=a{X{(AJ9ySZ`{a7<(Rk?0ZSqhq$ubix2K?z*O98zgozbgRx`AeqwTs$^yFRVR8b znnD4}7~avd6P`Jy=}^EjE+h0<;<*(bD$fUCfSJ;XPtD#_Soca-`eC4%`owCpN7|gL zIWy`p;7qrsR=Y~!+3{`u6!1*3#jQs`zys?C>qlS!np&TQjmB@3kBv~GfM`0;w3VHz zhb-CI@B{Q?&lXi z6p&3NX03ngiiw*F++AL1#nZz*}$Kzztix_ zifI_=raAZ3m|M2;qg-IoC&N`?Gyc>XRt|oTkDy@1jc| zPMXP5Ksfo4_jQvQNxS!7?n43Ms;<2ln&-2|=#(S|#%a8+YuctTY~7vxQ5Yb{?Wq$t zCZNZ#%i}1ZoYGbS$97ZvnrYLTFknt&PQR1=jRiB3{V3oZcS4cv@YKFBzV!tdK&Rwm zb)u*8oLv4BQw*e2*K%U7kAGcxnih#4+?OnI7QgdyuwQ#F7B>Zy)m4}I*tYH|7eYz)}bTFk#JohWE?Yca>bJ%vLDncVYz z`;F{F0r*r*P1s6PWiR!f<&A-STF#kyv2rot!8Z~pK%aN%n!$d@9h%P-U|^q$F1<+I z!1_$%p?D1N)AS4fDz}8^Ji?9w`pH-B{p@!*y3lCa6b$%NR;c`F@HWRRrKbq^CpB|P z`t@zj61VPP03g@rb=yr(o!L@zE@L2|vflHy+4lvBbKVWafIyAwZx5$!=*RlH%L@Yo zxo2O$RatOp@a~E+7$B&0@cG7&NypWn4WWR7>b8lm(~ULEw={jlfI+USchutDyp}t$ z6mU?<|KZdr&kXj<=byp=LUp5?x({^T8>$#lKtkO~&#!vEx4Sb$g8~#Psz1utZaV4v z_>lw#7OLs0z1ENYT%jIB0St8%-zqFxt-;>9dkY2{D&E>~Gt>JqXW5!k3^-Jsvp{Cq zN_8nl5gh{$wbLi(A7wN>4`1>a0}vH%E_=0&tP0!Lb{hi`Rb|`+512QiTjWu^s(KvVR+S|88+spJAmu#n6&89JJbsram^|Nf~f2OuagnX54 zzcI=C?JxBmJN%p5mVL?rs1deR@7jU*WkG$PO*7|yGwYTX(pw^S z7NcqQm~~D{Uos3AT1}K<$C0rXwwJxsKi%1pam4SUdp`5@!Q7K8bnis_4hj5_Ws(xP zY-CcOLVJ()-_#2K!MPq!MQI#`x)7i1 zfqv_Xe%l%X?2=@1M2EuI{SzN;s4WTAKCkQ{ORnYU+PB*()CB@BmIkqA&KA3Vu*XB=q#lFsk4m! zNn4Nk{(D;&mkrg)pWD#i{-RY7$xjZ4^K2|^O&#!W!=u9|!SD6auUWyoF{IfC+>=0P z(Ob+PgL{(>d=1>20{uLQ=Kr5$^S}2b8+g%hiQC=*=rcOXrNS}nLtZ{)&ik3dA5MN59kEYWuUu2^*|qhn5_YXDo_ug zK0t$k(3w2L!3_qA0-6An4^#qFhVJ1^p6%cs0Xh$K7pM{FD-ihu&gcQs0_p|?N0FpN z3VCo$zaTjootfkT=Ro~$QHs!cv*{-2h#nJ5TTq#-t*xx=E$kv9;V=!WNYLOM!p$O+ z-~g0lv&1B1tuJOG+$JYQnjtGDW^gJn9GjesJ5+62Ahw?!4=qv;=t-Qj0cV&@3{Q$dr(cQBdV!;8 zsMEsXxMOsZGn{S%7O9ZMPIU4Lb)1YbGIP;x3ogYTtOmld&yXb?^56Z@`v11y)Bo*g z3TOEw3r(Op;kXqGOH*^)3}Ry<;O!eQ0`YnD`{>l!Dt{Z-c(6!<24*YKNptWvh0$>W zVGJC842M#NCz++f5k*#(5VsKG_J;TW5~w2>0JVw##D)6ZM%n_JmSiwpF=PpG!|NK& zqiGq9k~pU!&& z8HmsNj)aKyA#E|w@5GM;p4Y)Ypc6kBc+_Wz!~2N%f1;mCumTBti1Q${@6P>E;ad;l ze@f?0ju{&tj?Vgabi~J@@iKVS5rK|8zl1n}fg$AiGvu8KZVR|j6$Edx0G(~fL*0Ht z5*%{{z5Cy`8!%z8 z9zKJIy7~`nzaQW^(AA&k;Wp66-(!%+z~KXZMhqD^yubfIw-Nq>?EUarZGHp&!3Y?f ziyKMtzHopWKBbXj{RQak-ZY9C2|XN~PA1|!`rA;CNBFz?$HWN+3*rSya9S;#u87!? zG08D7+)*L}hWJu9?PD_Tn~|O(;NRl};x_sWTy*wUe_vm357++w9z%V2!J~P&O%M`+ z_)J6@aN#%^f(tHc8?Hm41_J#}{Co$xLK$6o!Ep8!_@REcvn^3I1?wACUttG?n)BDyBo*nBhqfKw3a`z?Xo#6(|JgZ`&m`Cc)vvFqk-) zQm5C4Cq*KSk!i=YW|}iim`2Q=%lUN3Xo(UI0-zB=xH(OHRNr3tq3v-V!IIR~*u*#HS{OCmI;Sv79jb zi06etF~g`MHwkf?dGL{2LU=Jh4|osY^B@iLr7-R-hw%=m9_YVTL7{OeqIIuY*+6_= zTP1YF2)ruhuKZS*Pi_R=pbB&da0zfjz}*V2 z{wC;8!F2=o06en>*Bjg_AT_vm0=Egs7^ni|&?O#Uwr=($!nQ#B*#LFPi%3X-14eO{ zsOhNa0WT~J!mQ>}V`&w*s7;B>hWw6n@)Mt#DVF_t%xW0X0J3QO7yBh+1%*d&9*il$i$tFW z98&AZgXdWwhrrkK!9_ZeINTWc_EG->5yBa}aOzw&=&isbJ)p84+T&ACBJVkBN65S! zoTrQg7MYzw1C}i!iVR zJ~1XKAs!WsYHeuU2ics9f&M)_od;i(*!B^mR|fI=K)l|2f7V;^e)xX(!8dvqzS$1X z8)|<2PSu)WE|8Gs#7~ds^^Z^Q8;*{gN0r1+!71Xxp^`!TPD)fAbS_WF3Xl{=qvJDw zRtjY`3=C_b#Y7Y_mNo@*gj7PNl0+iJi{7_5-b~=FfEPs-Nf}@Q>m4RAvOuT$=U4!A z58=>0MiiVqAB*Z&2-66v9XRqtjS?!6vS0=$9OIn8F}}E=KsZ7KGAS}NXK z>nn-Q992`H+F<9lj*~|^4K#OskU>8(xebKUjKgQ(gCRvIbU5xfVeL`0_()Z&B;gBT z(03sK7q$6cynz?{=Yc=!k2~dO&Z2R$@dxz*G(zaBG^sx8AK7|9Q$aIP2MX!iL!2Jq>O&_r09P?h!(f;KeH5&Vf)axVRu4BvusJGBPDFMO1!>VRIKmPbaRAaobB2}R zq93GPgNjG(2w9Q>=f6DmXlwmC_Ta$}8-M2|fEg^XGmr|k2#S}uO7RfZxrlglX_o|n73L72Uv&_|x`}`fdKxk^ih>IGqK!XPSTO1%=8#DE zM6iv3Vh~5l2b(+**d`Az5sdPnB`+c9Y|!q)`RVY^U`I9iXS)IiV*@2mWT^+{ zZs9+<_QyzR<>3`=6rl;WG9J}#uLte$!H|{&10WCd)0mXF4t}v0ppyJP*kkCL>!vU{e_z`+@l-FwxlDkJz?B46^qFS`;$63WhGkkNKc} zARNf1gwN`Prb5~WS1bTkztQZNk?l0|oh(AJUeg02O+ z)SR^pT=eXZUyi6-IRG+9FIxd*2_)u`o@N0w6fIc9z?LOmxd1z}Fa?A9NJvSJO$Rd} zFcAU^C15-Px(nh9#AO6wfHT2rGNl#6>O0k2#=$HDwKK3T0-qC_cftD<8SO-2aR_~FGOPj8sE@8A~gOXKO~F#0JIK+`fc%;iN;Yh=A!t} zGvtTlQJhF8MPsQZ5PF7W&^V0ZMQNaWB!})%{8}(h656oV40NEtn=l5xJKWm>xdV*= ziUdjn$^$9_ssP#xbOz`K&`TgWoj_tRP#91uP%cm*Py@ub5Zp~br+}^jJqB6~W9dh5 zxlq?3Afp4WHIN68KhQX!RG=K7&hH(@Qp!HEfNuuPR)D{wq~z$BIOsUzVCLEvtwRyS z<8IX2Nj12r50!*QgxVKw#qlr=!m2G;jX|v%USWq05BfH~pmVy^>?|qSSdY@fPeOd? zUH&>pg$Hnn_2^}wS9gx5eSQkr{rPR77S;Yqq0RtXfQKoq5Vf#kNYen~)yJ_DcwVyy zp5e5;JqG-oBmbJ44xj1Ic`;0tQJ)N^oW(O`LI`o8?`Ia235}6QzIo!dgUXTh)swKN zd;L}pJaWZ`Pf8aLS|IDxJrJ*lcYaeG0W$01_W|8?ZMb>Me{KjQyU+LX;F zC=t|E&p=`j#5V*8l}UU-l@e*vUjNS8Ki-EEZRX)^I^Tq3WJ(q3kUj!zRTbS*DTu$B zXf-clE2MKq#;d)|gQ1b=gP3V-?8G?JUrK5k3B!AWS(0EZ4DM*T5^!68y9}QMDs&{M z4xl59jTIn}j;W<}heg^(sDlVd4-p!3#C#0gqwhZhFVItZ6jmn%{K@bbU#OlcHK2`0 z#lg-9*8kz-NlJ+0h512K^+pIY0e?`OusE+3Y574!2yf6H zXkfeQkKc=Ud_`j(`i2%ko|get0_^}Q%!V;gc7SE32=|rs>OUF+@pS7%qPJ;`WD1I zG-m=GR^kW=iJwgYzGIkb;ITd;%HvMpJH{~!cn=_P_yV{`_`Qz2SqFYO+}i*d8yfU= z>S^R6mdioUI>_b0eGeeh4$o$Yo`HjPL)4ZYL0kHF_S?kip}KGfsy6o`uKf+UTY3=& zKw>$U4)@|`|J3#WL!8#|>_{kl=RjqVzmsp+ug~s{_9D{8{QB%q;m|WAdk^BR8|y_7 zzv#w}Qj2D5(SVSluZwO~U$%{Au6gc_6MlBGwRusN6gNh?9{a=sE zCC!Uy0XiWH6P@`pY#}^H{>Vl76W@zneus3#&pMVv{Op&00WcLX+9jL7@;bnE%tDdz zS~JvxQh&q)br&`;aaZGOOpRrSp+Vb0n+y#d{!0@7;ZA&_IdnTaAkA<{%Mu9n*NLE`q%zDnU@@mZ0n-Q5o|!gyb}SH@MaF05Qg)p&VCTJSp|JM#34=( zS|6UXi1|^#Bb`^wqy7cWU0@e79qH#8CX>y@emamDG|&52b$f9*3kZkiL}K0=_`&~1 zJdS9`%+V2zTA?XmSKI)PQSEjpVM`@Ce4>D7fo)z=yU+MGnU@N44p0?g@6EuJ!W!hk zIE2QZaNza8%>@^&r;76y0(nDyG^A)?7-Jt}VH;y*8Dnb=V6aI7*kQG>O|i0sebyAj zM_E}$*;;oCH8nLAhevG+^~Yjfhfa-~VjkIAL+Ofnec(~QE9PeakMfftn(MYNkcbEN ze!cqgi~&~W2vf4iN1ZzdGqR@wDU~I_i&2xomNqCfi_cQKmuqlJ) zXnMS;cmtj@Y)Qo?3o-z~$eZlQGf!*J!&#^xBnMf+b%p8+?dOOI@yHM9V~9HXqkBY9 z4Znp&VNe_$<&j(syo2-bUaWJxi3Yeo0rXPz>^8X9fa*m2MQ|Sg6@u&m2-75bj>4aV z`@2A=f!>LpUk3Lv&|4t)@Z@MP%8kAiFtQpRiB`qLi-?QOskzxd?+9SsBN|rUQsa># zXKiYO6*<7Xi)RI}ZUSkAL%GpB34MFT(|*p;zRd6av=>=F9{GS>WjsK?c)Vx#taPZq6}4m zEYi1;o{iRk%+vnY{0If?mcuqXbS~6-zaw-WV0af6bu1hJzalC(7v2MEKXt3T2y*pb zQ(lD^5dtKZ%j|G3e)dn@;y=V04bR}M{G;oSZ9ue>wAGqw13h5jKmzIlU2u#0uxqEi zV6PwgP~gRKvq1>y?_z!-@Mt_imv~O;UE@VOItTT2&5MBE*BH<#ybMWW$;rIQ1_qMG zhLXXff6G#*={VtPL;Y@NIJ_VQh`S??`V=ugkVUOaiuvSDyimmdmSBfDcr~Pj${?PD zi&nyu;YURnjW!lQBmn>6CkT@9nk_(NBBNndCmCP~qP?$QMIo+75GPtM{Rl47d3d(e z`tx7e8~wlG2U+=t7yU0UMyCq^pd=a(+b;~BqY!p{_#G9(&ppbca2w8c6s`}+ipN>v z4ApOo`QlSvgtK!uXZ#M}eI&(?6qFwQ(4yQQq!}(qY(B z?-`*3(KZki5tR`w%!Xs74X}Ekt^w4m4-et1lF^0&!1j5D$o6>{p%3AuAU-p2(Rb!6 z!a9ur9-1;Cjvs{-?T%0gR4RCT_&ktDI;mLxxAu=dI8h%^4YFt)V8WPz=FGpz!VW3Y zmC+COsNWvo;f#0$;d+2P`gYJ-f|y793aHH!EEwo6g}#&?T8tbXk&1lcy^% z73Gy^%5+t_x{MZ6o1;t9r;Q`W)3-3T(GSos(J#}lNne+^LBC1ALwm%0On*Vv(;InB zuRqlB%tPW99l=wM`}B>9 zDVisr5PG=r?Wl+kEp2}OOG{17dKrvZURJ)kVqN8?eFsjkq@8Ig`5_tFQLQi&2%GWjj}ed^htfvfMYG?od@S5y_D-S7CNzXfkOo_M{injFeTF4tJExaKiqwFQQ3-a|xgL^vEP}>hGFdD-o5f*E$V+NTsY`3faAl?CNG?M`K~VyZ z%_G%l>I@CGCQXa3tHNXSW|&Bs(#%N(vDSTAIWO<;Ev9DuLPm!^$(ucA?!5Ke_U%7;s^;v2x@T&8By`(+Voq9y)yT^rbs@-4`FcaO&bE51*j{L1RK^&MDfq zYxm)!r%vCLS5XZP`SkfmTUOkJ2M=X+;}f*BLnlw!yk+YC11hRIx`PJ$3`OmK%G8}F zuU)^_^zLI)a*;4)VNX-Dbz62HK7Hxt!=;4FqQ&M#x>v4UZ1Wj9DwxfYfx& z=iG0=z~Z@nV^hx5)Ly=I`^Aqou%)b*^N`GO<7kpB`Rpp$tc^@viEK@VI)_G@k=7)e zL1VMn@{+!C3hWVV2B{?}!Qe313_1)+(j=21#iGe7Gkw^a>;N{Mr7G=9x-v|lf0Ad( zNjs9-Jwkc#Q-~f}XP7x#85*pdRz?t8MM6yiwYYICN%)mW5W6>XkfbsEwt>d5kTNDU zSW=9vD)2J17{bV^;5ael7*1?^PH$#To4gvwOx}diO|F|;p|r zO(N@%o=`gLhDJ7*ne|Yrc?H8xB0EGWYY!*u98*%Q4?~h=&l$v#W(lQq7^BD_iL6{T zElCv#Z!&8ZYh#79Drr$pX5Z<_mS!@u)^f8yvS~ac7WmF4vkoyd8FDh>sRRYY?);Mh zUKpHNA`ty#0Dw9GWq|#wB!t(&1D0rDp?nYolTw9XfPy_yqzw_o#lF;7{Rmt==;~u( z{}qk1Vx9^?#fRgD?JoqNhxHp6Krut;_oK!rM{s2zEFg~&>;m=_F^Uvrg^C8R=Z8nZ z@;%@T(qiIL;s7H8>k|+r5W=E0n=ZqqB%;`U304AO&^RXwLjiv$qCq$!9YZO=?+nPG zc~l1(sME+4*h)oEApz{wBj^uco+*$q0+LLG&Hp4c4kI`Qgl&L0V7h_V3ecFy2dak! z0xm47mrbV;E(7F?rN?_uXTYsxgU;wf5H2zd0w0lX0;^2NUP}=r zHn4+pG@*HVcaS28?6+0Zg8RprG$JKLbkTIjbw0vb?A7kl`Yte)Sn`n3YOgG3RwwM< z@bS`B&OP$PovjxRs86+8%jl{5(g$VeZ!TJ<>EhrSR}UqvynSninXO=FTnlc`_s zisMO#IJ&G8sKEAk0EGqdpkjB7raeDtqIksdB5VYTSIkRw;-x$B6M)z6AU_fKfDU{v z@Tk1v_yoXrtPd~XQQsr>mj%9K`Z6NEOMO_f;eLY4<$lDS zZvMoh$0IgB2@hzf>lRd7UmnCG8iSf>Q%4br1e-8{nIawj(cGoXmANzl3}5SQaLb~}(V*@b+H@WG=R&8kIW)SI1PumnS_)l{HjzQnC1@`G(j0gu%|Jq$&VxeI81~=^0U3@QI(;#NCPQPR1R3;GE(Gm(H-a&n7RDo3F?52Y zN%H8vbkOr4@9K0WZ4q5VL59|oqb_C2Fo&|y>Ah&KQ1f)UG?dGXW(Bd*=}aiM5uHP8 zMAb%v&Y#QW!g4b032gzBU_dEJ0|rT31Mw4dU&bIQ3o?UdD`yDhlw?>yoNSsiL!U|G z^rcDDttCKtrG+w3RYIlEmeUvn)r12yTSolq`=nPY+aDojLLL06ES%Fw4u^<7c zb7*ZSDH;K9*P6*hcQlq90U8ZK>qicQ=Y%O;m4G@RnH&zCtwWYD2s_e}LzAVcFlllS zt2~a8$)}Y;7-#gmP<9-f2+L|BOic$Qz;6Un@lq~zJ0ykLI2YqO;rA>cAmBUl;s;Z@ zhu8-ov9Rb35WIE?z;A#InwS1bFAyg2{-71Wx*&uxf-nyUYB)14X*@sr{rnH~*`GbN z^t9@a#Etj9U&H*+dj}4+Y)ftX^!*;@rEiSy|90-kL-H+kn0IQKTD(cOcD8X#1Lkv= zj<7HY8FqD0%LmNwtXaFMsA|IU@RkXjb9$VcCcH_s8e{&$ zqQi?WT$)~{*=mjXXH`b3izTh!+O#@he$I9qqwizwxBIrbVZKklQ&%2dJCirQ)f@Bs zE?m{<<#zw%v{rx2FRbaY|KiH=^UGR8FrT+3VzPd0)!luqe9V8k6DkuJwQ=?J)>zE< ze0Ti8{4Y=5ziky_eot20hRRJlcS`=q#C(BgW-K!_Vn&Z2d6@SzKWZJ;cA%!;k3!6k z=(%rh;WVFxqkfcN{@@hDME%sS4~0LLVZLb3vpp*hK3rS$qXP3KlZE-0Lf3y;|Dy`? zmr5&(<|n%CJ@KO&^W&A}4u5Il%zF6a0OogDSO`Y+*m~jXj}w@$nwn92>Pf#PN^R#c z&+60L=ma+eOvPTq{MC8MF-!FIH+Zz&!@TTSBDZ3;^Tt{lqnkRgrI25pFoW%1vhq?FA3E9wfXme^;Pec4J->%$6ufx2P+q#O|nWf)r=?$3Yx>c<6_MW)^ zHT?tTHI}*TdOK%h0gKUsdE>l*wcNM5wLBOX&;vt@xi6npa7+6zkj6w1%cYl^L`b>rLNoIH4J0S7qz*KFDR^P9$vY6^Y$iimXbrq8eHE$RV%hZ|*QHL{K~ERUZ}BRv)A{bJrl#CKJ1 z?fQ8adcHWGO`>%FHl8l@d~rPJEBf=h>4qv0CK&kF5*Yp|4s#F6@aHh1I_pqX;xP9` zVZ{6c5f2W=s`J79tNF7yoE6MlJJzo)@Ez+nwiEvpc$jLp*Z*7KJv;E{Mf~seC;))B zFq{XIJo7((B>b54P{3S@4hU8DrEtyO5I4$?m`7=j zILC>?oAmYx_lb#*GKVz8e!=h_x-8Sr9Ku=;hVHkAL;LM$-Uuq||L6r-_=gvoYjk~e z+InMj-h0CUBUncXO$z77q=mv>jw3G)kY&8s7_?VKEo3{!`V~6CO{HeV{vHQpGKLQS9qu?4uAjs=L_$tUG%IEK$ zL3{!=2m0NIkIrpMh5^dj{C7|4msM!lj3B0a6FhKoflyjvekI(ZJ_@bzqKh_ZI6=## z(KMy$_?a3!X@3wz>rt5?R~XaWb_=y~H`%Z-aoOfGOIQoo3ppLiSP8QB zvCVCPAPTbP9m|O70G&IM2>#~ag1?J56&H>H`Pakqthna3GjLD%%9?lf=Rh6|;+xwF zDSuwa_<8Wm0Q^h9Ux@snj{o!?yg{Z8WMD|aG9BYUN?eFjT(95Qd!8+=lAyPvzSK{?g#@ z)P?^o@HhAi|1aS02L4K2gjXY>y@7ui^7ohhr9GfL*@J%?_%|Sb_!hc)mpt(1qqs7f z+q|i^>D#&AK;_K`nXt^R^HT}_{@@=AvM9aI?e`4$mw`Wi-(kPEhkEee1ODiJ{HZ=U z@NUk4e^?j(2H?+`{O9(9^6w7*#^CSthwwaj77hOH;GYTY4$^n|Qymn7Oxe`tHvcZ- zr~?0M;NMmMi^^6DG9g*bZ7x(@ngMTdeM}sVSPo3ZMR`9O||HLl*Yr&tK z*4*Y!`Tx>xdGM?W{EfjM_0e7BQ3>|yLZ-L3?O*y9)b_2x-(W^_Tb-yb_`laNu3eN~ z7|1@#hw@Ugzl|%XPVzv8nALS(RRR8Lf8l=u{LQ=YM|r3Ne|PZjs@{&nEL4DO-c{y6rby72|Mz=HO1$h@n%L1|`!Y)E0(ecUqe=YxMSmF914 z;Q;tw1OKcp{O^Ik_3S@?lPLWb@b?9OR6f+!I*uXenHDHW{@`Ci`Tw!ZJQNh4Jpt$JKza)n8k`Mmo#iDlW`-?Xo4=TYwunT`4gg*oRS>Vt6i+0@r zGMRHBpCXx#3%hP3N5H=Y{Eb1jbDntc=n?pH7B#mu{U6Hi2foXB|Nr>4 zHEU`}CduSeEfz~F$zmPDFieJF7?vi(Xc%@Fb{J=eVF+OeArv7A!!UFRp%{iC#Obj9 zaK@Rl-{W;%?^o|vYw`VkZnxuf|2$vU`}+63-q)YcXPe}Cy1u1rfX!K@~Ihr`}%9u%w8`0!hKmuUD_SJuanGc26+Z~c)a#!g^t#>Q=Qu0;N_T6Z_&SbJKYGyXB>7Jbswy`v>a^r!l=XFVDGTZZB&gH$#SC*@Q zeEcTz7Sr-(+o?^u|BugG2|P^b zq^6#F=GW^orBhQfn|&MAY%o^DcrTBp67u2){C3&Y*c+p^liI2W*WXWUbUiOMsata2L{0dVxtHTYmN|!- zriU1J_;+vXRO0f|P2@G?!5qIFJ;$V3zi7kjR9U`u@|on}bzzS& zUUK=x8uQ8B{pAMxRq`15oQHd#UixPac{8~?NA!Bk%du8QUB)A8y5+i??ewSDWim}8 z({#*ZyycpXX=>vBicPY~(KefIuZ*-s6L0&~(LT%6e72_>F+YT0yw@1fTMQ{Ch zJT;Y1_r6VJ84Ahk$&2`R&w0o;t0ZqBclXD=o>w!eYoxB~*)`n>9K*CT>;E!7EoGX# z*SNlmwsV2)Pts-wdG%thb=^7YPlmi8#x!X>d@g)*P4|MR&0fccJZe_Fz3FXIM&3o9 zOM5-HiOi#pJoXO#(Djd=*Uqx+bE!#rk8@c<*hX{0pDetz+s-sgmvi4A?az{)?aKa2 z;0H1)KVpCI@1Dyhc^Y|U>-uqJqhlnOyy)XK-L=s?Hp)xMn?B(>F52cB<+bD)pK%OF z`9}A4v&k#ISkqm+iM)k;?w7q!FXQ40@{X_9bkC2LZyIya82oIdwVV= zZDvuoKcAx42kAl@+Vy;e1?~j!uDL_o)vB4T3?nSo4Wk9>#vD=J&vWWl)6spy5v4* z6VC*tpVd>h&* zJy*!Ne+G542d(X%70t7tthdWDcmFQit%drOA#0=S^8Ag@fh)*!$)!K=EN7$RFM%(^ z6_Ri29GOO5PM#~%_c({f&UaC<=JSP4Bn2hV8>18S>zeyvdlfVi7a0cc_w*Y zly7jY7UR7t@*?tOQQqr4M!L;tv@nVLn^v_$P}bR8$lvO?yy)25d-VKCQ?U)5vScH`PCK$!BgNm+ezZK402*V`^{vRO;%fTN3-@eIKK40d+aU)^76ItSoaY zHFd++cGvRnAb!IeYB>%%$ybqgL}N+LpN)&sW(Hp%pOfDEc9J&p$(N8=oJHR72YEAj%I=${|X`0DbkS~eG%8kYz*@i2qsh`k$|CRA0 zfghHeO)j5Lun+!lyp{btp8EEzwcSPTobYG+S^9Pv(*8~hcE{4Z??ro{ZZPgq-F^< zNq;aN%C=~vZtkIM*QhS%kFEn^)GwjF?Xb1cy>Ku4fz=K=s7cN5eP2pGfDeh&$&2~7 z>`OBoh5aX!yp()Z)c5~SV_YfIq!z60^>abl9<}6|g{t^X=fdEjYqBDmm7__DLc`xj^6Y(8c)82+&wecX!=6(mcriG zSNdNic`La)#{aa>%DT;Anylm2kF&jAYfGP5D)Xk!-7A&+QJ;}*5ya>d$Gh_f+thyE zBI8kvyz&ID+oEl{$^Fc4qp_Kid|`!x*EcuGP<$a(edt4Dz|;;eBlWmj9<~ zh7zVpnznu&GHsi(4mIRCm~Z$$NACLfM*FvheEue;m$7mdd9&ov_W3`ZZ6o8t=oMTlH@$Z};-6I{HuTb}bWk`M#9dFdw29cj!K?JUik-kE_pq<8>ctwL#5;`e~{Obcai5ZFP3qGJ}ld9HhJt$ zj^Sv#HN^eNc9UsZnWktCV}D}U=AVw$a=u93h5N$CxVDM5)t{a(vZ-J2#9Dn;xWTrU zWhf?3d1`HUeV=d{YW^?F-M}>E3+W^OAJeojO~!NFTSUwKr|T;Fw3BIOH*I>K4d!Is zM!u`;R2uUtqhM(>83KNH)>E@BQ zle_QGY_vXQd3oZTYnzgX!<$i*{^T<8O~zz9P;F7du%lQO7e`wuKixl zBT2i`@5pOdSN7*d)2EX!A>Y(7nn&J2z9>1I{!jb5Y}0C{sa(#pE9vWf7R1}RO5R95 z_~YK^DR~olHhE(&+cZYrM!x71?vFPEtW(eXQfWhevCa7QO>fs2dDb7~Ipo>o?b22+ z+pUDWYZKGQn52e0_>%ee4X5Aeeo>Zjw$!X#|BR-fXWwffuOV-zthZ%YL7wydrl(I} z@M|XTZF*_)|N6@MdQ4avyJm7Qp8rW#l$UsdvFxrH7atcKe82&F$I?%qnl*83X;$gf zaeJILc2tZ%_|9LB5Aylb6Q`ZGcPu|YH#Rnl-!Q#b5FB$Vf1>Py*wk{q(=NYCJ^YI$ z{K~@2-6xFRZMSim}CA+&9Rqh$=JR2 z7&ms$-N){^R}lU#Yv0)JSz~w4l)s7*>=$Dx`4On87Y1=WD-IF{Y%3#UiwN1R!7&YNip|UT=+XG^EZzL9Tf5d#KFZR;^-9@T+Tl-w~vKCl_&Xf z+%_;4G`RW^{D0+^v0#z2{Jed3|5!9R^%vn)+r@%<-jV75>FT3`xZqu!F(4MqXU9ms zBmXbfTz=Q5%uhWE*Rnj#ydm{9xI85m#rSHeH@*SSxg_7^@xkqQ@wUGHe!SFp9xfi_ z^Jj3i@yocw_$_SPe-F$0Mz6TwBV0Au`!g)tQ*-&bAXy*v_c(WmxBQ$?YzOb3ab9XH z=wiFc`cGz@5=XDNKt5y69U2Q}xcqTv&7a1tJH>(|u0dpad1fNkd<|}{_S>rqXBa0Y zaD5T;^;_YZ;ojThl_np7Gl%(nG@fa^7w$CP4;PvC4#Snk$4Guze)zi+d{lD+#+zXq0YutW_uipXZ9_l?3&ov%{7aLEMdei>C zINYA$0>uRf;ttb)r%TTIMX$Kv0^Dx$dvMv2K7RnuKid0ITyd=T6F7Ff_cJ)R*!u-M z_!RF~arG4Mf8s?`z2C(PPV-)l%gVez#ieI@e~By0y}!e$b^iDr*pKBs$LE9bVza%5 z% z=_X+=zeq8MzsINJ&u(}q`4%oe7H@6*H{2g{7>3i&#diIk#BFskQhCLN->Gaf>;DRQ z<+ZUem3#@FUGM!N9)F#8J8m%k0jFQ@^L2QU@&9megU^$a*?-0Zahq`}E^qMlJ4Pgqyr`@hs!XxXZXm@|%7Askm&0_t`kx?7x}#8n!RPN4R}o#W&zS&OhP@ zF~dxlZ_kdJXXEeqSuzMvjj$I16ig$K%eIe0!(h7~@y; ziVx1f!7DyLA1^V!6qmi~^S|Q`;~Q~(i_h1(;rc&;Td;1QHf-1TE4-l9FW*X>ZMMf6yy6p|cj1~( zy%Ps=y=FWB=gNl);VUi}g6A8j;k?g$zB_I=&cfAZdrZXx%=Wk*55gQa;rcy`hhsgy z&O+4a8_XRP(h+lcGU^1Xp8O#fPgm;LJN zJ8`3_ACbcPaXjhrOvWp_eSIOGYw9n@rS^EhnOOJ#ay-#ke))u4k4CTfAQ9K#NxUJ) zL#DIl6L7Ps&&G1Ss`>u7-B`ZECD#L*PsVcmsSB|jf9ezPKs=H+Wd60znqPzE_*6Gw zIe)2d#RYgMZ^-m7J8S+1mhG>88_WJwe}HTFeZuOGvGgbP7g+j}`Wr0$N&PP@{YkwV zOaD>-2j}8pydldsocmz0=A*FmKXoRS<6FHKo^SjYEXTLz2Vyy%)%jSCclFU&j&Jn| z_$@q~H)MIPa@M>a%Xp%`8O!yB`VK7D7wUVlTpy_CV7Y!!KaS=4LcI|0hDY#*%>PSg z%~xW%UQz#qi%k8H?ILSF49oGNPRDY7QjfuMepOGva(-1$!g9V-=VCdZsSm?){!<@? z<$SC@9?SVyU4rF&tUevf`B;4pmh-Xt0xaiabv4f6Z?>zi#Lb-l(s@I+*JI9_KaJ)5 zt!~0{{#3t;<@~9B6U+Hm{T@!jJMo6J-{q`%pTW`jR^1QF_@dq#%lM)mjQ7XdzYcKL z{7@|8mHJ3rZd`<`jZeY##?x@4@!5E;aV2gtz638Zz5=%y{{ycwZopl}x8Y>QTV39} zajNkHIKy}@&NhAu=NmtVi;Z8#<;II~weh>S-uOe@X#5$TYrF!FaZAgd4gQ7wYjyXz z`*Y=x6btg@emp)dn2qK9661s+o_SDW_&h9&3sCX?2PcNlt7@E&%S#NO4=tim$zQ?p z{HM)1>5#xgQRnH!{D3652QQ2VuECPILRG za7to$eCYJIV!2;l=H_?msfpq7qWNqr_s{Zk1G2p;rY45RkLFKexu4E<`DLYv;qjz- zGnV^n-5)8_*uG}@j>U4ny}(UB{Pe`|c+=@K%M!!mO}!8&)1TFySnjXO-S!`MF6+nr zg!~M$EN?&lxP@G=H_^|<2VIaDUXRUj`5NBWmpo72etWwA=EK}ualufW-_LslPV4VI z3a>C8gJ;W^T*6meuqQ6x!h0W_zNPnmxXbupymTv{ACBt>cpr@mxAs0B+vE8Z>|d+9 z7jeAF@+{^}S^uHzPg$NO=M46rEYC9Mz1d&VzWQ_ak1UVYpU3u=<nHoG9;XlV+v7%DZG0^c}dLG4)5|B>wJ))?bFJO#8KXj`1~k zG0t$?|9fZ1D=zp6uQT;O<4)uM;tb}m_je;x*}gma_1O(q4)q?36L#|63zr#B!tKTf zVCf&xD=s($cNiamR}J&|F*t|)6TRYt6LF#O6kKe4I+p#Z^=IQs( z8gGTqz?|N~<701UonH=~Yw8cea(ru^FS+qi*pBx_*uPeHf0vsWZXZ2A?s_2OKkKVL z8_V`opTPB;jGu)xBI9=jAJEA7Srr#~G}liue#-A&k^IZ!x&C9k(((PA6FFbdzryDc zT%XLx(tox67tT%$kEc@C{x;LOzTx<(a!#p8438(x&%KEAGvg1NIh^039`5epgQ~b5 zG4*e8zL4Xs!Y%)(za@s_>0H-d!WD_(cv|kf^OcF=_$bRS>z7xX7>p4 z;rh(%uPIo@moAr&xR&c5lTX7lj0f?7nv556nIqSaMOgZ4it|@k`ttzik=JqkMEzdQ zr(+pkG=CV&_@N$pJ^P>Od5jUZKLtyF<#IFhgEufgrsuI*=GR!j!dUO|IA;&ZI~?;PAb(fc5rI>|d9=bPs@N8!g=zTLyE z5g$}Lhnt7xy#jwm&i}Es;=`X85NrMw~!|7K#YyFQ{w!d0_ zjzG4*`Zt_yEDt8~jT5mQACs|vt?vHh0LCM>pWd(R%Xlf%Yk!{4_$ckGU*i5#_V3EL zXnaUNlJSlGo8vr<`!m`8weJ3Eckahzd&_sVWjwj;6pk0RcbB`rd8dT&nf;?al<`pZ zcRLFy^^arO-!q-7=)clG*SYcc?3)>%=znRhy;Em!ywbmPJbf5Te^L)L>o5I%A|9OM z_y1pT#ev=j;8l6vdAQhY-y?D9AwEAIHyBUBEyicynnQj4dAP&0cL|P}ycU-o=IgJ+ zD~xZ&LB7xL!KKFXGaPn#=i!RUzWzyEa)kHuxbg zO8rs3el@o3|AKA*?85%Fy1U>o&R=Z*TDQMju`GY8yI-Bn_$vFa$mJs$UuFMQyZ#m* z^R3DL9);@*{qpRNXCLFe2d+8RI}6ty=RFBG7J2WF=O6EV7+z#th|7#m!kuROPQ%Mg zKD|eN0bXJ9OR(Kuf5ZN@y1Rq^F6-0An{xbIcnil9>pM6uau=5MOK`s8*2HlAG*7yX zQ=I1Wk_c1)a*l&*oxb`IP7xCf--@g{)a#Q~vo@x9E zZZ`fJuQFbR2b=bP!MVl(v$pd~#LXs`M-!>1_~jeKKfBEGacL2(Gxeiz=E=T(9RDmb z-Urth=i)iWa_B8Hmaf!ge5%;YzYOP@x^gO2IIT&Oyk)&^Co|N@GkB&`EneT%75e)7ktV;#~Xi%6Q=q6JN{XJ zy7#~NXW<#%Yx!r|jlTc+^-3(l{PXJ_;`**Xxf$++yZ;IkwyTDx7Dw z|F!rC;~Vh_#<$@q#&_Y*Mn?Nvy*ZZSNxc=8{-)j* zOaD^ufTh2xhhgc@>Rqt(5A|p){XxA4mj0-oh-Lq)_r=mb)CXdF{y7Z$*Xr()e9ku< zzl-Cd^UX>u$NN&}S0{75$?;z2eB~M3Z!*4RIiGYU=O@OuO6N<@;(l?8_g&>1dM)?U zw*H#)62tze_d{=D>967UHMrloh3DTg{_FhDsbu*$pVYhgy~p$LIedPcz)H#e;cFKs zhU1^!58rV~VmLmkzr-@0s?)2vpEsV4W&G8AA(ru0{RsDGGM<(&KRI8Yaz|o#JZ$FX zKMTw8q|4uq<#^EhyJ2@GhR0WU{Ia}LuzWr*?aT7ti{*GrcK!;>@ueQom>3=(;rE58 zFU4|vX?qV~IiB=>@mnm%k1o$HcTs8PSBB+y496SVdl<{{r2YZR@uu_J?e4_z_|o~6 zV>!Nbe)F&#U+ST=d0t?)-{Dx!FXP?zTY(E1k4xPCJks<}xjw1F3(WX;spRFu_>a8e zf-7+T+1_<{75zUWOyh$mafzIS!x!J*!)3-V;tJyyJosk+eXJjGy~)?%8OFciM&n>- zj#uME++v)Jml_Ym9ma!kIrG>1>jQA|bocy)^&P)UWL=-V@c{C$f0Cc+ta$||$CWgzu8I8*E-i>Ab^!VD3@lV!YkH3Kz zCWh;$F2u5a>RYk&=Oo&b@#r%w{ZoA%&ljbCr@DMu5AX2T4f9ib_~9Pz=;6H>Z*BXR zVL2Xj{zqTJ`NjD6>csGP)cj+f2g>mfbIZ4q`$0J#ba`8DXM1yer?~BT-~&8=AWwGn z*I_x{bo!st3EWG@k3pk&USs;_4!GsKVXh)BNW-;k&*&8&jK-NJpMdM+qCI@Y1^ePv z#(B8#0-qm=D~wOTw*6DY7y0^9oby-jvvJZ4zdRS>Syev2951`XyAEend*3Ma#&_T* z{@wd3u_$M6v&DVG0bmO?)HeCL`c#+Asz`>P%`fYF$4*MhHTamLa&&hZIc@}TT z=ckW3YrX*InS5wQWX;oXjhWxBxcwIQ{F)Yz!IfCY%No4S_)%Po_5R~Sywv1zqv_x5 z4;F)^iw`nz8P@iW!&Syt-~{7&xX8E_=U?l$&*!+zcm*yu{sFfeci;u4|NMfVGw#AK z8OQUWcBOf~nuK35`Ih)C;}pEicnJQ~IELGecg8;$XW%5ZU-XI(#^Ds>ESzfm7hGzb zi)DZ5^oL^EKk5Q}2cEzivOg|y*8Fc+_MiIiSo(wdIxPENeKVH*rM?}@{#M_E_r=;j z-gMS{DVF`K{t!$5P`6>}AL_5L9N+4d*q#r6#QwFqd))qv&+LC4ulL2$U*vjR&PS86 z^p{HKld$xcBIoV6zmV~{g43kb?|D4e%Z!iteIw@+$oRA}K5{bW6FGkM{LyeJ*Y|FD z<$RjT^Da5w^WviV#~BsU(d$X|g*FMhe zSo*8XU-H=FEFa&uRZqdv|5?f~zZXk?W%i-J!qUGtcOE`JG3?*!Q?c|%Z7+C&?~7r* zzL@Y-V%VQ$d&~SU!qT6Uofl#0zXv+6Gy6-@6&GyD&b8hKSKTOkM_xRu z#diPi=s~`^dpPdmZxltZKEW;~m-!vs!^hwpGyfB?FG&hc@t_Z_?k>Yw*ZJi=+vFU{ z!Fjk=9(si@KCkHED{;NaZ@`T+-TflR=Sz5&$zQ__^d}uZf5J;m{xe=jzBBWa<9nw} z#*5p0{ULZ3`4%oeAFnX&-G!TP_se@fu4a3O_pfa4H8_jq3->?m?>JVL-?yKK^Y8G} zPsT|%6@{OdaP=NsgDcJQJdJB{x?7%hJlEv?$8r544++CpT(C7xF!RgC&G-0xf4tN< z54Ral#;c4AaWKnIe*%{68@=L#5-i(GJq^#p;pexke}l8;w_@3z>P9U4Lwz5X{h^+N zGjJYn$o~4kS@VyvY%lc}Shkn?8!X#P{V&{v58@4JZ_pl*HBZH|{nW#83g$6mSbw;) z=0{`M-|FLW4nEY?*E(x{4VM0(ZotxiqE}*YE0+Ecz4``?So(YPiVyC?wN7&U%)$P( zy8G;>6T{-TpnZZ!T354hjwU*lP3`F_Al zj924j#+^9%cE3K|IK?=T2Mfi zf>ZAB%Xc7V$Z)TuARqhJ>hAp(a=*m((dTE!KEv}XoJ^6N5AVjZeOEbuj-`D)KMY&M z{U`GuKrZKlsaUp;<_}=mp6c(gtiO8HvwS{`bdxSsv>1oG-+(y<^UcuxwB1kuv>nShg3#Q0Sx0_K^N`K29_JqYBs1zr*EYd|V`^ zf6Mt@#=CKQa(%}32$z@Ru^87qKaAGp6&Fmw^NpwBMaF00X5$Jh^NU_AJ5HtjgTvP1 zgL|B#JU*C>W&Y}iWqNb`J&x`Ee;WJO>h9-_W&K-w)PHVrIp3}@mijm@G;RBda^boD zwYs~%vDBycs2^=|X@8ut)F08KzR=`Sf4s5OU)ZC*+T>Dyg|XD%)1&?YlS}=h#!|ny zNB!F-m-_dOrT(WL_3KP7^}iZR{UA;}c6+AEiD>m6gM-?vA7uF0kSLyV<kNTTUF7>w?OZ~zg^-U(1`d5sl{)-;<-soBZ+r z3$8KaLu?}L8y||Lz33Gm6kw@WAB*ex{*}5IH;_xWk@Nr6&YIU_X%^_hU#~xh?;Tl}Cmnx7uGb?+Icr{o z`!YX<*Kqx=aMrvI%krqN$9DZ@VE() zJScbhrMUHF_kB+4Uvt*_H*vwM?(-`0f!UEY-wuzTI6Rok4wLyEg0nLZkIsL*Q;E~= z_UDg#aO^ei7uf((|DCh8w+gT1L+n~E*dDc)92HiH9rd%Eb;kM&YCa6sqgqa*f+A~o8gu3`uuQb&5yzh-t+k#&YI7{ zH6QqVrL*Qg;{4@4pO6z-^K3l$BcIngYkm!0(dzT}oi%U8^FQ%@*{Ud8W0JneX^CD->PsVe<_W6U(n$N{m-wX>Dxc;-wS@Yj; z#t&R?$3^{V{{tdxo`=Vq{(3%6UB&mOT>bOTTK_Vh`EQ=LxV&F(WX%WQ>UG0{8E$!w z#T`HT`g@$U{sBDTSH8dJ>i>oFI)(+aUHcPw@F3RuY+O(~JXpyC5jj3?#j95Hc~X4j zFP*jiJKR2f`1;?6l*)~kET87Xaf4a^!?7%n=11dMCcg}i=XfoqK<3}#G^G1_r;41P|mlxqmlTX11n)zRc8%%yH{(<$=<$DFsHThfkIi}yi zwf`Ty*yM5CNdL<8{arp9uQ2&ucsHikd@2qS{PsB;w=w;eZu;ACs>$!iKQVnjm%od% zO#U$*w8!D=zpu2}VLWd!`Br!U(`)Hc{qqo>WAZ2P zP;$K<_zbt0{5$+Bd4JdbHk{hqO}-;8G}9k~yG(vGokH$va0}D7^>NcXub&=Qo8$3S++o&d30}$aXn*g-$?_$)@D&%t z9l>u5+|&1$(Ky}Y6Yxaxov4@N=~SF+^0V--<9&a*4VRdF7Cw?Z#ZA8iSDSn}?o0cF zTpm}z`M~7;a3#yH_tO*bkF=-#<5c_|j(5{vk4sJcbNGAm&0PL1USZn*36G!P`|}P* za{Yw|xcYAWl#6+iyO8pZV|T@;01n@^A5u_v?2U z{)zU7y7^s%%S`?^Jd0fS-#lDv@@McC^glfwzQ*?W{$8f1zJvB<{26;}WXLNn*bBFt z@nAo^(zJglE~b4welEoMroZ2Z6Z-k}c@)oM`{?=PBV1#)Z~So_FQ&dft}*THg>y`v zgB!>b!=;T6%5kyDFThnMzZaL8_TI*J{XW1AX8MouD#lOU|Kp3;pX3?LPqvplN)tz~ zxZpP2Y4Ts3HSfY{{fDpreS;4jA6fHxc<|Q4gYj`u`@soZ4{Sd?m_>oi?_#`i0N0Ps zFFEVuizN9#^=F_mOpSm395Ai-v@)+Bj4kpuo@2vGd;dQ2e{wmWC^V7$l z#QoF%ILUH7FXx-lxY6VjBp=F2)8$j}N|T={`9PoFg2xZ{?cXgq*W)_3%$?Abvygzxk&OCeSROd{bvqt-OblOhUYd?AHL#)MK~kF=P%>= zZ~FFD;Q~|t3vM*^-FTI8(iEou#81Bm9zWW*pDp?4K0h7Tn7jfnF}@fN-rY}ME7Skt zr+*xmn*3S3!1z_EU*qe4#K9QfUMDUvjz5+9UH$$WjT=qA7hYw&pVa^0+b_pinZuch zy!iPbTxVP(_3!xlNAWU~KaJDmhbqEXT=0_AKj-Uzz!fH6hntQ6C-qPI`cYH4o*g%Q zeS3T0V&h48em}pyWw^=Y=i#J1{PfjQ|A=q@AzWzkC-7|J=cWEzU;i!cFnI^g9`D=# zP3j->^&?B=`pV~HaI5h|JpVyoUy9TA^!4Z9O5-Z2-_oz|{kYlW^CZ8|x7Uj2Oz`b} zCHZha{T8QjKHkgc+hKdW?1($bW9$JL?=NtUc1T=s2_Brq`O4+9oi%?1Cr=zM!*MwM zr_P#xi3gCUx_p~yku~2Q&)?nOU*zHp>h*kkv9s3KV0r$kz8cRQJPt25J_)ZhuEVXyPvI)#&vAzF=4G4@Sf8y}Kso=7$H^u?1*aNcgXQ^@u1^Eb zFxO|#V|gB|`O8?IXRF`9@;praHm)$!cjByTx&Nd<_U}<=MArHuoOBocDSUB%h)b!D zUVJ|rH_%>R-jMaV71x^l9=woz8<)R{XPf*3G5J83{|~pAyziOxKjQ)THtM%<_4{DE zeEZ>)`r*M6a#^4IoFT8cU=H4l=PR3siVv3IRc86RaW{^0`L1U%o@2e z6T{ZygBNfb*5&;k&oR@l!4)PSdN$`%ob0AQ6feU4oG-+Arv5(s3fArS4(>GVe}rqu zwSV_HhwFQ+{bLNyy56r(7H%-@m*QDim!|>On)=&uk*R+T+wJuhUP*lk%P-q^?DWWx z7xzy%?*@PUJl9$CC-EwB^&(ujmtWr%I2Y^o9l(yh2yYR#9v@`m3asl}hD%KS3|wp6 zjAu9a`Mr({vi#>oYjBnE&~w>e#)sk*9#SQ_`Co|Z@c`%haBOd%zk}P&^uOUYQ@`_h ztiSP5xY77Byu|ns++_SAo@*R`KFbc$z;(~eJ^KtfL-p}ET$Gux{>U{5aaMKgst$2y?SGdi16<%fh z3!Y)tN4~gPW84py8>isdKmGi6!l}l);?_5Pz9*i!#5)IrxGcLgC#?{#Nw=2ZI`Sq#8<<#r^7vP!3?RcGW z@l~Rv&{Zgtpp3L)+99&>rj!TSZ;-o$! zn47%#{uiD_zE!CB;7y!n@}>B3@_{bz!gEajjQ=aYKMNn>^3l$a7uP%3{yx@yuzVgK zz2bxYv3%aBJ_P6DLwG~3FDjiizXZ$YbLuOwd>*I%2M(VHgm3WuPO)4cJKrXj>u=|~ z#d3e({D4@l=bh(@<^II^DY4w&IzK0t`yJ<(#V>j<7Qf>Cu2}BJUHyk*xqo&3Of2_X z&MU<7e8Kr&V!7XTUL%(KSLa{FpL@$6_z9msxV*1e?r)s86wCdf^S0t2y;H?!YMQgcrV_N{`sP_=C5J7zE>~7 za(%D<0L%S>`V*XuC-R20x7j6;HBZKJf1%z6%l(Xc2%c#?49oqE=IMBm@fa-kH=0kt zt;UnE-0x_fi#zciydlds-C6SsvD}}iFU86Ae*f2E`96&1*Wz59!5h-vLTAliz;eH$ zZo%?=TKyK5`w#W|SndzhA7i<{P`6{bA5njY<@#RzBbLt>)IVdnKTvmJxj#_%spel? zkE;7&xxY|vjphD8Js8XNxq2ro*YoO~v0TrqM`OAER*%PW{j1&w%k{N-e=OJc>O-(x zkE;u?TyLw7!*ac?J{imXfci8n_XFy3EZ6_)^Rav%Kz%VzGT&GJ8P{@5f2-w>Rm$hl>cmT<&+pY+VEH^= zor2}_ZS@XVKHpLg$MX58dK8w=SJjzVKEGD)g>S=pKReY~^D}WHd4JxJlU;ii&YE9@ zKO*1S<@Y;l{s@-O&(%+0`TSMA2+QZe>X)#5zN>y6%je(fx3PR)s$PcW^H%kzSUzu6 ze}(1qR`vH-K3`RLVEH^${U0o!AFKa|LFM@-&YUA z@_D^F9n0sn>M>ZpFQA@)<@0d$BrM-IQ0HR#yjp!2md|U|M`8KAR((8{&rj7QSU%5I zpN{48W%W5&K95yjfaUX5bv2gH`_)%s`96U98Z4iWs&B;d`Kfv)md_{E_h9+_QvD#7 z&qLMouzdchUVv{kejYC~eg(G~{}Yer{za!>isgBO`XemQBh;T`dA^|j2FvpY^(rjS zC)8`PJbzIChG*bmydlTq&NY!WAB~?TAL;Vroi#7Pa{r}19n1Zf`W!6xZ|V!M+~29I zvE0w8uf!Qxm*;V3%@<;MKB9gB7vY_FLze%0XU#jXJU>zY2iM@;cth$({4KKPyJC61 zq8^JEV7*^G$yxJKEYDNaXW^B26mLlTw>fKmHIZNt-rLo`=d5`vK9+pE%M-4M zta*QY4SAf)_j1GlPRC8gW3W6w(0l@x=N0NnxC;;E4O#v( zoHeh&@;pO*5l+K;J%7Km=8s@`-l2X17h!GxGiS|L;0ww1dBcFKB5S@Kt|Qm=Kfqb@ zL-C#D+wz7i|Ao$)UyA3G4|4g#&YI81uaocK@-}D9zsB;sM*Ra$<@tz?7lW>jtoe>u zp6963usokp?}p|1jCvfF=Q-+$xW+gKHy9s`<@t@)PsZ}RMtuyH?<1;AEhKQ@;;0Dh2IZ|aRDgvdl1X{HGE!1 zdp}?~pKANNKie;SzQ4$|cjL-_;rUsXSAJe_IhOPBan9R+-!D8~c5$vU>n}fF@*vLP z`B<8?M-OXthP?RwIJju*v>=-Wl6>dCbA3+z90qK0k+asHg!B2ObtPPIOa2N@-fTn= zqd>gQS?hnr6_1SIZ$w1-q&m)@)a&w0ch>q!+;ym5o)>U|ssG7Y>(}8K+xz-S|6qKg zUYCEmv({JQ)V_XsA9U9IQM~wjmUr`Ld4Iy$rheEpk+ptj-0-`vKNA;I-|4nrqqElE ziwigR>;HkX=B>E$M87`6uI2n->W_BT`r~od(Z2pZ+-T~TIcxnVxUJsTkEjoVW>bHR zv(}%8ORIhTY`lW{uz#|@KXlgmHr&|HZ{IDii>!GHZn?(yha%iWz4nJ|oVC6IFCFIR z|1oYi?f1Vvves{n=iKV|$1ynQ@0a)Q&RTyRUPP|*f5}<%*YMz5{QS4Pf$c|qi~{NJ zInG*t5U!u)=YI|EGVM1xYyB&D{#4(7|ArulCHwX#Icxm^IQY=F|96~Y>YsJi`j_zB zwZ6X3jf~&a>-z5Lto8fg^h&=xwYb)_ztCChn{WZY1XPdj;3l4DQLp`DoU_(v;o>d) z`km>lc?BLn)i3V?Tur?$@3+oczX~Vs>X&!Vn>oLj_D^@#`m=Fm-?a6|_Y=68dL1vm zcGmjuaoJY>c-~<~WX*@+lCAyv9__68@p$k+pI_^&`Hgrfxvt-<&YJ%duR6=G-@seA z{-Hibf%LyzXRSXJ4?f#(zw2?zHom^uS?gcNSt$z{cZ|k>jhqLCt;B|xi`lsI(S@Yd-A-{B0&rcWO!Q1)zhn=g1I&1xMyy6Sr{`Plp{-R#{^I^_fex6T)VelzJ7Ny{!qV&0_l(0&RV}e?lkRHI%|G0o>lAHdljed=(p$3&RYLp+;yQ} z-+dd|pQip?XRW^o7cTVm&*Nh1b^EMy*81OY!cKnvd)yUS^NBc(T=(C3&YD-@JTv_h z&YC}i%gA+mbvSGO3y#Hn`(y5otofcempsNBvc1o7*1Qszn(5~`YyK3jGx;iK&DY?$ zrv2USiLCipyu{>ZI%{5mSDE}_XU!kS$;15mt#sD>N1SQ$U1mkrd^9d3*X=jWS@Uw7 zJlwbcfV1Y0;!KmTaMt_>Tu2_{4cWdU?v1SZC|pUd^FP&D^D>+92Oy{5srdrhna8^S5y` zxh`MgBat=V0$1(j*T2kJ^XWJ?(J%j-&YHi6bI5i1Gaiks`5w5GT<3qiv*x$p)V+QC z9nPBn2WOM(^heE&toiYH9l4%=7dUJFJZ{YP%Qt9VWX*TP&EzrOknLaPtoh}*-Aw<9 zv*usogh{^r?8hQ&egIB4`Q6T%KY;Ve_4o}QkF0rLoV%}IzEhnwKLeMVyv14bw{R`F zZoi%9N7j5a&d%}6U+1j(4Y-6n#v8JIesI=&HLfAo_Vb^JtohM6Yd_!qW6qjCjf=@+ zydmumcrvo)+u>?6{dvxs{}sO-aO3`d`G0fP zJZ^#9ANc8uoi(3|s}At%_oB1rui=^GI{(pL1ckoI)z~#T=QZk^u{>W;-+|@% zp!!}c&j-|Vusq*ZKaS=3pn4&e=h^BPusknQw_y3aK>Zdzgzc5V8?wEB#_~Kqdc_4@ zSf1ai`@GEd<$0aDAC~7G>aDRnUr-Om@;pbq6PC{h)H`E&{;eL3<@vdKJeKFH>V2?0 zPgC!Y<$0(25G>ET)dg6dPpFT>^88$VGM4AV>eH}1uTq!eh6lXQ$6e<0tIO~*lh@%z z`}yAo@f2Qa{5f7}y!k6^&xd^bDY%OLF_;CA{qYyvU|fdh7~h0*=lJRG!p$aMj9ZP@ z;tu1XuX4VZKYA3t;(}2)-7H@r&N03m7a2c-7d+ype;T*v_~mcMoyPrJxF0anPrxf5 z_0#W%gZ=&V<#@31Z8+2T6`V3JZT<4UjT=nfiRT!Pcuo4FZ+|k*dCX6LJT5!H=e4-T z_;Ebb_!C?%e)Q=KDga@8lE}dPk%0MHOtqCJB;7JNoM*rxaA2y z{r@C4+k4a-K@c-8#979d0iQm zW_$mDON_UDljGAk2j`gWaTYEzz7ZfIeye7SdJg{=~()^`W!6%U3~$T{;saZvcJ_=V%gv7Yq0EZ z^^LgQcqZ;Nz6Z;As`U?I8Nb!@u#Dg81z5&!_48PcH}xx6jyLr`u^eyerC82y>W}bJ z9e?U1EXSXED=g!^dJvZJUcDoh@m`&V zWqeidhGl$JkHa#)swZL@Pt-YB#uN3ySjH3eWGv?o^)Xn^AL?Q(=MVK%EawaLnOM#j z>T|K2FVt07#%J~ASjK1d)mX-7^>tXrC-n?0aTDo-h($}`Yqmxta%ES@kPA@9^=H84~Ap^;_o}0lN4TmHEqlN1>e8P$1=Wg z8z1^wEaTgZxX5o}8Q*GLzWMYG>+^c}?>+o_4{uhn;qms|zK7E<+Hm^Qd-%Z~{-%f1sy3W{Y7gJn!=p@pmhW>Nhwc4y zF;0KipMR&|Y;$~^iD$p>^Yd}hr{2|g@pA90aI5k4*tT~wPLn?>8ouI!nYjF5|NAdq z!DX1kDLj5x;iNCqf@V3scxU>%k#+h?Tws>>Qk+Y@=2zhc+DmrrJ&tRz-k*PrOHKWk z__aKLy_vj}@yX;VIE8#`*WSK(B<}BgCQiTuoNvL6X8ODEEvEg&c#g@J;w3EK7H<0A zaFbcywD-7vG4&aEm07=Iai{U$aGRO_QQTpse+rkeJe#}ueU8t?TRLz4KKt9O&v=~m zmEXRT@Lby8%GIBa8_oP~#FeK04xCAQ{apQPxYp$F;JwLrbosA%hRNeU;OA|~^?qP9 zo^A38_;T_=Zu%+M_K#_JG4-Y7(w}~GhP>i}wYY=nGeX4&Lzi*BIK=x9TxMJ;`PXSd zReaRmf1ShTXfIeE1U06AZjLLc*L-U{gZ4PRP|fdG!1X52#U13^xO_Tp#{-=2z;jLg zeYoyW-`?A}3Tu5Q?lSekhg|Qj@XM2gm(c#!uKhi5lbPSiIN#Jylj%+SH{v3^otwT1 zABg)ne~0r-{lJfcU^-58`6S$E+CKv+EkAB(kr4Q}J}Cam+z#hG}Bn|}rFFzsE4XaC~c zug3Qr>&KTlxbhgk{>$*w1_?C=#AT!RN5 z?~liYxY_LAuka#MzY?!B{t>62?9Z=5K4<;0?w^BjIo9oS9?r%)y5+eW*P7|y#Fb|H zUvOKeU*0a9{Hu5T7u>&18yPHc=kIbn*yQKoJmV_7jP|#8^Pi3XjkW(S#f885_CLh6 z#%*|k@mKgN`kU^LE!$aNtmEn4_;Re*8`E&H>7O^@8m#;0MSQ)P{s+nb>zAhk&o}-B zk2=M#&+sp~9mTr6C*#3b$J>i>64w3mAa3aL?a#&kWqauH)QT4u`uc>gf*_DTvL3$T zf_^yJcmSSF`vv53zIhn0Gd}2R_J^s@$1NNm+JCF?0<6n78z=wI&+if3uwdl+zkfV@ z1?y+>bbJQ=J;lwx5LcP}1U!QNKFH-){)>-qHa6;V3h~%%~xwyvF4`f1d^y2S<;Eec@>pyQj-&ym&;w9wj zD`a|ey;6@$O@2#{{7$@rJc|Zod4F@(_JZ$OpFY0*L_8zGdjMW+<~IZvn)(sA)Hnk# zHJ*SwjB{|NY5!21oH%m*@3(yh+xfkKmryUqgDijA50Q2Gcg3ljja+|zzr|VeJ8>;} zotr-CUy(K663hJ6DLAL^$Y74EuXWb^8oZJ`)#Y8zn#ZqV|0ntOl5iW=<-gon>#xEY zoBQPt{vBEKL_C9hiJRZm&YIWbl71tD#V#N4V`R+-;q?9^!|_12U%s>EN8vKAchY%7 z#+yrVmZ^WrS?iz0c_#nKS@WN9k;!-aDYE8caT&RKFI;6j3C}e?05>pxW-x&)-*h~O z@l|~%?lATD;?!i{{zEw3cpjcn?5F=2FE!q*gZY{I{R|84PnlMlsB#=GF!lYIL} zpnH!^=#5BhEAV3%K3nuj6KuufeNK{$Jc>@?BPQziIMJY}aQ34z}>yD;p;n z?~ex<=iyA_$+*n85HB%4LF%{k?U&#p#&g|&^*EnAfyI#i`GT|dk5_Sl$=5k+{u?ed z?Z>U5ed8otZ@d+5HXel68SjYGxAM!IhKr4N!wtscaEtLo+-aPHGY0tf4#p+Mlkp7W zWAI|*V%%js6=!bk+dC7N8lQ`28du>4j_(0%Fgbqi$BRw=2yQp|a$LKeZ@&$9qE6?D z>2BWV;@S-FYMi^f_uuhsmRGmOlX!;lXSl#PX&uXJya!G=+)sZpPBH!mUSaAN;C04d z;AO`Be&%}3cu(A7T!L$juf-+C3$fiFFW}kx`1NhUX=eF;!sCsH{KEA6`ubrw*W~%Q z(D)+B5AyYw;go#utMCj{KOe6s@cA>i>uB#6aq6-D`2WdSkMCb_j9kyR>HmqW`52r{ zp2Qn6ew^m4c{$D{Z;FfZcbqj}j>nt++>R@#*Zc>(fcuGL-jL&GP$$Qi$zwSF2!Fql zk5`!dSlrI^DQ@~J@KUV(?=d|1I6uEdcpdqcu6_lsHu;aZ+2lihWq+GI4R6cxY~`je zz|AH<0o(PRf`cM|ec0m6yS(Cpx9|*e{k`9BTpv&$z2bsAoM(Ilu3`QW!;#EA!tb+_GcpTOpS?kkrfjJ)czzL`M?L7(4r9C~K z&cJCVKOZM^y|}%b-#s|XtV5N_x5cHjzq!lz!)Ie1 zAI`>wSoh!U_^&w8)xU<@OndL*rOZ!{_y6K9lW!Im7mQ^3ZQb-^aq2X`J@&zSlk57P zj_vk4M@)SI)64$(*ctMQ3)*po+1~%c)u#QQah-8Dt~cJC&s^>F1F$?#ie7QScDUZO zKODE4JOeke{JQ;$aF@wX#p8H>r`zXxoPD})eCBA;Gs;f{pB~@Nj@Z8 zdw$hKDz&pQ@iyME8(!ZN>nui#l`{olq_CjST*nC0t} zz|WjxUH&n6hN+*3kLLM|j_;@8Q*mFnJ~!fKQ-3F3M0?x0{0%(Ew7(X&oBH2z2JLBo z8nqb*>KT50_P}|@lW+s=Y5zO}*O>Ni!DXiY9=tj2Z|#=nEnH>t<+#*LAD75ykS0&Y z?Ph*ic&Vu`#fwb+bo?{9?*BV+tH~e42eLfczuw1PCjSf%As^_Lck{j*?#}@@>r9@f zk<0N_?F@Ov1y|yk36}UIN#OZ?yU8*@O+aG>>pY4?Xf(MRL5|q z*}l8soU?ttCoVDG7q2nTL(jtVO@0ABgj~-z_u?s7&mV8&GqLu+UvY4bpI@KkxFE@V z{xJrpn|vaEgz1N|03=bC&zzS=BL8(wVk?{Js#8k|1e zFYoVoILoW+GinQ-IhlMst}^YH;7XI9h2J9A?R6Xe8tZuXDsDCP@8B8adcOV*+x-`} zCC^wZMg}dcuk@!2oOOR!<2Ldfmv=a8{vVur?#T6@N1wA*WX&(YHRS4Q95eT458)1T zfBilVO#VC0G)^DD&s-TFjXN&&?Vo^4ukoIO>u&Ha!%J`Wo{qE4{l=X*-}nvOd8e;` z2j|}Fy&TV(?cIh;&HY{9t=WIZ<8ZC+w*G8_o37a30IA_a8UmEVDi@;wDqS7?+dl_F0FEO?_&_B=Kc~E4{N8<+a3OD^D&YC}g^UeNj!t<%u{B_)9yc91s{sb>GUV+<Gjjdk7pisE<+&EGBUj&q7dMRza(P3x&%nWvHQyd5zc4ajm<;pV zoHf524}Q^apVaLmYd!+kk+<`Pw12O&=5uh_OMIT<^4*3+)_fdpBu{nu)6SYVNxj+r zui|p!H?e#_D|*ET?_v4=mbw+o_lwkDVEO)$`dcjDms0;5FEL(+<@->Y{}-<^j^Ba( zWxP3-?{jJW04(4CQg4Ul`(NszSiaw+9*O1qOzI3Q-=|XVf#v&G>bOnn5F??b7N#q#|%^+~uL>v&V=toaRCzVD>I6{ni-`@HO|`C=^Jhf=?bi%k7* z&YH)ivVNvM3Cs7LG~Wu#_j}ZXuzcT0y(5TWolc)FicXT zrNtzgOh%K%Xp&0OA66!lrBVn}Q>%ty6s5u<8b(t|NJgb$62erkRwl!uGMTJ;zxQv? z?cC4Pb-ma1es-U8p6B=cJ-_>$^D_p^{44bYsh=;sNBP$>Y%-SlM$P|PhE2sX-$*?Z zS71F~Z+h1FDlGGf)F0p`Q~p=a8sCd$zLB~Srx+i`gN$39O8?XNC@kZ5T0a&`zF&O` zF2QO1LHdW6d)D~XSn~hsL0I}L>S0*=E9y~L`X}n!u=ID-t<0-hm@eG`0 zT!hCP&&HDf*7oLO$=9nF;l;+KSn}x_Uy3E4u3m{H|E_)?*BYH{jtp7QD2W`{*L-aEc12Lw_ut7qt3-L ze@8tL%X~ETeOU7G>Ibpp!_|dY^6ToyvE<*?Ph-iitDnV^zgI8Dl0R3!hVveE&xd6= zfw<;>e(9ol5bbnVaeaC|G<*}R`17>?^Ykgl5baspU(5txDA&4yvC2il8;xPjPtP`k3OC? zo{44tiFzQGe6@Ngmic|^ky!G@>KrWjV)ZyI`DyjtSn|>82e9O$)dg7c*Xl>Gd7=nGdUe153VE{T7ydu6i|=e6e~hmVC1MQ!M#c^_N)kv+8Or z`B(LJEcsvcE-d*~^=>TrXLSRX{H*$4EctJB%Z|Tk$CzQivJDSw4$jrYTn4_04?>#^n^9`vm7LflAP^A#&RYy3TY z^blA7XU`h{9k(T}`HHrknyvBE@Y%#Q-*UBQjSs@<#5I4B?^)xs@D0RuykWU#jlYY> z5Z8RlF3%d@jqfF{`*-pg&DMB4E;98qJ!^a*UO-&m7gIfJd?sE>T=SjFJZtqyF6<=5C2G9`#YtcHNF%dBrf?P=|64t ztnr;#*0-pC!LnXOy$8#B7WLm)*1M<=VOhVTKC%nP%QzZK{#N71W66)I+hWO&s!zj` zA5|w}$p55SUNRo{Rm|EkWyl229NiY4Ew zz5^FvecsRatno!y=BuhpafKNlw#HAuG9Ojl4yRzq33nGdTj#^t8`YR?*9i)DVR`cqtQ%J28A@q<|AyQ;&_BHzsX zV09ZT>t)o(VOd|JJ{imU8g)FD^)u?uSk~95yW)9RkIzug8Xt*eezH0T%X%60I4tXB z)OTZ9FQR?`%lZ;^0haYA>PN7wS5ZHSWxa~}8JvN2|JHlfcomlUx9YF4tgldS!7|@V zy#vd76m=bz^(g8;@Hw8CIUKehyMKER-|}8$X#H{%FW8nX`7VaD_?z|>4lz-ps`6Vpt^CFlKDDg8s zhzzaI%ktXG!m>UuG`>W<6w7+KRbG4#mi24hJf~DdhSslz#t$i z6&gPv9hN!LnW`&2u@H^+H;|5zG3Z zcrTu|Au_Z+NVi{zWxY+Q7r(4BGPIth+`C>@V_9zyD-_4a<6h zB+v7(tS8X@*??s|L5>&Sk7d1p9hO(`q51FX z^Rdi-SC7Ur|6M&7%lvnBC6@W`dVL?lGT%M)`-2>>o4?@xIH^-u?vc&srxMHj_7&}$ zecmSSXXa1mkl>U1?^!JKqf?k*B|d;<{_`fU{`Fr*hUPzS;si+iEiCh$@OI1|hKTD^YfVVO^>uEjEcR^9EJ$k6=PGH-j&V3|Lw_uG$H=Fet&@w30>^D|#o z@4u(9lFdiZIk9^)KSmxW7 z@dr5`-(#6?r|*Xm-?P8Bd+Y6p@4_-)Nbj%lTll;axL^6eQvVMu^D8EKzGExb6Z0z) zyz~1vmiZMK-ucbn78#mfk?3uIKbH9unO^za|8ahpKauU7{~xi;pNRFYpJ6|+|F3a< zc>Ws8cu#14ET8X$?R*~0?u0(?^;q)za(~O`e+Emw{wmMgu;h#Ndg)N(-~Q9sUVr}v zoVCLrUmx(9JN@y;18xZTh9CXq*96?L)*mkncz3`9e)5-pJK%P^{P70^-W71)pZ(>_ z13sb7AHOf)?E$C%;xGS7z(@b;k53G^I^c_c^Ot`i;MVp2cy7R72Haz}zx;xL!+!V2 zZ^8C`H7DS;0UtE|J^B5bvy%9}#r%SGT%R&Oq0lqrUyHCuab88IX5uGt?MOGC@;hNac!;L0>nZ!SK@eCX{%C$EUM;JdR@lRa&#W>N#zrb}S{ta$0 z-ilL9`Bq)|{$AzUi^lO^I3I^s8OP!JuUx!6PT9=!QTi_&pKQ;~2aH?^E;ieH3deuz z>My`G#*1*h@e(}bW_LWk!WqT~aSrD3#nxMfC7#nF>~?&l=Ye=U*7=K5aNc)re(P4x zy1zScsfnj`YqrKO$D4_V`ZH{Cwr7n$gZB{6=MQo`c6ru#Jsw}}KL0*kY}|;;jSt~k ztK>-e!CsUcJS&pN}iHIX{fkv)uQoIXHT& zi$9C=jhEnU#&6-l>M z7n$q70_Pe3hHFiGdvO!T_beKa`{R`E++SFqSAB4zc^-|!^N4GH`Wakk%CE&$#=G%0 zT~hynC^4vcntHb@sU_QpZZoTpHDp&%kfiB#BzMq_hLDo>Zv#dU&|ll_`l*= z<4f^F#IN+?TRdyL2Fv?Iy$j3xM_rHQ{iEK8<^7^=#Pa@7AHwo}QHS?vet)Q=u)H7C zF*pPF;SaL^7kSqBrC6Tt>ML-G@zwYfqE=mfD?^x!YRhLV0qqa`P;F)57ZN| zJpa}AV0r$lr(k*ht7qU%X8u$WmitHJv$5P?>iKvf)_n7N&l<17a=oj+#;Ioh#THy? z;yZAoaUG7}`qlb>;5g&`xR3EcJj6Ks0zN-Jg9haMoa0&B>w)F|QeTYc;RLUIj%SUJ z!*c(r@5bwJ==%=sFY>JMQd~`(*MDgHUwhX07A*I#dIy&KS6zqY{#E~hefc@;{_Q=y zkN%wW$JTk@PcQl-vblfdeSeuIrax8f#XrH)U)n??^8G1h5BV%C-&e%fVd)<&^vci2 z(jO}Jyd6t_Xr5O-VK3i*ak96)FZmmPpF^6(qGW;)4Q<^8P3I}gkIxxZI_8J736 zx(>_xS>1j=-v@a=YyH7k-p}gCu)LquA7gnxYyGqTCcnn}PriT4`FH}$`&s=LmiM#z zrbhB*#-Ct$KX>!$pYsp%3j z6Mq29^YI$5eg&52MOV*9G;w|?f41k#u{;k#2~YKfv==p3l6Y-tf%rBzIKUavXh&d;hG)Wt4CJ$GZu#76#NNp6WSa4hq%8pK=lN zQL(P4yBs%}`V(-8sed2tPn_Yl(EcvQX{P)}yv>yV4sRx|^HE!-(w{K#HuwkPr+V%6 zz)dFJ3twxF-xwU-yA>4|-1G=K6RMccXkZ?aTFa*2T?+{Nw-QIn+-Isb$zO zyvcYbj=s&s-<0ySr@!}_a!Ip8&C%Y)IMrItPakeRcF)lFfgU8dpUf<(!mf79{yuy@!5m%V_ zM%;vT{?tGC7tHM*x;_%pINzrHHTZb;Pk*oAJ{*3?eV*y~YRc>Wyn*9Q{B691xUP5G ziBnDdH@wNjPrQ`=wuyJZm$H5Ry@;#ua7?;9O#0(@;VM&p3byBSI*vZ<)}I~IyV-jF zWAP-~)9a}hE;k+{aq4UNaX8=jE?i)IKTdhj-S1!FbmOxx<9wL%-EmG@=l_0><|$ld z;tO!)-R|>mz;U5(BeF*=!am0}S9bpI_cOYu^ZYdN3voB&UN{ZQ=au_wfoJ`Ei*T-q zAM&j6@IHLMG4Y!{Yy396&crJ{YkVW#LtMQXZ))kh1s5FQT!XWYbl!#2T07U{2IGBr zQ>2SG;({pWLpY_4bNJ;vZ=;=~aPra4F}T|JM7$!##oOWBW1UaOF~>P4;)LU!yW(o& zWW3@87w?IOoamf}n~X2V`6sz}CQgoX9)RnNhv1TvUHnF=e~NRq)NkiJM(P`n$Lrd= z_}zGMymKBNa+>or9DTZTA+GD_{1`4taGrw)b#k7MyLEOh!7*K&U&edRbS}f2lAM>} zvaZgnaA7y+H8}NL=XH3G@u#?|yNhqa`N_`T;^gz4x8Zu@ow&G%i`U`tDbBy+{ym)= zaJN+F132aq=ddeizn60>Ty?2)G|unsd>qb7caFnpmpiw|4aNz0Q-+J5iOa5X?uH99 zoqOP%e$J^lqrY=+oG`#S1BVTA?uWNs=R63nzTSB#UU-9Z7VbaPc{J`e+&LH58sCWv zN4WT8oO+}46x=S$xj^D0ogcIH`%`W~lUU-Z1LOl6a=NE8Nj&mulHC`(9Z*%dL zxO|NB`#Ae{=XE%3tn+8M*7z&DZk&sMj~7pHuEF^eoqxu|?{fYfr{3fI7j7_a!jmVv z_z@X=zI&acaP3$C(Ar*W<7m&Nt$kna;Q1IkTK|@%V?FC*p*Mo$tfpMa~c6+DDxWamC}#kK;+j z&QIh1PdYz~!)H4$#x--CU&C{ra$bfro_2l*C(LuMz~S?qH{jX@&Kq&Xv(De(lINYb z;rvC;KjPspI{%7OUUJ@xW0yEL;ytC#hjG=b&aJNGc~jGyC_DbhWoW9C=Ag(hWir2mC;v@0m)y_G%V2$%Q zoK@j`H;(<#`2pPUk#hkqUF-Y^u3YE*q{KgVeg?1J;9P>|ed4?XXMXDZ2Hs=*7T#3l z;;V7_M(4FS`wQn!aoU&8U*dLOJ6GeT&Cc6#^|#Ku@QP~Z-FVIx=LVdy)%joCWZd#9 zuFq{Q9*I-_=NyCUjZeZ=+g-f9)UR>wgp+qTC*hbMox9_8#yxS#PcD8b&i~mt184o> zd<_o&)p;B; z{>OPCt~Y)WmmF~MSMiX4o!`XKP0p)u-9hIM@Vdj!ALEi1o&Wnj@Hx&q!g(_uex&nO zoZ8xXCytAB{slKgb^dRDK##u7*6$k^<4J8g|M&aq^E_+(c^n(<+It1(nEb#BTtyL8ri*bS3UIs2P4Y>i)t_Yg1i;xBvF`0H5qPrU+{9NYQ7-(OF-rr8=l3uheX_U8r98h-^ZB%aG3 zWPcO-H(TRp;fUiq|M%a!SmIgZZ{XFjokRHii%tAKJjBEcaFvOd<7^Xu7u(PGAAB9|;CbgcZ^MP%oqxoWlbwIXIp;g?#Y1{HH{y&7oDbua z6z5jg@%b-wJ_<+obdJTFjZeX47rFT9I6u|73r@Y*xf_nT#Q6eTWqb)P>E+^m@bEO} zOf30Ry`Ki+J?8mvBc5a8IXIf?{_-R1J{6?nBN|0y0ydCl+d#}Svh?S&2I zcoC2F+DpQTSo8TqaH=Uk3TG16@tenRiHXm{aVEYFSDN@nJeIhQ=N!PbCLVsh|MR!O z3B5c2_xo&jc-G@}7w%7fTKD%iJe=|x--pw9zsd7Yj@PL}_&!X&S?0IM^RB?NmVX4# zA)e{Q_j=ZNBbI!%`Y?_j?ZyYAZopT$cr0$<^Xl@;&JSNe4c8YW#T*WCB$`n>gb_dza}1sBZ%wv({UNr@wxH%Ev(nqLcGwFuf!kX zR^Ij-aIIvU;9}#hc#d&Opnfl0N_>UapM1r$Zm%3?nC-oX>r8v=ark6+ zJokz--SPMr-$z`JSLYFYUpMh{@nqwRa5u{9`MVX5#(I6t#%WmRqkVvfVm+U~;YQQm zUpU^xPrH%l8P@i%#z|Pm*Y3sk^XB8>SG&(MOKgtElQ`eR7vg!er~6xp3(fW#@Iq7m z5MFSvdtRJ*6YJw~Yw!9Sj4Ms~EF4B$#|Mk>9@G9RTxZIEgeOs6ueaZEL_ha=8u4oC z>-~|C#q-9*yW(o%dOZ)tm1cW0@px0d7+=fwbi8pj&NuOoaha*V50{wuL7Yf^-CmcG z+;3RV*LAqUl+VH!6W8NiglkNEE`F4_UVm$G_%-hHZ^WaB>+dxj!1nyM7{&EQ`7F+d z+>c{D>-{kaziGB#f=ei$=4Na86LA&sN-sX$v&J9BKhvH*-&W#-SkKQ+ydLX( ziKDa02Vvd+o_Hrdk_P4ZIU3LD?>_HXTx71_$+*JAr{PV;MR=R>)40yK1UDGJio>pT z+gpL7jn`ni{q;DOc)WK!dfd`%Jsub1Wa9e1TIyNjE5&?Y((7#}&Nt-;jc&G)bKAQI=bQM0_;$9h z@4MIWbgbw5dt8L|`aLp-^JD5CgU_UWeI8zf8%?|quA=^Fd;qx~CgAjeZh!B`S;jN) zjg;5&HmKkc_#iRt};G^8;v7xWBcr{exCDjyFqS$((ruKey)@^@q6%Y z;(EMZ#7EMe_P4&krKbEAypr;IzFUp)pTDDU9p%??eB}Oq(6gTJLYzzc`hHn~Cu8j& z)Zi(&wRe1@Z*LJc0PFck!DZKVW=y}i{W8zm{&HMTJll((ncHlQpNsnscKf%)v&P@R z^Vps~54PY!tk268AV>xWtrSfb&fI8*r{E|0k|6 zj4xf+pdVUZm+~7X%BX~1${l4=yUWfJb{D{*{`Q5mYxE`OA z@8o(n<@;cJd^7Q6>Zfpk<$P@LtjBvJE+?Mj#rsZdw#EnGj43WZGzAwJzl!6AcK+}8 zq&rV)w$|^8BbdL|{I6x$g*b)s8ovyu8(%H)scw7s;{GN+9aos`FU7-6{2kn6;y>XW z6aNEGGVPyo7dG)uxZK3A#rY;a4BO8$3KtS@-~-9={hw$3e6@HR?P-4|=5F3E`R@Ft z;&`mjpB%i0@;cvd4o)Gi^(%0qsb7!thIRh$_pWpAX|`^EA|6h8>A%SP;(1&_d5yn} z<45v5@$T1z$<5aIS-6n;+TXk$FT(n~n2wW1x%1!R-ezn42)vZ?`u<7A3n^bi0XbgF zJZt%P@c+#Ae!}~)9-m|H<9&p+e{eBgjrD%H4d>n5xp}@n?bmzO_W#7?#C5&n-S;cd#( zyQ*8|as3$|g=K!L#$&O}Z&jayWxlQYbS(38)m^a6&sBHBGXGS40halu>PxW9cUAYn zGCx+GiDiDQdLWkhrs|cVwtb1&cQOjSUnCGU_GDnJ!^asmiegaQe0umf9+Z0 zTd>SmRqwz}rhN1R&DQwwSmv{;+hUoIsy+?N{7ZErmieISbFj=8RrkO$KUIA(miepd zbS(2V)qSzdA5{;)GG9}D1D5%t>MShtN7c7tnQyAT1Iv6;^<7xzzpC@F%#T%1$M*NQ zAI35tRO3%znGdR-hqJMsueF{v{wbFEp6V}gi7DUYS>s1c;eIsbqwqH4V{yH49F8Mj zrt?)V^Q`S%g_DWv`}i);8qdR$Z&OdlGQOmK7>_r80v8(3!zISg<5k8l<4wk|<2vIN zI4sv~?>!u6{1NVE{0Yu5-h{J^zr&M_f564YKjBj2dR$@rC$2U=fcF@;n9BQatlQrR z9B+IKPBA_a_cuNj=NKp8eB-n5Jmd3lx$%X#(l`y*7+--Kjr-x4JKX+WhZBv5<22)& z@et!Nc)alhTxdKQml#jQtBhyjO~#MnI^#JwY@FM_1vt+51>DW}6`WyQjZL z;9}$TxYW1`R~UbdtBtqdJ;pn5#CW&AbvWMm51eAWANMyth;xj?^Ev;I~Md=(yVd@U|C9)e4ZZ^EmLN8?S#V{x7F zBpi09+rRs9obfc=&G;dlVO)%}jOXIX#?RqmrX97caq-#5c>obf2!&GCdWHVHuxOe}HBDPW>^K@iO)2SjOMfo3V_~skdSoe^c+o zGQOw&1IN+1Vd{UejIXI%PH!HM zQb%GLe^SR_8UIqBgk`);-5$$$nYt5}@iBE0uEcsghIrQaO<3l;s7GTNFH(=iG9IIz zgk`)&eLt4*8TB+Q<3s9)u#5+(i?NIcspn!DKTi=OG-%!_L8UIlKhGl$1y${RyiuxZc;}`0% zg68oab!#l+AL^sAj5n!Iz%t&XZii(&L){U}c!T;(EaMI8bFqv!s8g_vU#NRw8NX0p zjw6_Vq}R)xo;7|imibNUe4K8|mwDFsaxC+$)bHYaQ+}6cjqk=XKT6$zSDW(jGn%dO z&RFJ4sk`DvQ+}vtjgQ1Ke@mT%Wqd+C4(CnF{Lgn|8IRET16al*)CE}b@#;sgj2Eb% z#4=u>eg?~Ufw}}sK3%;8Oa5N{2A2G|`YkNu1?tsU^6l!iSn}=aPqB<|sK3NA9-*$r zlJ8e<$C4jc@4}K_SMSD>UspF^$*-&b#ggAvx17oSY8;6rU#;;NEcs~lNm%mL>h@Uj z+3HSM^3&=hEct77cP#m4bx$n$T=k_`^112^EcsmZHCXb=>cLp@&FT?Y^2h3IEcs>i z?O5{H>N~OIx7GJz$p@?RvE+-@v#{iU)sJDx538TTN0ARbia*Hv|3l9juf%PM>-XaZ z&l>+1pFv#n|D9(wTjO1E3UR&vhkDldNG$ndbq=0n%Fpqv@da4&%jy?!xhcQVv&O%{ zk`GpI!}X?oL}9ZvehilUu=+%tNWN9~zqe3mzeS^ zJ!|}ZEcs^jIxP8O^=DY}!RoKDp)jwm&AFF@InOHw>+lQL1@zb#6 zi`9u(^1teHu;hQ$J+S0=)fZ#Q$Ewq@ZKtot{^v&M_C%UiMP#{_Ql|? zqC)GF<$e)Aj%9svXg(_b4$Jyv{e77Z(bUIU{#GpOjWfOaOR=mk*7)C8))T9H9TgQ? zPb|knwl@pQdfpm#Tl_Va^}H**c!#6e{t;({ZS&%{V_DCu<=@7#o>$8saSXqofwlZK zSl07ud;ymAyy~B^tmlpQ+V36{6W}V!LpuL+gpoe zJ+JzhSbqNm>;4VHvYuCu-x4hAdA0nXSl08Zd!0aito!!}mi4?^|2r(}d9{4U6WQO> zoX25V&#U#{!?K=N_owwq><{aCwf;aX>v^^O^H|pN>h^xavYuCcK^)i5na=he^iBbN2NdcMv% zh2Kl*;r8!-EbDo7|2JS+&#OMZ9iKPV`6evud3AqY!?K=N%m0mKJ+JQHWv8-#yqd&943kEbDnSUXEowuWs*%PEn!t zyn1~M#tAz5RA@b~w*LZ_^}M=&e_>hAtDh&MGxsO!dDRQB ztmoDGzhha?tG+ZbDzu(g%g@2Go>%wpXDsV^3%ut|&n|qv$!`B1#j>7P>(^je&#Uf! zCf948+uxa3*7NG;`yR`BUUkx0QK9v`y8WqG*7NHAeuZT{ua@tW#POKsJQ>S+UOhga zVOh_s<=dYf6r{8(BH{W>?mi4?^z5&a6UM+t`cb?DBJI}|mo>$B7#5AWyy^?j=lS)jYrhD~dR~oh$FiPR_vgGGJa1UftDb>nJ+FTL16bDc>iHjc0sFt) z#cQ#w=hgTPDO_(@ueXg@*7It6mtDyHx6*BI6_)k9TL0{xyw9-i?+aMg^XmScbP@O8 zYUd&>>v^?&i&UP^6>fWXV_DCu^?$>%o>%uL>*A=;dfs@iKk*Hg^}JgCs!NEoo>!kI zA7EL}tJ_QN#r^P!Ywr~->v{F_v`^#wU~O+Umi4^qh)X#>8(sYeu&n3R_V-~~&#S(* zH_z9vUHxrX*7Iuo+RNzweCzx%mi4^4y^GShzPGsTm19}YtH+~LAKJqO-t%cbmi4@P zK99Ma>+yfCd;ymAyxRUhSl07udv{zx{Tk;Vv8?CS{T-6Q`}ju}{~XJDUXAy@lI!g! z*Z$jB*7NH2lCI)>|Kg7KA}s59wf>2HxxasN%uTER*NO?=F59mi4^a{;ycp z^Qv#Un(L{-)!&R|J+E%>%6?p*`<>TdSwXRGv3^&NXDOETyc$2XKcDx2i$95F zJ+H=FU(5TT$+e${Wj(KMe=nBxyz0>dXs<=*|GX8;dS3lJ{Ri^AVLh*UJ(l&nTEFKY zzJEkIFU7K6cC~lEbh(cHMy$6UlkXe%Vp%_#?_EEoSk@CJc>WH{`oaF5TMg#?;L!Xs z>YtBgy`QXak?$|rSk~i(dtQoVJzlcs8Z7Ja)W=@W^=I50%X&PGPsFkwPrVq+db~Ye zdr?DpA2I$OhvoMzuf{TduP(+izOVio%lbX7f8h;Lq49l<=V2MoSAT$IykFgND4+La zS3d{Kc)!M9!!o|F{vFHszxv!^+>dQt{kd4i|24h^%Xq)~)ZrXY<18%e33dNJ#xfs3 z%SVpjelgC(GCx4$k7HSXsP+HCGCx4$DK|!i<^!nj$1-0)y+-1!Pt^JeH${c!3uydS zEb{}@uVR@$px%vTeWTVNn8o=t@u#uO7tr$GW0_B&Za0$i!+J=qKMl)#0*$Z7GJilF zF^c=$xG$FVlUn~xEb|Mrd;^yG1nLWJ=6Pp)AC~o&TE7O%d;=}tF`Mhrcr=#z2O56` z%lb^Mf6OghpC%X|YZ{}h(_2p8XlC8N1MP5ePD^AEKAdMxu3)DgFGd^@`O zcVL;Hpz&o`<|C;0W0|j@?wP~>vR+iTUxH=6g2rpH%ui4!-p2K8oGWI1sn-7r%lri` zf8rR0x8efNHeX`a+b27)1`3)Ms1Iv61^)f8;G1U99tY_Bx!|&z#H1QHF^Dne~EtdHi z>csoF9?x_29}}DSS6Jp_X!#TG=Xy3Cie*4PZQ6k{35X*cIjaOlr-=U6qkn7oa5SI1fy8U;t%>U5xhp^1| zQ1_n3^=v#7%X;!!umAHkmi6SJ^=kCL&Ym6>T2Ef>#b;qzPrljnXIR#gul9UQ0sTkT zlWTk+mi6QspNnNZxyH9*Sx>I<4m0SFrg`gE*nYm4_0O@boBM+YaA>|Y6F#JWm^YI+ z>mO^q{%DI?e7|9RTE4eGk6@V}8iS=jw-MX@Kd#X4!Pw@TU%)nh{5!V!>z)tM-!=Kk znb_u+zryl+c#FOL>GUwypUF2(#x|ex8MgVB_K*1UXA`jfKE4av??1ze{NKknVf%fw z&!hhD+wWreJ<9@b|5`of&rjWe?f1cr*p3ghecYdaAC2vJz%p#}>4&h*r(adf{nX8U zzj+$l{P9j~#~Zpnfm^!r_hFmw{utYQ>~T-By>_nrjo9YbU&S^by&v0rd+*uof3mCp z7`FN0EfPP)#m|_-{mS`X;T_L=vCThLVViI3@Khili{2Sj*pp<@Yhw%Ot+Sx${e$ACr$* zh;2UT*q7P9$!E;OcKq+FfZH$e$HxS`GT@e_{__0-o*(e8fX{oyUw=x#p9Xy5tN!w% zupQ5ME8vLN{PAG{zY%bYGJp9&0WS&oK)_eO?yp}G@Sg!+{)WH&GgyAVFy4D#9=+7> z=>azeJht3lerLefzv+)x1$^l;e|%-YXD#=~O9DP&g+Klp{TZhYY-1@IiaOzm+ zjd%;?b$w?euE(MN2=z~Yg!vE?UHQ(q>R#t0+-{2Vxj2jZ&Hq}4^~A$Xyf@A^z6vik z9)JsshvKBUox|c;Kqu?%-oeACx$S*~o6P?1#&-MraGojuH=bnnFRY09ktQC2Ym8%X z{B*ayI2>jikE07+ybHGNcg0D>t2rRD|1WuNK0eHK#A*EZ%=LJc#g}8^G&c^kLoXQ3GT@s*q3M=WuE0#_K% z#gj{2{8`-X73UXmo$)KUZrSosN^lj(8xOSEE-?-vk=YzQFJ?A5e*`N2FBXQOT&d1=i z3g;7W(udBc;GB<~Ps8)pI(L@(>zvQV!`C}^$4MKUFT~ZA&b@HmC(eEFq|coD;)W{c zYjOXL&e!9@FPulij&e-{$-hj{Cv+HJrZP`As~&#`$f$aEJ5zxN@iSTHNrX^Cvj| zC+9D4<}T-N@DSszxYl@wl&^E;f5w%+bPk&*|NTCmH|IamY<=Ebgrlds{@yJ({vY>y zDVuRty=!j^ZZfXH5xZS{m-u(*dR##J(jSob>xoZtKC$)()9^Y|{&L)C;uCO-mVoa{Sfpaohpt1iZrZFS_E|@WlVhr{IiM&b@JIYv)Y7 z$#^i%KEcID;u6#T?RfI>E`Ap-i*?S&mBx?Y2-DuvIAf-pPyYwrV~&5@r|3`5aObNJ zUPW9!v0N|Xag8az09Unj+kY7kqJD%|{!2XEwAX}ljXOWh@i6TT!1nVF!P%!I{@4F~ z$g`f0$8ipE?f-u0S>qdU0dd(Mx!(?Y*7y-~x&Dc(BXLZ;^D(&UH0Kj>SjWV$Jg>c3 zp0)mCxSY?|nm@?#dIy)7&s&QZVqGtI%sjSl;yrO5?Q46N;nt}fmQR}w$h+y84kH}6l&u)$dBt4H9p8SeW{ zHkRj?#&5^*SW3w8c*?WJ7vfyv`uj&8d)D~pSe{qv%~+mS>aBPozLY;m`>p0TTjNJz zd0wewu{^KTr(k)$sZYldT#wq`)t)sz2+Q+JJq*k9OFat9^Gc6qvkLp7>&-lm% z&DW>Kqp@7S>f^Co-|Dtlu7CAuSgv1nB9`k_eGZoES=|HwjeGG2`8*>%Ydi`@;0+>p3X$eRdj_{yb@hkk@1B&$A3C9T zdF_3Pr9ZFZX|dDz?+Y(?+q)i1f1bxssQvj^`tx;O{r_R<&o_FGpB@?N&!>9jZ^qJ} z*ZE;DW9iRFd+}ee^yhVcSW*G|Lw~;7i;u(7pRe)SUxuYWugBvrEd6=iUdoKfP=CIg zSO0!2{rOU_{u(U(`F38s#mvZ1e}0qabS(Y(GS9QH^ygzde~P6)ugCwWSzJH#=kvXI ze=Pm^;htw>>CdNl{uWDrexbKNCl_*k)1S}s;={4@=QBJ%kEK6f;g#Qsr9YqK#XCL3 zf4`XiygCOmj1l@cP#yR^|=poyy(xXCt>N&tKY`bpI0Bi(w|pf{0P?{{dsjh zmj1kYEtdYgx>XVP5B+)dm00@o>LM)tdG!}q`t$1J9_9X~zaH%!kHJ{_^F^NLW9iT5 zc*o}lDNlbsPmkAQTu=1B_4wyt>5prBWjNFy_sZ`T)4$gHqsQZsq5ig>?>sF1=VY(^ zM_Bs9>pVvkbG+&A>h}6!=@0Anp2E@}*3Y*MOMf`ctKabnt{?ip`uT3h(jPANKJRiY z{oBmbn(xm8So%i=UOsEYle9d4@Xuw|v9Jjz<|E7Rn4tRIK$qW7U z?+^H+fFqyvKc6$Py$J z$tR_H*ZUvX-d{aR{P$-bw$JYmuzeo4T;zWq_rbP5G7H=O#wXbJ7uvkw@2^~qZGYu) zZ2Ko)V%r}%{zZR(1=G@zu#ipzdHF9&Zl`_WMSK1dJ)_H(k^WKBVAtg_h)jk?f)#rwtuk?+xJh8 z*Zl8?2LfIfaGNrJ`2hhx6L3wyonQCYza!wc0&WWUvN!zo9}f7-fa8|>%ik36%K`5W zIJw+k|NekK3OMpjfBF6a&kgv8fIBVo*Ut@jIkx?~{n+-GE?n;KujOIeANv5?{#45q z{{B}VZ2Lcj*!G`3!?wS4^jlnSrvG;>w*9j?*!H)+!?u6ccBQ}nHUiuJWeK+Z#~-on zKc4Znzdtr6;5P!^7jTbN{`&U?ye8n5@A%7K9`M5fZw&ajcm4GT2RuLE9|Au8J^%Nw z0`vV<#;ca$_;VAR=NpFc+ocPeP4|s|{5BKL=lihci*j%t=Jmz@T82G|!@IkD&s^N? z+r+RYrhQ6&tO*yIc#CJrZ=dhVx57onZE(uQ#IQyZUQ&NN4!^*azf0oA_u)+Asko{# zF)Ua5ht&TJ#~s@xY@zfwal7Zp52U#EPQx*4>3@3V$Kt$bSAGp1-_w;}iyMtU!Ih~l z{snF_{svFF#KpJb`d-dEaD1Bc&$!fhH{NFaC(gdqmH!9lp4KI7oAi(QeEps$zh&Zs z@QM?{&o`L5X_rvY_x%eQw*mx*Ty2iz`@CxJ6 zxXw5iue#QizY`Y@be@dEu5+FuapM9UGuXu+#`BDeB|gN(pO(1sLL7gCi@zZ8q0XgJ zf4K7-xMqa&3OwW{=XWJ;T!G6+y7m1Td<331#`$Q8-|ifX_vAXa#R+4b<8hhs894b47f-_L z#yOvdQztm5;1zc|Un22|&goL$_$oZ)E*I~QH{I<#SmO6M565+rok!vE_d4g`#m0Bw zcK5sZBwU~8d>_uA;+&5oraI4*c)oKH4u8=3NnB(+50@D~hZCl|@{4gpf%B_4afWj_ z9&Wr6*BYub_+_|i zuJctm>lx>3arJ!XArfEUd=suS9*x^Abn&rxvGF9F^sI~Dk5@nEJPoHm@B9$nT;g1e zGhc9?i}Q`2!z+wmlKRGFIO0WDe>pBTeiz3rcJU8!rg0_CH~s?mf7zA)7S}Fu{vXaQ zb*{y!uR8yRqsyH4;eywl|G^P&IETGRedE@6#ZnhPTH@u-C*VzQI=90^mN|FCla0^B zWya^?3SMp83m3iR;+NytmCjd7{B7q!IA)deFkJJF^C+D2uJdgYf6sY59`e5P zJvi|L=P9_{c!tD3bnzmI8_&imA0_@bzcOlZvqRn8uohv*VmrSw4om+~;~ns3`oB8f zc_o(qrpEhY>A$M4$I>5G--wfTINyS^b~@+cIX^m2#Fe$q_u;0WoFBy9es(Uz*>%p3 z<9WY0KaHz?b$%9y)jKc7$-A9j!#Te@FT)G}aDE4G+T&b-!}mFFz$t$^Z^XF`&fnmY zznr(>&HJ5y#1W0ozv9$?ocH4K2b>%6;(whF38|6F@XS8u1isk!>UQZ+O z_{1*%&3CTA@_k3+8?f~M)f@4$Id1;;0lW_D^?b(5&HZmJe>NUu#zRwZ%&D%u-gt9+ z=c}cD2j?L;-S}o~+Z%)B`-^UG0?skp%frJ@ck!8cUMJ@#aFg*u9CL-KlyOycdlc-)d^YrF%_As*qyuk)<&;aJXx`eq#QlsmqUWBLBv{I6x$ z(^$S=tDnVla2kJ*@7EhVYkVV?=a2duTx+}yHyQtkV`sVYzv3k0y*S;t5f3*$j3*hl zD&_fZd=y@69E(>QpMp0VpN{K|yWsFbw}0JmJL3y*vhgK2)3^`LHqOL(#sl#j<6 zx8p&^cj8>*dvSqrK3-@%3$HMK3|ARHg=>u$;wIx4aqOdRe_zE(#&6Wz@f_o} zxXk!8yv{fgZ!Pm!V8UW#Vd^Oz*WX~ z;acN7++;i*#}>Q&eHbShKY`PY=i%YT&*MqPFXJNP*YRTG6?nDrdw8?)N4Vbj6CD18 z+rLe?o$+@#+4u*XY5Wt;Hm=8c#(&~D#s_ejaf{bD|Hct`oAEKY!T3ZR{iNI9Q*nZE z0!}qP3lB0r59b5&U3JgKj`uK8O!*Cp6{M7@_Dme{8239 z588eWmhp#J?|SUMxOHg!q1d~BW?~tC(CvSZW&A<6m-G_%gYi@>;}81zzQQv8p!GYw zO#F7Y{mEFyAGE#Cu#7)w`Swe=9*rkp8Gq3ITZd)*LAQ5OY3tDVgL({>@ds`1eTh$W zj(LUpSdZ7uSjHc;{z@$44_ZI+RpR%!?GMK?{-E)tSjHdp^R#@8>luC~gYNGXEaMMa{!57)CoE%si(L78u#7)w{ZFxsKWP0^mlMZ&{KjJ$f6(o( z#WMb&)juZU>SeVc-ULCKih5ZE-d2@dVGGxGX9|ZbJI$$zo*^xvl+|y zgP#8@-))-1AGCbycX_@t{!r}Q z-+5TZA2hxf%lL!FN59uPH2$FbvlYwugKn??YOY7)^;pIq^!)dHpZX@g6wCO7ZZBaC z$IJK`EaMN_{?Q+>J>%(E#vk;2HDVcm(Bn6@g6os<2W@{RmhlHIfBlCXf5sowRanL! z^z&W%5%1&I-Sx2&%lL!t&sl4!kF|UWmhlJO-U;i7Gyb6a^Dvh22aO-bGX9{)XVUuC zq45W8{}(Ld4_f}lk9poLcm5j7_=E0$#s=>9w_N;vEaMNlf9F*af7^YYC0NEEw0^r! zT8G9TbbC)=8Gq3Ftv)6Gp7Z@!#vio)9xUSzTK|^Mcwb?yzXi+qgT}9^B5u46Oa4FE zyB^Q^obyM%E{^+6e$VSpEcrY2TUhdU>P9U2JM~2yxj%Ng_Fl%4&(ruXSn_%5q%Y{- z8IQw~&(ruaEaMNlf2VHZelqbaEcrbx|00(Bo_ZIS{GPhYm-IJlU3+t|?}%Rhl7|EJ!JCI6>BX*2J8#!s}pX;|`s z8efkkAE=J_hUcYmUo81RjX#EE{6*XQ2TOiXLb6SKf(Bo zwl^M2zEI=KvE&QY`?2H;)fZOtyfw}fGybFP{fs4lsO8W6p5tpg7EAt6Tz|$xu#A6cduy@eAGLg|?OcDxS7OOO zYP<+b{!#q}mhm%fuV)R{pNT(!B_FBfE3o7v)ko~$`Xk?`z8uT=o3{5Rmi(l~8?fXj z)fepK`ZK-{OMX)0?_(Li)Aka76^9!vgG z<2$kBFV&rX;`$?BsLsKXzf`}5W&BXvJ8>7+pNZdqC7-F~7h=h0s<&gwXR1&Cnd@o4 zYwuAk`Av;)!jj)qA74j#a`?2IdHNFN*{!`uJH?BY9bS(K#jnBd|eyZ*5!;%lx`1$o*f5wxsx&BQ2Q7rjaE&nB!{Hywezq$U5Z@@BsuI;VE zl8@E$5shrmI1@`gR^!E3^0Dg8SjOMAy?|-@ejAvrW*J}JzEaU&$-uX>jecx1TrJ;#C7-KKImGp4oQEZ!tMLjf^AEJWvkr6pnfN#?`CTo)97}#z{Wq5U zuKJ>|h|v56ZSQ3)`Cg6xiY4Ex?%EX}B{Np_Vuf;OIUBBNPb7X`szc~!s_!2DhtF`=}*lxd9D}Vh*u*?tF z^50=wzhi5E{c!=mhiyK$b%ekCKy2H49^3rrZvkHr=`TM$;4iTKyr)F@w|6U+`PTY* zmSelU!`SA-`?m2PkGa_91AoOfzjkqSgfD+r9Pp0;_c$uTmp^<6+x*`)Y`1sL(Hzel zxBt@u{s!CniO2Zs-;ZtmjacTp>hU-&#_vhkmfwJF{;ln?5x#uZSZudnfo=WckMnyp zw)wGlu&p0`y#M&z6!0=^_y5RPfBQqQ9luzNZGL}Gz^Ny&J?@WU@B4CLz?-qHAAh3X zxdE@jcKhKc`OEhYcpeC=ue_{Z3`chTwoczM8`I{M4c$2Q+~OoG3D0haYhv0lD(Q^4&y`QteO zuLwBo41f8|fae8V8*sPI{`z?VR|XuL=r5lYa9O~O0jGEI*DnruTfm8D`pZuWxFX=_ zv;5_U1iU!lJprdC`Rf-3ygA_bvm<=tLlXo3IN+1J`pf4A{6WCSo#QWmOTeoFZqvFgc3^@E;fBEYJel_5O0rx-8U;o8`_Xm7scYpbX0sj$j?__`Zrvk1E_@eXu+LW9L%;(s^T#W( z9Z$MA-S1@qckbhlFAVtD%l+}00skBD_$&P7f5LWrX=sMuUj&?fWrT0M>79VPUgeL! zi0$}OT;B-a_|u~Sx6F+2jmO;+aDBiduckk}IPt&!=C|06ul4QccSXSGU*nIzitYGO zhyMQkorCT6BCqwwr(nDNKLhcc0UQsrzyHIw{D6UeZ@{*E>YxbU_}rV=j^~|moxl77 zZ1*>2u)q8aEbD2szkUE`U+TuYF2COIC$XJh@kMPYuD#W(_R&48c9^tQlAGY(C zJ`TiBzR@4Q1>5#lVcUNAP5$<;$F}_!1M&TVc<(HK{im?4zatP&9_f$gV|#qQ4#Yc* z^2hJQw*7u)KAEh~&%?!CyEOma7Bk#>yxwfOoBV4Lb`g#<^V8Dt3d%SCW3C)tZ9E9C zGainsjI;4(<6OMWcoMEP&cpS_1-QYu2sar&g~QKr`}Z7kI8*#RAi#M3FXB>qm8y}DJjoaZu<4(BPxGSD#d;u;o zPQ#_fSK@Nx0eF@1FkE4rjVq1E;!VbP1Cf*enoom{| zbx(8&8|1ZDfXhw%A)IiYEB_eY^m>=DBCq^cxX{F_asHAnVg0>$mp9p86F&!UGCm*I zJl`d(#5*1{af68$;iT?v`%mKj#`AD^vWq{56O9++g~qSq&Bo=p(Rd|pcfMjZ^7{wxbii4i1995Wn7Q<81KWeDXxAaPBA`&hZ~14*ZF@8Xt@8dd`Wsp7Q#8A0K$u^6PQcJhxu!4_w--%YVNoa?$c; zYxzrYY@aS+G4kJUWBY}kHU1c`G3~9w2^ntx*Wl_ao!8-_zRsWGw5y#r;f8+B-{R8# z&fDFkEJGaMiw>T%@s?pA8;`|)v|8sRW@L7$29LMk0(`sQ<^h6t@RqKI9Lr9I5l42O5 zMl=dZQuJ4-Oh!p6ghrT(LP!rv!Vra26k3gjq!fzO|MR==>(})=*Zq3&dcFHz*LgnI zIlpu6ZS8UPP2Q*BszKhJ@QjKRzZL-li5 z#%pyMmhnpcDwgq1y#UMjs9uEkEWq;omH)MWlj93dr-Ar+oHNUxFRO8$@xQLUPOsWq z9B(FXgI~b<`>U_OMJ6AIi}8_6K)&Dq8h!#ZJjeYVE->xuyj?B!tjSNs@#T*%0QXC{ ze5(IG|9Lp=O~1aq@Iv}CoX4ks7cMi?e-Y=K_Ve&|lW)YuCa=WhCQn_+{g}xc;|=6T zx%r(ZHhC|+j9l0EE^L>74BkWg95?>_;~ZaI)*$u{_itu>>*BPx{QB0%*~ZOqqnG^h z$v)@miA~#O3tY{n2_UJ4X{wT%Gn7;1M z&v1sx*W(uC{JOIE_Nx9aC*N8)2xKFwdi!%RL8 zKSF=q-WzeT$$!M1IG^PCrR>immvQ|yc~d;Y_(Z&g>FMwD?}O)?{3`r1xsIm~;FTtS z6raHI>hdhb8%+KY9!ReHdpF*0^8fH~ay|ZAE|)RL?~e|+l^I|9;RYtZ5qCG!e;j9; z{8?6iCRoN3$zcQ)>h z3ygc?A;y>EV&iM@OyleELgT@Bjq&Zc%J?oEd&)20y||HaF>Y@>5$73C#r=(+#v_bp z;Yr4GaGCMzc)9UAc!TkBywmt2oIJxX@8>wp_-mYFyb1R<-inKif5Bsncj4*Ad+~hZ zgSgzd)(ZB&@nLwcaRZ$Cv|rw)IMeue+}XG#E--G7hZuLn#l~mjna1bgg~mPc8skfF zmGPB0_KaV?Lfpu>2)8%B73Ucb$Ni1}hesHX#gmL5!ez#j@p9uQ@CM_Vc&G78IQdz> zyszRk<2P}R@eaxY+nOJk$6@ywErcuQBd`tBlXUu~NT$=i)}jdAPmtML5s+GTh(z zYCOVt0G?z#2$vZT#mkLH;tj@Q@J{0gaPo70c^|=P#*gD1;~BWO@$f}#Q1MqY3oZ zD-+i1=gIhY@-{BN+FA1fxEc4qdcQZxS@UT)hg|&(&NF@iOTDN0TwG-Q1|DI&2p1c_ zhoyeh{^eNeMfGYd^{9FsE;IfPFEp;iQlDx2UvatdA9#cDJ}mX3wvT5KDcdZieOlR(%4N`&o4>EcK51WGwfy>KrWfhWZ>V_p|ErvD6#t3$fg< zs`IhbL+Y!r++V7%#ZphGZ^UxHuO5QsepP)ZmU=>c50?5tJr2wLw7LY#{i^ygEcKWA zNi6l8x)jU(rMe7DJ*u9E<^ERv7MA;2^-?VLhOg9DjbF!N1Ax59qNrIsUvp z$9Wo-=kw~VSf0lZc6qz6>5msU-;L$@yH4*TEYI7AxxD^5{{Ae_zXv$?!}5Gx+t0!B zJYD@amgni}uIqU}hIM(SVtIb9`OjFMpX>5;+Q9civwc1h%ky(xo-J6OpX>Ba{f76y zrhPG%=jS^8jaZ(a4{*!h_FLZfV%;A1VtIb9?bl*?ey;Amk?o0fe(z#=ey+>gVN-Ja z`MKt0Se~Ej@*evg-!H>Dy~$XfpQ~$spB#UFt{#Qu`MG)*mgncXyf^&7_igb2w>}%O zJb&h~Ui^5-+syQ-cN&q)&mT^}Qtzl&VX1f2hgUE^CHSn3~bUyh~zQKxL>c;k7v_8)8i082fjKDRPC{`_3~zlx}eWdRE6UQ&l=XHLsV5yfh--)GOQg_(K@ozjF%kzBg zzZFaUr0q|tN{-i0>Kn1tPwKf?p8sqA#y=;=>nY9qVyUOp&tj>k)LXE;FVOxM{lfPf zOgdwZbNm_i!ty>s=f4>V5z^< z=l;g=Xgn6n`wQ*A3rjtw?X!1qd>Y@0r5@9K5tjEI+P}r`9G@n?2}^yZ?O(xCpQ(3Z zc|W54uinY@Og+)#T%`)Q{T!V=VQfy54@Scf9}7{v)x}lbSEVQctQ6VyP$9UH)TvcweUd=V7TY zHU9%keW^b60LQ2C2rTc{wEvG->P>B*d647Pco3F)Q}b7`ypPlVO?lES^{3|7V5vXV zrC91ubtRVfciO*CHU2)B$){kcN45QWEcK|mNm8Bo`#$ae0G9ex^G~qUr|QG1*NNAs z>fTu14{HCVSn5^HV>S4DM#f#S)T^40$MQZ=`|rk5ziNJ3P5yq1@klK7tL96wynodG zt!mYY*Rz`6f~B5SzmBDzRsSXJd0(mhud7`rUf*i|5|;W_{VSIGR^2YSPW=6*_Md^J z-qn0FmU>s6QHQ^uWL$*heW>>T8cY4F?Hkvv6R&^OS7WJv)umY8pKAZZQ}}x})T5eT zjHMn{PsLIXtG~tazE%5otH<(~{2?s$v9@20r9M{IKaBM;_rv`H&k6i@;I4;9`%etK zF>s3`qU~=Fyex1^YP9|3fu9fjd*CyVjP`#3+xzWr1GhOUnvV(mRp68AN867Kyee?> z2GRCI1Ah>>QNw8aL4n^5eB{y5_5-lJU;id>uVbS5`+;*BMe|nzAKy5dPYYbHNi@GV z@Lz!kHI2649Qe{^(fpIZ=NwxnQqMhvZGH4Tw)Mp&$MN^1PWJW4vw?rbw%+U5JnH+g z?Y}z6o2EtE55%_p8-Wi7?vWmCKMmV@bSt*Y*Y5bJ?+*M?;QA*-+xNq^-h3U~dbMUo zG%pA|2ix`sg1pa((f+frZU1-R3r>o*e;V6*c4v@xZ4sT`)WAOn?vxpw{=~pru&tLb zZ^`wA`c&)JRe{fK70utmwtwr^QO^wAFe{o*z;=EI0}pG%-^c6dm*;0}=XXupsK3H? zdU@@l`O?6rw2!ub3EO(T*~#3$wDtZQl>u=S8mvu9*|f3j)sxd?0Y2 z)1&=o1^zqm1!qLtKOJ~y;I3yz+fNPrbKp*$qU|RJ-V*rKv!d;bv3*|kU*Mro z2VpzEw}ZTT?`VDzw$HPl!}fXfpMmrGMB6`wZTlU8&%HR>ehRkjw*~nbmqgn?9C&l! z4*AjPjmLIsBgk{d6ouw z>J`!U*9CqH+x~T~jJhwj^Pd+u>8fb^OR;@l@JZlv`bP5wfm>c3&7Z;Y{d^s7>R%Ie zF}CyjFUW`Xi?-i}ZTr6cqxlzs&o7L&UmUpowbA}B1a5L&wEskG*QdsSs7D6g5%{|6 zqtn}f?es3ZA?g*_u5ZVIQP0J;e|k~WQ?c!za%0qE0{t}6y9(R(&4)(Y55o3++GcFuFLt<{`^R>E`;Nx8{T^)FcN-RM z{}{IIlkbSOzY5#wzl3f3X2YZHZ^gF#Vr<*DzcbqYer(&X#A%Za^S|)e{jFo0`GUOU`Q?1SyjSa3fxK_U^Kj0)En_2G{|aaA|C6+THY?W1 zeV;$;W4;eW`T49%W&?Oeto}n)_gObY4W4iB&>NOyq|oooBjpPn)k+KU-|uUpR?x0xL~cH{~~A2 zm*ebBtz%hk|2O@D{Y!h@o);!kvR1mzy5QaHGd5+C)e?1tFz`mrzR9o87tWfm$DO|O`=iddY zyWyTc`1Kv>todlXpIpbY*PJzf8y9T${eO1W{CAvO;g>)C>x4CLf#;h13TMsx;oe*P z@;~aV`7~Uk(l6h~&YG{r{Y_qNUBa5z#!JZcd^_D)^KxbgE;?JKmC(8B&>Nyocx>5Z*2E*%LTAkf;_c+R{hx5w{8>C{uRs32aMpaiv?tf`yw1jiH9rDR-{%@dVId-tohq`*1vxFesa6)R zJotbgk3V+Se6_THAuG1ujmHhYv6s6zW+35&7a0gOupJ#^RMyX8m$f; zZ?%6&So6bhYE3`?bDT9lPui2~_Pf(r^Z(&ywR}F$S@SpXDso-FZO)qihBIsX{>?Wh ztoey}gUK&<*8FN*ob1j6af$p9JSN4j?{a5t{~_K)uE+OYXUz}bNr(Bo{g#9^?}&4c@cE6-nh(Ky zQ+@uNv*s`3xkvf!wb5DgEx31m-@n1ugf(x9Yc%xhccHW9`M5v1j!)yAHGde_JKFbO z=B)XLxQJZ)?{(JvAZ~DsU%rzo6V^NjmpAh3cayW`x8cE!eg3?&=Cg5X6Tf_$oHgGn z?M>eB$AmR+hRexy|Mqg${8BusnV|f>39vfF5e($&4=Q#X+EFjtoaNS#8u>az8}3UVa<=lxhMGiB4^Dn z!!u1@?5z1jyx-*SIcr{y3o`uj{o|~8wJPpkPW1Ed;H>!>cmTO>pTW+W-;Nu#@WT?&%{}6eSWjE=ELyjc0Pa6S@T!$l#_k_gR|y8;k*t$ zZ}e-znm5P$v;Fqz+y4ov*vf;5vTj@|B|!jui|EB_~~zU)_faYMXu*pF0m3v*uUe zO`ZJwA9B`wG9Gi5&sREY{wdBl+fV;LXU%KuVEj7AFaK%InxBP>JNxCo)mii5xRPA= zPnomk^YD~&{qj{fYhHzOy0kj}SheP_a&XX5@QFLc(t2rn^tsk7!~xKVe%{1wicS4n$vJ^s>nC9HWS9@4{a z-$G~2i*Q;`-@nvZ^D?~l!d8ds=L%=dt8iH_-#`72gf-8^eS7=uQ|PRD5nf2H%U|lO zc^Mvjv0wfQXU(f{vrBxQzB^&fGw~{N9iI!GH7~+L@_kM# zKYdTanrGq$m-+sM&YBlVdvZPgOPw_@!)cfMyuw-YD!hjL(ER^QSo2Igtia6QS@R-k zPrg9P6z+FRoi#7RW3Tjig|p^WIH#|le)?YtYo3Xxn7q(g^CG;{sR5dc@-`v*Xu+2zJxW;#2GjE{)Nt(7vZ%gFLlJ8E!wwuV00;=2f_aT&JJ@Z^D{q z;?6hwddC72ZRx z<5&8Dgf-8^vxfQoQ|PRD5iS^RuD{Njm*F+!x_lMRnpfehJN@-3{b0hHXX4lhzkG$x znit{ua2Mg?mN=V-&yl2ypa6R`ZJ1(HP6IFcbWBf*1QNe8|Cv-XU)s-n*X&r z^gg4)S@SBq@E+eky;{PWXX3$Qd|v3Rc@a*#&#zypv*u-Z6uF*X70#Mh;r3&F|8#x^ zR;+m@F2TBe3Y|4C!kxzX{-w^Em*MH;`aGt>S@SAfGT!%3ub!~xnYfBv-{%xMYhHx= zKj8b9I%{5rmyql7S2$~4g$Eb=?UP<3Va+pf+612$I%{5p*FNN@U+S!R86I2W`&T$? zUWIcW@%__lCaifTt|Hg{SLm#H5uP#09RJRmm*Koe{rFPhta%mQPOjT0y;j1SXW|)? z&HSA;FT%a2`01BAYhH%;kRLk#oi(qL_K*8Ky>`NyXX3dgFLc(t2q#bV%U9~Gc^O_Z z&97gDv*uNJ@N}Q2Cnv0VCT{kGU%oXlAD*!0nRqU_9^Zw|nit{zubTCD*1Qa- z&hz~%oHeh)E9d+E=|?22c_tqAnqU4xXU&W78gku!rOuj{N&DA*{|aZ#tE4@-u3vg; z!kTB|u?zh26*_BPgtOoDd8xDJWw_Gh70#Mh;VEyK`5&3E=9xHep`U)Cv*ty3FZrSM zch8%IA_gE@UU-uzRg+l9XR7#KmG2({N$nh%%u-}(FtXU#X@N#wf!Iy6sM^D}Vg?|uKroi(3iXfFLu^^1)jgf=f|ceta%0=Q0ep0&YF+Mjehd$SK+LA z6)rb<*W(k``~o~;oA3XEv*vSgW|cpGYoCy?=7-~%a6*fc-YUr zK5mndu;$sg?=OD+Cpv3B6{l|Z`7US8_u`em`SrWx#Dq1!5)a$qpFh0mtoah0_q(6| zF()Og`EhvvPJjH4bk=+fp1I5S-{`FQ7M#D^FW*@$64pEy*VyCxKkKadi+JIme*0I; zOjz?|+~6;N{9fm*`Av8^xt<>%IBUKN5Bb}#UyGIrYu*+&*z5BLoi(3?7n1Ao@vF1u ze@Od%e*G?Nm9Xadxcnc#eDj<&e+!TJ*U$gR)(LCg2shjB=YPAi=66YZavfj4cGi3o z&N|@d-!Us;&CkZ0$o2a2gtO)|@tA`?|JPabq&AF~F}{!Dp5I^XtoZ=Ep<3%h`)8T6 z<{#qXB%i0ZO<40xoKxNB_d9Do0auah{C{-Td^?^|v-P3<*R5T`n)kwc$#r~u*;(`X zcvdanKc#)bnjeK@wS9iGv*yEaUvgc()y|r)!>M)r`kj1o!kXvc<>cD`F=x%6#KTg2 z|395I-;XouwLY|eFFz$=&9A}bX>-KxtS@S7)a3jC{e|OgWFPz%g&%aN{gf%a~gUNOJZ#Zkd z2&Xk|edzsY!<>XQZ-)1f>-N3VS@V1FtY$v{##!^tIR99`{AZq?u;yLxUUD5DpLW)K zmb5?4=LelNuXP67-{ghPnit`E&Hehn@2vSJczK$i{)uNMta%o0mhPAT0cXu0k@hD4 z*;(_Qc);;~{yjP+tog;bQHI}suQ+SI0GE^N_;ApUS@UagW^3Pnsk7!Q zr9HVGzs)-*toccJOdG%a_d07{jN7;M^WW;M`7gMHT(|Fe=O(OqPu#wp@Bfms=C4Y7 za;@*`bV*qAR9vIIKmP|gYd#duC)e%snX~3=alMoM`nBttu;!=XCFI)wQD@Dk<3^|W ze7Cda|KMTddVXJ;o3Q46aYhHfecpD~{9Rmb^2X;Sta%z9obCJH?X3BIIQ3LN|L>eN zuf)sAb^XpcKVi+!$IVXjd8xDJWq1U+?%(R&64tyfZr0K7pX;49AB@XQ{*klhpW|UU z{`hQ}m$2sTapoC*{tr28J{hkf*W>#)XU+HEF`fMSUDQ2c%`d~7$hH4#&YCa8lg{?@ zuYW|CF=l&*7fu`sMr2 zS@Rk_=})f5XFq4nZ@@FV`20O*&C7A`u73U}T$r%tt?*ovk8{?%1SjYE{@a{2-+>2^ z>+*H)m9XZ$af9>x`pt3H{B^vLT>Bq(QNo%xz(wc#{>&YEw)%kzBR zp?AWXpMi&6;OGCiv*t5!20!1a`|odO%@1Jt`A>DtKCExA*0DAGgM1&Szq958vHU!& z`WD=&ck9>&*ZxOm&9`Iw_xpC^27Ou|`ulz7T%54BKOe8*=Y3Q8hiWXrZQ{#XANu=! zOP#g-N-W=pSAU9oo8Pa!4yTs+pC_(%3GMs&_Vw_9{@%ynl0xs}@q%l;+u-B@-Z?n! z2JfzT?LhBdc>Yb^SKu{+ya(V(H+$cTb6H+p|0i*_@dtRP**-h*X5*&$+|QZz=i>#& zx8bqIGw>ASkMJ<#KXAVBv6r&FjPr1Y@$EQf{0z4H;|09)uGX<4_w&(zJL~>CfLEIS zEiYqx8t3DJd-(Zm_xCzqan}9|aHVPg1Kwj?_j0c1FZ=C#D$W_-I@aI){LV;co!%JS zz_g!(rx&+A^!FlnJ8S!Y@G#TxyEneY~#&1-#Fz;_OJ12Sbn})=XVyCpTAY-;-2mO z&&R%i<>#|CpNr+^>D6!Gm9w*AnKcsQ%duC<@tGAHLjxIaF2?fn?%MteEYnx_$2lFm z2jVF#ZzCGWcrh85yzTuio@M+Ct~cA~4g0daj637GW_pA0TGM|T&NuB>;FYHRZ+Me& zqpNw|VA^-ZnWy>XzX0zs?eD-1%=}7mC)0lw9&G$K9&3F3HQXQ$<7)jlK0Ep8C*uZleE$wO%lI1H%uIg*&Nca)xUcbMy!UKB{cU)d z$&cbhEipa|SH9ureuAlygc&*8I;qAuF3K=iv`ssJW&5VcQ4Y_`L zBXPFLXW^d4tMLHifAA>d6R+idwVR(_7M^1A0zB7vEM93mA8#_=gcn}mr?(aFG5HbK zaX!4_*Y8Z6VLT9bGJXt~UFfIxB+fVahj_5@A9$?saRWFXj4!~`d;972!3#|OKfKEL zWn5|eHQsMr?RuU!UE-&gj2pb_*Do7q8TZGz#wEC~@j^V}GC#d#c$mq5#U;ka+`#c? z+!Ze|z7-c;;ioqouQmB|c)RiExW+uc{Qux)#wQKrdf3-buMN&N`4zaQ@i;ud_%%Gr z_&c1}&rh!sPceCF5yzi#C%n?Q2yZf;f^)9*(|Zc;3dD#`z|{2M;!$jmH|V!!wMNZeqMF^3$t>7nuB1yvn!`R~kQz_Zz>1lLz_fEyoRB z^Xs=AXBjsd#PMgGi~AZ6!FzA^)4LN7Gx_tl#CSEHW&AH*V%%adcHQtYh8E4+c z_&3f^uN^Ki`Biw9@dJ2?@f&!p@ejDD*iY{#yxrtS4dr+<_X}s^Y~!17Pvfb$;2}S~ zr||%je~d>N|B0s80RK zChv&zjjzLljVI!<#*1<06hFNcc!tS$;04A_?%?<_J|9;a55M`{~EcK3h8J6E?miQ#aKE(3-&eWgbNw_orAoa}O&YB;fV0j**PRCNet21%7aXXxAd>WSL0owj7Jis^?4>Rt8#~NRZrx;&>XBqd$3ycTi zmBzQ=wZ?bgO5;&@kMaGu2KALL?*!by_)(l;JRN5nKZ|pXU&Q&wuiyd33-B=G#dxgo z3OvR5V=VQiF5eow(s(_VdQ$W6@gCzJvDCAgZ^u&4s&`|lAJzY0sbAIAMl#+QCu6B6 zH9rDN{i;41OFgMR7E3*;&cISXs#{~JAJwN|sTb9!W2qO_ow3x1>TX!-Lv=4K^`QDv zEcKweFP8dGeI1tiPkj@XdQW{DmU>S;0!zK89*w2mQ;)||->DzQQs1ekV5#raPhqL= z)X!n5=hQD_spr)5vD9UXi!Z|V=Q)NkrlSn4$r5;naz*3K?+hVD| z)Td&pzto+u)L-hZSn4nJ1z74WbssGCmbw5-y`}DlrQTBCfTg}t-;AZcQV+vYU#aiL zQeUa>!%|PFAH-5msV8Bnr_|H1)Kltbu+&fL7qHY%>bY3zC-oax>L>LgEcKH5JuLN- zx*SWrq+X4sUQ(~aQXi?m!%`oqE3wo^>R++cN9sSY)I;ihSn45l>~8kIacwO1kmiSD zsejZBvD826W?1SU^$A$&A9X7%^^W>vEcK2$2TQ%9J_k#^qdp%?eWSh*OMRox$5P*@ zufkH_sISFR&!}(2QqQP|V5w)+cVek$)c0ViU)1BU)Gz81EcJ`}F)a0q`bjMHin^@`?SVyRcu-(aav)SI!?C+clj>J#-2 zEcJ={Pb~F_dOwzWL|uIp``@@OmU=|PA@V4|Q`a&o9*{VW~&dZLriM>TE3a zhx$w`^@q9(mij~89ZUV8?v171P+yLv-cVnI_ZVM~rT)--FqZm5eLI$VLwy&PdP99L zmU=^7jHTXCPsCDRsHbA7FVs(CsV~&Cu+$goIaulm_3K!kZ>!(IQeUW-W2rCHA7QC4 z)SqLiC)8hKdET$ygyng^dMlQCL;VY0YrG3f{h|3@EcJ)_AeP@}tFHAw>M!HNu>JeJ z4Y2?0IyiG|?fCnOo$@{>samZ1xZ3gO|LPmCJg--OjOF>dI%|CG`15e}L@dv*)qh}l z{;a4q`JH+ymgjHkeOR8Ksr#0&{yhIuFT?WuN`3sptUu46)Z?%` zKT=m=dH$pB@d)eB^BeW6Sf0PAkDSQ*^ZZ0T49oKm^?EGNFVtsDV*Ppkpne+5^8H>SA9L%3s=qaz62+~=3Rg@U-!OR z+8bYs`+krW8|>c4uE6`>^6fvu$!~kF!a47Fe}Q9*z1QK4cfB{_{N>&ic*c9)+wja4 z-oN2l?|bjYWh=e+VOie9r&{bF?mVuib5gA4J<;e*Pf-*VS}hqT8HPq~Y~*UI*)=knoLwpV+1zAwVEy~^G6 z4`A6|8M3|U-{o%po-^A^+mFYxz4Bc9PqA#T8qPd!qT+z~zDKjgGeO9e7IM4S}1DiT3Xwcvj%5z*+Z3`wt1c zAn@M6o$ibF9}{?G;N<(G?Ry5E6nJgmMq{J>`v#sFxH53&xM=^u*dFimusuF^V|)B{ z93MSC?+&~yaPsqe+k@naH|JJ~71pYhlnbV^EM+bgCaP8^Q_B{em z4E$B#W1fiizbf#vfwu;3@np3BpuqD2?+)DYsc8Qr&HaMhZ=Hk7%d=uD<$B5!`5DfT z55KPrmwfE+M_$CapL@^2`@i&_kB6-HeiK)2^j?GuHhV9_t17)$;tj?h;{iYW{Bykh zH}ADL`w#DL@rb{?H{<31c>jcJ9Q59f*H&wjSY6il4_sEmdoNC{<$VB;s_k84G~1)D zcU@fXFz-~n_6YBzap$AFo8jb!-pAuy<4ipN7@xPrvzmBk) z^CjLHxW5 z?=NxMW8NF^h^gM+<26rsSK`d4y??<4Grf1>`Oka*g_B?M-j6$#c_-b=_XB2oC*uus zy${FD=6N^3{a^ELf@i+rorWvl^gan^EcDL80~UFof;TPk&cSm0BtF$*XXC7uZ4SMk zz13OsJ8*k)eLwq>v*xehp5)wR#pHP0>a6+CIGgjcJO3c(YyJBYPUK0k##qjOb#pA| zxB5gZ=eN2ww)N-9*gg;Hi2Y~R!7dGI$FCO)UHw>s<$9rBhvj-P%;jkfYsaq_>YK1! zFVqXLTrboIuv{4dI+p82{QJo)&lW7#i@~m*&1zgbe!VDn?eD~Ly-=^f za=lO=)`aPEz2Iv`@%1afa=p;}c`Vn9PHz2oV7Xps`_r4&j$beKxc+0YTrUFUsBac@fL?VWsQ84a@aGn#uOhJeKum{I9B+@Qql;|Fk*@&&D$T zFL&GHH!S1-Lg)6!@w_OP={w(!W&GFtEiB{z5|{78GXASOHLo2X|J9?hjQ`qy1(xx@ zp6g#Tt#*9;SLb0F|8v~)iV`g2e}VHFEaQE9=LYFKA7i}Nya3C1ubzQryjO3=GTy5* zj%Rx^-m8nSjQ2Ti`g5_2_nPm-GTy7RPhkHu-m6Do8Sm9gu#ETWSO&)<uP(+i-gkESXIRF2&5vry z_``Uw`Q=!~d-V(~<2_$9h#&u3v5fbb?)Y!jDtbKK68Lp&_xE2xen#tPeox>Pfoo+& z+h2g~@%%{OFR?wJ8n%g^PX&RW3j95`=XdkA(d|1R@XLXBU^{;2w2S(_z^eiu-9FmB zf8g1H_XIxse0H?`;J|MMj-489-!<^~ zz#j*$cUrXnMS&*={yK1@j?w;C1%4)QMc|B_X#atMX9xZ*aQoAv{cjKaR^WYsJDm~j zKRWP=z%|c|w$BUvP~gu4AJr+^|FXbO2L3+q@n=Q*-w=3q;2nWaIXl{ac;H2W4+QRV zPPG5{z@G#@ymPeu#et^={x|$*1=bpy)`cWCU^?A{JXyA7O$Ig$o?-uxxz+VS$)-Brqy1=so?+Tog z7wtbf@P~m9>mF^NANZ-jTLQPdAliRO;I{)Gz_#AV>%soz`IOcZld;V=VOxKk)HB+C z2)6AP1$m7Nxt}rhN-u2NPseutTd=*qXwfU`!GT}Hw*L4x@Oc+S^NE4K34B8DX#1N3 zza6+*pJ@9Yfgcb2L*SMdNBiF%cxm9;mqgq53H%hc_0&&+PtK3lSEB-dgl+$$E{(Ro z8ryp38Eo(Oehi#-Sv0>r@S?!gE|0d)3p_FKy1>U4MEeg2JO|r)_|L%SToKJ54E$B# zW3P<19~k(x!2bq5@2Y73iP+Y&-v&OhZ!{kgcyZubS4Z3T2|Oe4w!o)c6Yc-Mz~xw; zA8P%W(l6>>*w&km23{NZnEuiJR|b9>+v#n_w%$3hFzTBE&kMXK@afk^``;7z{lLlB zMcZE(crv#2+4{iE21N71z%K^=HE{duqy6s)yeRO&z_~X>pKpxA_W8}~z>Nn+^Xme? z68P`H=N3i#KNR@uz|C)rw!bm(8`wUN*@NYMggzfS=ccG9VEg>&>%eJ)qU{G^+x{(V zpWo~Y+-Yz$A02o_;F>o_+vf#-DDdZjkGv(?KOfuYZO;U*3Vh0~(e|SPe;7D*NVNTx zfoBEY5jf|zX#e}LynoW?iK_x1Jv5s44?H{Yp1^0{9_?Qo_{+e}hDF=o5O{vze*)*; z5$*p-;0=L~A0BN#7~AJ9uVMSV=g+{W-x#k`32LgW)xar-|_SXlV7kD3*_p|zZz3V9MXUy~VhXbzY&u8HbgIQQl{i zW7&QU-1GQ`Gm_)mOW!vQz_Pv6Z(!M8dtLver}@4i+efF@2g~;A@19>jfn|GXz6Hzn zn(q3yekM7-y|n!uShkn8UxsCSO>xhk>paWyu)T7e^Ra9%ZT~E`>$5%Z=`*AG_`qKU zPAiSJzd7)tz_p)?w$Be-8hA(GGoO$4FAn^5;NxdS+us^^3AWq2<_l5x3Op_F=D;mq zjP@TIcyZtwFGbs57H%=0w}~ zz%t(G`SN7opRqlka^^<;K;U(OPkbfXepul510VHjba@H`&&PIo4hDIzdC~q)2i}ft z|1;-D+fTqY|0ZzeYtj5pY`5Qsfg8Ra%?DsR{Wk(9y%Ej(1b#B`R&3{=wIJ#{0>2x$ z_M6f9^~QF3PXzgvz^&hkwjUOFDYold>+NX!ivmx_wtYq5Rtuy3Zx6f#+x|7*iMkiI z>o+aPHwSLHDB6E$;KkTZug2o2FAO|2@DG7Amqh#D7I;zM>Pw^Tdj@_y@b`gRyc?`v z;H80+mqpuOg6;Z06Zq%A*~_EtM`OFcJ_+3Ly=dM)@EmOC|5uQoyCRyGU^~C{L4N%E z(e^h7UKqIg%4qvu*iQe6z?Fg9eGu(`7q!gz*TC7IMce-`@P~nq_&nOaAaH5mU$DKO%w8S6UmT6?{p2Ts8?K4w{R7Vl{8!*} zzlioP!S?=nW8hX_M)Q$@%L5&sGmOu|?YH>63$Cp4?uKRhi4T8^S^87I==XDnpcdKN@{zk|2RCej`sxVpXxmcmmT9h6_*_6Jp*?-qit-a)Dx`V?>O}YpZ|$x zbo6=NIKDsF!sos4!YuE6yy;}`D{&6%SC=K0`fV(pWa`sb@l1TU%QxWpCQlkq{b<|< z?=&vJYmD#1%Z=w^S^mVQTI_W!>#JUfH+AxU7cb29UWxbj^!@~I$oF1@hxGMchZhX+ z-h_J&_TGZChj~}wW~01!NN&6bPr29U|KRE4ykigW^Uf2zYvKKmc-O-XCVC%*t0sFl z!b_%lABP*w@Xo-)O1)c&U-oW~YrN)t8lJMyyOVgicNe_*Bkw$%wc5KE?)z=qL_Nz9 z^E_U-zHO|)oqq>#>LUMqqh&D%u5mu@i}m*{jmE=FJ{#v^`97^2k6+`SCXYRsn4caW zwXmH3>Uvm~Pkj`wx3TS^@Ar0f*1Ws)C)e-y-tDaUy*P_pzu)_|v*t^2HhB*JAm?Y> z2?=YSjpr`DFxH!Yko8%B_ZxS7C@J!N-m|cbH;GSDtSgrDQ{5eR!SXLMz1y8NABpAs zRgcDU{;J1eIe*m;VL2bwk77Ar)zh$?-|DCFl9HZ>{5;-i@|UsfZ*4yh%kiLo6Q|*H z{y~<1v$N(uVcGxc?O67|`VTC}k9seb<41h}kHu2o%Jf^7B&>NmJc;~hmtX0ud4K$( z>Hm)_goZl3bVXHD}G=#u=vn7H7??a0ha|-qn93Va*%kZsdCY<~nPB0d7CWA0NGO zKiVHf1KA&UJ8S!U@onU~ymOs3e;toC^ZU+O^R0LW`QdK*hfhpc^9ESXKXnr<=bt(a z+vkxdVgK26aQV_&@%xW@?)%k;zgsJQf1%G$`eM1i(0n$Q`-=s&7!P=Uxfjd*h5Gzu zwc_^=Job<0Q?cAXsDHw8|B&JG)0WqY-#=8k>5a#7|DgFgEcXwZpY&d>`2E9J_kHo< zSne0pA7Z&b$Z+3}ZM33R{Qf|F6PEjf#ydI zV7dNIckS0=x&CVVCM#>jufLl2$8!Cxa_wKla{X0r$8!CZ<4xw5{Q)`d@0M>Amg{c~ zx4tW}Tz}U(*ZZ(m{Q5h|IUmdQSEn}v%k_7yd%j$W<@&46`lwd?`rFsd?+z^2U-i2< ze*JaZqfR;I`a8+3Pd=9GuliXWzy7-Rzlgd1_H^w}{kT^A`l}v;<@#IV+JB1e`q%#? z>Z<}jANbe69X^frzdP{zfm2pR+g}p+slZzUxBe{J|MtL(16Th%y8gYe)B}3H%?SKU z;GEUb_TvMu4Sf8X==nS(@VnT~zup&7Uy1E_P!{;Fz`0*W`%lKU|K`ALzl!Fguw9-{ zg1ph%X!{$m)JHmgEeM?Sbu{lC_?f`l1D~-j+P^sPhQOKYqvzWYY|qDq*p8>QHbk9| z?fCj!;GNixcU``Tj(1bA&3_8=oNuG;Ct%xtQ{c86qxqP?Ut+1pbiB>j6!q}H<$;@g z7oGlKY^V2b;MDJhSZok}$sHX<5!gl^= zY>B!g@b`h+Z;ej>zQAj-)K@y5A6psq4T0xjJO1wt@^gQT<`V*c6}Z_?(fM5;_|?FF zV>|!O+oFCj@R!)GU(>3n2VgtBR|5YPv_I$PX#3*8Utl}GCci}6Ux#fzH^~1C^0R-9 z_J07|{%eA~@%CtbEw<}7C&>2%`B}e3`;W)=erHwSqjp5|g22xNuEh3!sMYUL4+;Dh zw)5W~`bFyQ01_@XWwJVLSh!~wpM15c2PXZrRGur;jz|RH#1>1V-lv@1$ zJ5!(C6?jG9y0xS2FAn@<;4Oh$B}e-Y4ZH};^I)w0LTN>oaDbe*LS_z zymp88iFniR-mP)*PVbX(vpwD&@x4p^^Tca$j>(JgTylN>y9_ThZu}_Ei%t9H;_B^U z`R@J2#m>6D3vhXjc8A^%Jm{?XL_CG*>+{e>xRUmoFUJ{myg$SP4)b1xXC3MNB~Clq zdjl@R`hKGIc#UCoQvfz4!9 z7$5c+%Ws^6bDFe^713Uf&*z;XpK7s}@l5i>r&??t?#c2U9#4~E-#91oq}UJmN|V>& zi8qpbGZ5SLnUC%I z{D)<{)#bThO>}*xVY@y*U>Of}eOi1GU7z9DuFnV9u21rp(e=3;+wJipw*CJM^4zbY z`D57j-xA~}uZ`wou$}(uAV2QwXnr%c(_a$gDeI#7mDo=I zKVm!o>M138$(|;Y?{?)cd+xHIqY~US%&#H`0zXaRqZ^U-_TKyRH zNNks{9NYfK{1nY^z&3v~$ZKqi=GCg|#_zA<_ZN)U-Lc$H>F={T_)FdR{Yz)}{%qW@ zb>sIh>Qnx!8^3=U0xG(1Pi06%`v;HQ}#q|dH`CWi}8~4V=v~TMA-;GC@{x9N6<1cW7 zW&Zfwk7o||(@%PW^}o+M8K;i(J{%8uz`Fs?p5WaC?=107!#yW@pM+OE=ADICPV+tm zCx6*4HbtHfuti4WB~ST$94>pt`yo8$Iqyet@vGj`aOT_IPvcSVdOwfHe&YQymiZ?> z)Gv6(H{NgJ;(L3#JSnyq%XpFaB*ost8}Lc|gVYDVI%~cQ%Xp#w8z*D^eXi+GCaif2 zEaQo~4bCy{faQ46{0uC|llojN$D2A2%kikb2+Q%Jz6{Ipq`n$IkI&&BWPOUAHJ^y( z_)<^Bd+@QY{d>-umt#5p)T^AF`CrfF!?BDf&73Q-j2B~F`-|VL8$bU?I4{RCUd(j9 zYDL}n`O|c-E{Nem-kGwdxPHFX!uCcl|zXZ{7I$s=gP?`MAO5tFVj@E8YC^_SKD_|6|K_aQ)lh@_UX>iQgY=cFW)Tn3VYaz!c~A z8mGjs$GW{QXp#~?KjYt@<9?-SdP;men(3y0AC~bb-|erTv5Y^u|9T&v62IPWaO>N; z757hEPnlhO`G#Y;{_6eO3M|)OUB8mnDe>_z*&UC&v5a@>N^?HR{Zq}Sl45BUtglR; zGrYeu1}fO#fDR zNR{v39%pa&J`LyZ^6rHD?qmBgL7D!&&N}@EaN45s0?Ak)A4>4dfYb-3An-~UFundvhe@E^}&aE0+QY_As|U|IjfCn@$R zmgQ4_fqNRS$Nh0D8p!mMo=I5SCu7+^>cjCAEcfry{&Z)}&%v_))aPN@UWreQSPv}g zqj?`J>!ZFL>)Olsd^Pr;T?gxRPKh56o!$6&FP8ng(v1(lW7)rYzdz*Ml=%KlcIU@V zEc-{UuyQ_L)P?h%`Rn;K8O#34b<@Aj%wLY@vA9`$@5@qEi#>>^RFk7YKGkB6;6~NG zAHxf4cu&W9wY;Cfs}A#?g?l&jo{h7bd(X%7Px5{X*J$g#1a~^kdj+=JvmE;m?*p<@ z;_IW=pK>hgqt~a?+A#jGJ~Q3+n1yA1COIF~HYL73I=+m+vOenXv8>M~_xpi!+c6%q zKAO+QvOYRqrM6FruTPHKU&FDikGB8ZEWhlJ-?6RF_Tc4b`Sst2$8_;NfH&uQSAUlN z-Mo|W{_fs~;l4e+>*HA$c{j!xmv}eFIhT8%h&x~9-5T5daWeLwT?aR@zOwww-S~g! z$&9xwe}8wq*o|fR)wiC)c+T=Karv)UmS6LM9a7@UpXbhx*Rd@B80Y`6EPn$xzr1X& zFD!qu^J7?+U$4g<&GO3jFTgqd{Q6yuJNNg#7WXtBhzpDd;{nD)ai>Dxe*~U%t@k~6 z&vO4hqzunB`K!3xcmW=8UHe1t6PnLVII+#CkMSyUb!%LY>Ff3AQrs7((m=+$(Rj`E zzWq3y@t)7;<80%NIR7T!z5?fx>-&a!rECw=z9XJ#+Mk7s$o2c}MR=5H{}|qG+CPB@ z5AySS7H?sElk2%G|HsaW^-YSc#xd59%XvKC=dAfbEZaj}^EvLXjZ?5}AI*=%gN={D zV~vl+n~YDumBuZx>|dQ;JKX7E8Lj1$6gw5yWBv7gSbt~DZ@{uY)Pu3?5A{$i+h08b z%l22_gJpZG$70#u>IvAMzmu^4>^gW%F5?x;8$Vu>l49G==X~P)(Dw~TcjNw)^@}e* z`Q=!)NBnrh)3Iz1?f(sy^GWuPT(8pexLz6Gh~<3J{0%JUQ~Z95_6M;X-!;o+O_cG_H&-v{kk7bk@8N-eZpE%W#bk{P}h-J`L;77tX~+D}BBmHz3!a z$4Q#S^1Sc!Hnt;W{0l2?uKN0sf?HA!8ru{PMzv99em)H38f5FXg{POM=nVN(i#?7zn|zP6=KtWqD9 z`yH1TJ8S+3UPB%~KbU@nv*z1y3F8Ij2`N7-HJkC7_L?7q$K39HERGHHJ^{~Sf9v?x z3pZkaa=R6u-Uz&j>FfLT=kO|=>he`M+3f$n@Dh`!&Efk9cl!CAggbNmXSn`z@c`pf z=dyiiUqmk3d!{qwQ!Vx)ZZM*KY%`Ml=vNY!RPttcyE%Tl;nO)k^?m(N+y?9U_cUH* z+Lz;I(5IV@~IYU zjPq!(+cOsz7~hIFo9+7~-b=3M-v_uH%NCa9+ll3PNPLoFe_{K5g8leW@=VwMr1=SJ z`z$Q`Pkjou&$Du{?0?PA#&Ue9bFmx`>I9IbYRJV>$oTv#^X8>N!}(6ZPv@ z&R_LASk7PdaxC`;>W}aUtoILpIBUKS-)HiSHxkyoH7+67^W!pS&9BB!k?Z(S?5z1j zJd0e9uSL$9zlUEZ*Yjh$v*x?8j5q3ku#89QY6}wgOX_4S_e1Ixf)dSSW#jiHg;&laD@gKMsT`u?_7uax-x z-gKAu!g4=0(|IbE`=wmx@3Gtub#^}KBAzE;8GmK^%Xu&^_dBzkllySL%KePyy|LWy zsHbDO-%+1%aZ3DpndACDiRFBb?~f#obu8z5D!JSbA9o4&>*VTd^HbvIdmERZZnlry zAOD}LyN}O$`r|l$Rl{g88J5Cg6jr*~w6rvIFBOWV(YishD3(f7sl{j*qG1R_$WOG0 zCShr5h=xjOu~KCm655GmUrPvLavqH@x$H??3Q>C%yOMMGL(T;MAABn=Ivg ztn&SZ`*5al!dvv`O!<@We&Zxu@QQEmOdS8JcM49RJ?$@Fg=27hc<*rT;lZYSA+CAN z*M9(4aC~a{Ww;P`boIY?mc1=KfO=P6{hQ?Gdbk&_GspWsxYjuIHrIRO!*NUYzqS{L z2OBrX^8IO^h~@iJpMvH4QzzqMsAN4udUQat>|Fh@dcRY`i>qU)we%CpzY54dIAMad$CSkc=r0@mF_3tMv z-=98TIQu-t_nhB_G%EQrEXQwnJVE_`upHmoUPc$5-*Wt@r(?NZGChfa(&Y4 z^CwuYKSi#+v%2xVz_<|0^+)rcuv||H*v+y(#%C}ei0jD!25{m(uv`yfXiu*1Y2BNK z&+k;{$ymg?1<-KecqIf3(Wf7gY&R1|4lr` zVJ&I#j`Sp7ew_W4?EFS!+_e;3=3-8zP zy05&K;KWVd@8GQOyx*7Htl!VL(B!*uTa&k3!TPa3NV&@fbe8*(0wxhj#~Fg5`Kszk}s?R=VA((F9a#2 z<5PVqE-^j>FEl;}zmA7dLC*gxowa^8mhV$N3d{Md9*gCCR^N=}d{*aSIe*o6V7Wf1 zXJR=&)puh#Kh;H8&QJBjSk7Q;{5{d;JgdV@vHSaWwCx--`jG5k@fq281q+H z-(pw3=hckYxV|iQei6(0rtjz54CnsI^+K0F0?YZU%X<{d`Kx}(>~FchRN=mL9YPt> z|KNx^ePv)4#}EHsEw1GIYabThJzlidtv@yH#0A^k{g3h+oWs@e7QC1G@veUC2aK0~ z>=2rQWqBK%50%H2iNw!XY8ihvUd1iTYak=qQTxPr#C;a2< z*Wo<2FWmoP4UhSV=VxYn&&OjA`0|;!)Z{neBIC#KRFj>)SZ=F_!gJS7TW} z^_N)IU%dg#_o4m{?=`N&F)V*P1?2j0Ol4p#e>|4$Q@6yjed^X&)?eKQ%l4_;Vfp^m zov}TiyJG*d=U@+GIo@*c%EM(eDL>3#!dcaRe?N$GupTe(Nc~T}>u?46Y2n&z-zvs$ zru_MMxAAp&*>Qe(%>(;ua4}}+CS%1yfay^p$ zE&V0w&o|4azmLyzKFO?)953DQ%o92u>R**O2dmsD^b}rX@&;$k8?C0lK(6nb20Ckg z1>Q>@?yqw^{?A$SCAj*;j-ezzkn2@bc7#~-WARSB%;l4vHNO+bo8$K-oMik3?qK{c z&NMz_jr0%w@jnQ!#5_d{pWk=jVk}oAIp1HvWr-aRT|ZCyB(Sbe67Ji=um72NtZ@o% z_{_gQy9)2bdOps=37>nvhWDHG+kk5*uh-8eYv~`G`t5PODL)MNB-iH!1vtl)e;vnS zeZIU2r<(k*YK}3i%j7Fun|D8()RvFYx8B!Ij3N@su7u zzY&)h-+~8Z`g{`3xzKwW?r@R!UAWHp9$a#<&+o^}j32=pj33AQji14ZJ$?NbaJBKP zc&G6jIIfp3|2AG}{2s0~{s@P9`|@jWlJVzw!Sarw-CS_xcs}k6ju(@+!0CN_{ZsKy z<1=tvU!R|YQ;a*}0mfbMO5^Uh*7#za*w44u4_6xx!n=)!;`si){BYdi67P|?&iDo# zGr;HL@iODvaPFl(pNfl&XW;CCKA(g0jpyP8#t-3`LB9Nayv+D1oIBX(&*LKFmvQE0 zK7SqO7%#;$jhEvE#vkAzm;3swaqJb|pW?R0>v3P>jd-l_R$OSj9WONg1!oWO?eD?) z#(&{b;{$l`P+z{um)y^ckHp2s$Kb`r$Kx?q`uZ(#fpKeGX50p6UFFNS!*N;Oo$*TJ zuDE8H&ol8}<34!d)jl7Hvxj>R#rekBxI?zjN8=&J<8YqwL_E)U3NAOEfoqKK#)a4T z_V33FjpyO)YkmGC&L83Z9PW_g{W2bFycic6zl|3fufWyDtMJT`zP)OkI?8)J&NAMF z<3{^@o76Y1$MeScd>1Y^{u7VA&gTbkp>fQ5*4MZxt}+5IWF~%3;0^|O;%=j`~X`F?p-00gIflG|9$IFbz$?`o`!cD z&%*IH`SSPT4#vf}&Uij9$@S%*#skKCzkowGdoRM}#!GOG@w<4h@dvo_7GJ*#*BO6~ zVg@@#KkLH4bgZ`o88uywKz~;VOJA4aj)lQM?iB z`=R%7i7CGWZ#DUGU-SL2K2#2`&%NsK3N;E9<7CsHe-hV9d6&O{_tTz^|31g{W_f?( zggjrq$v5;D*8A;ikNcWD9mkq{G|o5qc$`SC0;*slM2Tu%9PdEd=O zU%DZ%ZqE>$Znk#>t~Kr7i1!-bhO@r%>+>{@o#eN7A#Ow7f(6L;vmUoH`4*f>p6K$} zjT~PlZ;nf9{QJi4xTnec;AYg<@!YLA%jEeu*Z6LnZ(NKAvOo2G-*Q}R@{jREa&3PP zE;D%pp3eH|^OrW8IDSpu32&x;Gq-)$;A)eP#S^Ko`6Ia2g(~m2Jba_4StGT zo@dGaJ&0p(_xt~-Z~2`9a(%v#hFh6D6JJEm!;`RRCo*`EXPJd+Q@vE=%F6ySv>e-M8}uJdKy#T6!B zh5t19ZoJOq|Ke=6N59WAw{U$kc}IK$xjui&#`{fv1D;E+=jX#XZnFPAp2F{t>;A67 zNhV*9uVVc){|~2{{K)Sbhd!ge?(bCG*W^8LKIenZ#~Fu*n0yk>HlB%3V|n_#=T$tx z4gZCDC55x=a^B#(`i@dXO`~%*japi;FlUX1(UB2#_{w#VCWTx{}D zIB&IIpBu4#zdixW@vg`3WE|S&m;XGL{&w)wIP?mZ{<``NEd6`+GA#Xf_4`=*@9K}S z^w-s&Vi^ypYq0dU)!$<2kE_4O(jQjuz|y}~@5UX>e4f9s^shDl4@-YteOMjWQ}g#h zHJ1K`x-FLeg!)`8{Y~|GSo#y{?pXSJ>YiBo6Y5K_^!L=4 zW9cubhvCh}Iau!Rn%{t>Kc~JKOMgo}2}^%LosXqIr=E?a|E9hVOMgcF5SIRex&%xA zSN#l@{T)do3-xj={R#DlSo(wNHCXzy>UCK9gX(Xvj3?CJVHv-u zw__QvsCQx+|ET}K(qB>kgQY*FZnT~A%{Ue>G(HBeG(G`uFg_XYHcrN|U;FmY!AZuQ zaJq3w)X?#7-G9Hg780Xzj_-8u!4N#=UWt z@uhfz@eo{SJRC1D9)*_~--y>4Pr&uYlX2)fzkbtkqVXKu!MF(bHGTx=7(aoh7(a`P zjThpD#;@a*#&6*b#_!?X#+5jBt6$%>ILY`+oNl}k4>qpFV~u~pGmU@4CC2;kV&eu} zW!$8m@89?+ydMwZ1}M*`&U4oLVRzhz{%Sjy-{`FQ1e`~%&wEOpHGdvU|5yDAmj18$ z4ZPTR8D5DqDIn`p=d9&_!P1{q|BmhajlU&7^t0#S>D}VO^EHzAOy(VmQU}=_se_>^=vHjFVvr5nSY`6Tl9(x z&%e-o43_y935|mN^E#IK7wbZS|G_f=PHBf1%5t zi1(Yk0?YghZSRP_?0>A~FUKY47V1~9%(u|``>@QnP-k8e7oKmSo{MF^MV@Pa3zqp7nx8v>^}~9; z+=XSng)VPBmiZQXyq|F?=QGy&ld;UV(DP>vmiZQ1zvV!_AFSoaW0`NE`TJPrTd0p6 z#QDYi3N1ex%X|y{{+D8zZ=v}SgX6;UEp+{cVVQ5C`}0*S^DVUf16bx;s0Urf@&^0% zp2afXLi0bc%(u|x^}3wn(Revy{%E>q3Ktr;85$R!Z=vl^#WLSQ*Jmx3`4;MvuZ#=Nx6typV3}{B`3G3$Td0q_itC&4 zby((GX#Kab%(u|;M`m&S8V|=Z-$Kj3hGo8m`XHA17V67}aeQJu|DVS)-$L8phh@Hn zmhW>l+s}Lp_2XFPTWI-Tu*|p6y!&vD&uo7@KZu85Ex!%t8F$W(3(vREd=8fR7V2-X z%(u|?&$@>1=Ng|+!!qAO^IcfxTj=>R`dZeH`4*aggJr&jo{yJ|;QPnAy!Wxpw@`P^ zp?$2!|4UfrTWEVNM{<0Q^nMV_d#!Ilwx6r)JEnM%J zZ=rq?%X|yTb8O|FJIrbu9BO)Tiggh38vn`T1DpTd12(;(mwqc%6Y|zJ=z0V3}{B?cH!Y>u2&# zlc_(MyissGKZE7@Quuv(WBwK_mgh_A)2DF#F}@DV^Cit+!t#7cy#vehCG|N|x&BY} z%PYb1yh-y-Se`ejTiwC&Yvz19@5|)3VR=5K<(Fc4KBfK(%lkg9KV~}jPm{lh<$0Bs zugCJdN`3YWj-Oe+{(LOYuQcC?<@uGmu)MF-`Wn*0SU&%d<%PgtIRsn422`TKnR$FMvP(|iM#=V9uT?&kP3&c^coRF}U7%kwcU z-}D}iSK~{uJRj5iK`ifEwSEJZ=Vh8-P{{FWJQK_FGR;54@_tt9pL;LItH~!~d48tl zmtc8*rv4Ml`&_L*`aaf&=U1A)h~;^jdIy&0Y3h`@^q(K`^&iLbd`w0!gXIbMy2VtL-Cc?p*H%ezCt_3A$?&)+n^@BxlTo^PoOusn}b zug3B|TI;uakmJ?l6RuJsci<#;vua4gUBwEWXpp7*J@VR>J#_4_==@nG`%usq+> z@}FXP{-=(g9~XYVuk~-o^88Qpcd$I~Q#W9F9;oh7!u^={|62bAEYAZqugCKIPkqkg z9KXglW0^mo^=q&^AJpL_%wMAmgkRJ{&_6VC)Gbnd7l5pbN!LuH~sEKj*q(r zgkqdqzeM{yugY`Rr`#yN9p%OgBg5asqSM?Sxp8Rajdocu~;`P-vh73Gs& zjVzyw?f9oQ%0m`K=2cP7cr7wt9OdNyMdl^gKL7k7%I#l|%%?`VGRns+jx2w5lwXMQ z?kIPABl7vr{ZZZ;<&JMgmY*HvucF*$No4t{QC=J6lglH=#}7sMu%(gt)F}TN<&kei zmj5cs{oanu--~j`Wt{)#G5&DliTo(9j&k#NBFkSB<%LoH1Ka0mz21%V{3!2;a<}D? z!N&KWn^9$W!OHCOZg)5dHZy1 z-#4wnwtV+5Bg;RCZTU^umLIr2vit&U%m0FH`4Kgd<=?=zd;_-SCwvuI{zGibH~TuW z{9V|-Us#WA`BT1$EdMaJzmKWjhwb~v%#D%d%dstg_@>D6 zmtoufDs0Q2_-$nQQP`IM8r$-1H%FGg4cqcRVOzfImdNr2*p}aqZTbG+MV5aQ+ww`xrtm_!6llyC^QK-zB z+X+AXf9yDe_s{V@b`0Y4fzHn`DW*EjJM%M z>pO<~yOKBmC9viv;>G0p_fh&eYd#QHlgr=NkopDAn%|3S$dlaf@7FtP{wrQ*=8Goo zWWMo6KcDnuJor2B)A8=_z0bm9cX*$R7ys&=hRgr(?uN@koer(fY#eXi@86Fb_WJUV z;i7%s&)~tv3-JWwH}HVJefi~5-)!G@Y?t>7&Nb!t;AFEt|KfH3`1WFcWj@Kj-pz2b z@d>!6@u|3g?bZE#mXtT`pNs8$-ZU)xN6UA^N#FbVyw_tn{(>LY9n0~lz7-F~=ktLa zpQX;4KZj+1s2Ac=+}V}?(pmEjSdI_%ceoa3@`1E}8}S z?w|1YQu%(<-QRC}D9YQT+;wea`TMbLZ(Eepsw4Azqr4@`9Y2jMKPSo?qulPZ$ntkZ z`Ku_O^?79ZJEQysw)-=2U8F}~yZ>K|@~=^DZN5*ro?d_}5BJCK#klkc?|yj5k=}#w z?l|wEI4{9_I8Hd(dn7JN_Pznz<7+(jKYI=~Pv`jz>l42Ia{SzlWqtJjJKc+AeM;r` zFUfm!<@pNhqyHb<3s}}?0T)=wo1V|}GS)})iCET0eVbXn?2lsHDy38K_hmU_esvDk zu~F!ETuZM03$Hxay8#dAX7m((}z zk3-#jJ{V_bcwdPNdU$8!qD=2mIQ>HJvADXY`##toTb*_Lx8t&2zWgtEq46GEY5bSe zH$EWw_De&9X;7|D^LKOn{OFy!hu@d!?b|;e@9*QCi4*&K_r??I{PlOD)W5{%lkt$j z-gjbqJ)ezBFZcPqc%^Bt9IrFpies+y<+tMw=6bpd$FqIfA35oFe&1)9FQ1H4ul8<_ zvxj@9-Gu{XUl9 zEc5-mgLCmE?)a;74vz1}p`WpwkLumH3iH%De7v^Y7g+PwxQ1N+f3E?~nqQ88Hudjx z)_gYplU)Da{QsOaFULpz;D0}NtFz|YaT59Qd?4pj{GWj}KLMwaAM5f9oi*=+i;4yW zr2eJ2H|39U<)=7n`RRBlxvuZa&YHiD$C~<^oHeh-lgah`X!=)R&5y-%$rJfNwkN|` z^NVnYnSOoy;^!&f+?Bu0S<6qwOUZS8%bYcT1y`BnedVnAx44#Ee_!|T{ed-)!@rTM zo8xrO4|O8$YkUgMF;2#XJWtp1XJfgZsXO4AIFk=#e++lld?c3ZmHGxO*DLjSEa$8G zHZ13}dMcLlM?C|}^-Dbm%lW3Bi&Kps!aa@WV>y4d{8L!YU-k1?&Uf|8xWM>zJkNM3 zE;C+^%Z)$4mBy>F+)uRqPqFQPtjGRm&%ytWZx+74*YdISA1*neS@`~5# zuVA@8hR;Xd@9e~K{|=8=$un9u3*W!fUH#Qq?$3MO`kvCNS@`~(%D+ZABPp`}+$e9t_WL`lb)=_6d3BUeI4!dLbx|&la+A{|%U>SlXQRA3$~}@J z>pu|XEm-a-%ls#>=DqNk_ZYwN2Z^P<$#}vJ|Mz8|!?{2C{$@2^Hmy^r+O?PPZ(wb&1+HDj z_)VTS(B4p-{14Y3{-B8X4P0=ium88R)<1{`&+vJlhQOL%id)^~^GBUEe-hWv^7#+W zn(x5n1wQY1Ah70L@XWh?KEqk_Ie0*!&p&n6d_7LQ&*v@w3#@r-TsPO}H#%#63toJ` z&);^|{5_oipwACG7+CYBxbH(gzrtDbVL0ItpFiuY`AfKVp3iqVYrYRJdd%nD`O8&e z%`e7NN_;-oS@VZ*&nJAo(OL7YIKH$~sN5YtZ5jpEydADw&?&Ur9e*Y?NDz|=1owfXOTyM&6$4UQV z`R?!8c4!h<%b$nKIN!qePtK5$xO6G~54k^czASRq@^9i4&aZ4fkbJMR=KtVA@>G{! z5))YS%WwsG_k9 zfj1kk!aI$3;|AlFhc^keGW)MLjx(N!7n$;q!8S%dT@lv1t zqw80K3r+qU-e9~)$~W`N`vxZ;>)YFg^NfFy@_+mGPdJk8HF*+_Z|>`#jmwYs?GMG- zCLe(p8Q&=7kM-r};r%9m8uvZUx4%%zpXJN1$Ma0S1=kt>B<0)r^39Lp`jg<>YlUYT zpNY#``0|(GT9XgQDaZTz*Gc(3e*YBXDJFjcR~eT{`Conc&vC*DzP*h&$M^>+zt5LH zx+(k5rDQbal-`-lukM#MU zxU_}OLvfMk%i*}yNj{Imdpiz1bbaoEV>)?{!s(~@@?&wb$sfT9#w&2D@ebUI>(3xA z5OV$=*DP>wy=WY2fu;YYJ{8OTO??I~!u|L_>JM_(d?=RtmpU8E{YgC<%k@t^4j;kw zt_vSXdyhJ6UW(=VsD2*H^-=u_mg}qf4LkvNxCamg}K&3o+;41z7fHPiM_9!E%18FUN9zs)u1Y|I|5H&QJ9XSk6cF&DcJF znuPt&o`a7vev|uutb0FNC*wKp-}?VkUDtu@_gwNEcf#yI$Yv>)1Hj?9>>d0 z?|f*!L{fa(6vt_-NAZgDXt_8D3|+ z9(NemIkeyPPt%WW5?av4x7Qul7+-{A+xol@&M+Q;OCR*hpO3RmUW)Uc>>SE)>$eBz zoBU6_*th|wpXHa=xH;Qn9E;c8(>YY_*8d8;+2q4;{Mo+#2wZrM_jNd{o%c<+)_5Ww z+urAs@owWgCGX(#*;2ow_q{lwllOzTuCw=}I5E}xNxZ=LSzKfM63$NZ8-IhdjJM!*-F*2Ua7>2x4xHcJdza)Fc<;l> z#{c5IJ$&BixF(^tnchd>1s8fZ!!^do;n<6O-U83O*!xsG&-e^nWqb~7w~-9-JgHJA9fvh==sReCvyG4y8pXkx!-I3 zOf3BmbssGEd-Xuv)AYB7;UT3yAB_{A_P$x_8&AcB#s%26Hy6wL>+&AP$>;m^eGg0j zDfr=CB$ob_dM%!Sr3LA4?sL|>0n72HZj#9L)%Yk}ZG0@QGfu<}#;4+h&c3}faf)#} z+|xJ}XB&6JdBzvvBIACz%y=-aFun@c7+;Hb8efNFQvLen;#S7D;Z);0@Brhx@EGGl zoNxRfo@e|RUS#|ft~4&gn~h(^dyU`3acO>i-@(boD{+SLYCOdFGn{Mu6)rH|j7yDw zz~#n2<7(qQxXyS#ZZJNG6VCJNdw2`Jf8%Djr*Q(#Hg1XYj8DTw#%JL&;|{pOxC^c^ zz5wqu?uBEz`1KorTNz)0Q;o021B^%FF~(zYzVR)1p7HH?k@20l(zpO`HlB<38b6HV z(*62Aj+2cS;0)uJ@DStw;auaTxWKpqml}VB%Z)$5)y7}oI^zwv!FVf9;CiaplOJ)4 z@vpe2@m`#5{4dVK(t=#C&O9lww$~2J^;?~a<@&AehU;)9A4vV{oi!hi<@%}4!*+Z; z4f~%x2UEY`|8qWr`!^rTcy|Vt@u!Sm!{cErNb=*qY#JVKhTm7<94zBa^{ZIM zo9aKYj5oFY3)eRdk1y3lSjLlD{u?ag$wIgM(`uTA$CCxlj%$ zqb~17EaOLAzdcySkGi~!4eU>>`8`<1kD7mpW&Ef6)b&{+Ipard?>{W# zN6q_f;{W4j{HX2C!!mx<{rMx7@uNEZTlN>$`uAZOKWh7%v5X%zZ@-!ElkuarKNHLN zQQP|x%lJ|EPx2P#zcYT+_HM^Ae$@7=u#6uyKj}O6k8v)R@uQYsfo1%d5DJdp_^nOD z<43JO3d{IW*QXrI_)(9q!)w`}j2CtNv#^XG)vsU~KWcjoSjLa)f!o;sShsHhmhq$3 z{~gQtQQhdFTgT> z)I4El)A0CF>lb1fKkE86U>QGZKH=A<;qjxkSBGW%sOyvU8~;-a<3l~3sOMh9tA4`8(eg27WC(%)7e-oW|5cvst-h^7Cn`4TMsZ}mPb{cm-b1DvnM zQ?ZPfwY@ql{c$aS=6_s2jmKi?k8A!4mj1YUCzkQHws+M*jz5z>j-`LD<-f(!KUbg3 z%n0e9t4E0QeS4o^>91=Z*NDG2WIPZ{e_iupEd6!$msrO8x_;do^ZPI+pMjEEk&VCmnh&pDjm_vLwow)Ys8{=ViLu=MxUCmq4>7a3<`>F;a)G?wQb z+TM||{Jk5KUxKCoujTK@(*IX~j-~&vKK4kqkLM-YUOtxbfaWW(j0e=AqvY?QcwdBN zJfL|2mggyZ2Q+svF%@nj*j#tQGN`|`ysvFZ;NuuF_HOXZ2RLMV%wi=7SG=wGX1|1 zQGNs4{#=t|Bg+rPw*T}}l>f%^ykFP%lID@+pTf4kwF}$v%K67ddQOzrMY&}{Wcll( z{6>@;qTJ{B$odaQc}tYro)B67wkWTN@{uR<_lDRX38CQrJUq&;MfqTqFH4N9|9q79 zMY&Il$nuXz`IjhnKPj^OgHhfV<<2c5%g@2K|M_>6$G3{iw?%pA$&vY*D0e?4GJhk= zXPg?DKOW^~ya=}IcUP46Mft|ok>$5w+n>GcG_IGXf4d6H`v^VWyPnSV%Jdgs!?u3w zPOkpAVeeCbIn4C@+cff7sUV*EX{K zdDyPc)+nESR%AX2+xAvQork+9ozA3qjMsC1-A8Hz;?X&S5*0aDUtP` zjPkEh?$Iu?y@#+}pC6)});==72ix)3zfr#B+{pZgC|}iq{sYIKj&Igt+g^{3+~3Xk zX9>1>n@*8_65H~}bdL0FZ0rAp?ecF*jm)>=g=V~YMH>Ad^ZeiiY@h$^#CspT_Vd*!nXa@*p{DVo|nn|k7sbJ7ybN?Gg}7c^2|@8&^b7V=WlYomgjRraW-an z74{4qTIlAR@X6=SQd>&Y;4JbKH=nq5tH7F{i3?uod}uy#mb2#9;L-mP?VywN$d$hF_gS@Zt5VO45q zCjTLa)L)4E&Q1+wx$SL|#Qu8IuV0$8);}MoF7bJ;v*x$rI&$5AWzL$vf=ibA`kS3K z{~q^!i}5=j$oeI;4y^e};>5HNuNA_14qi!lUEagaTD}D5E%VF!#98xoIQbo4zwv2- zHIKy`-u3HqzO&|;IHzS=@cVbH@7;Lta=*M~&RTv2W`KR@c--x*`JXtOyo?WI``ex# zSo8Kc^q#MuYO$I8SgZCt1|;@ei|;V^!tB^v*uUh{U$GR*8E{SWR>6lmCl-f zf@4?v_8XivZ`_9WP2_sKr#fqXK2BWYw?Efe^ILI+$;+HIe+B1!;+MbKS@Z9uJh@)K z650mV{3M*a*4H24toh}*%H##kn%{?$tNr#>IBWhP-tehk{$6Lz|G|Zy`Q@ja6&9fA6=y(pmFQaOn^J z`)P32ym5Q(e|5fos*Zp}|r@)#w#btYZ{hrR6_s4yI_uDtyS@V1GesaB^f9R}v z6)yY3*KgE0u;xeLA$xs)HPc!1-neMLuRp_C^Eo)H%&YD-^dUE}J!2`~kH%aAu z{KxknGMqKP2v?YVnzQD2;naWq{(aY3^Od;1!SCO{oi#s*iw^kpOHT`|`31P1T))4` z&YIteOAq?>f6H0(3Y@^x5WS!5bJn~8SCVUgDDAw!nrGm#jZzPNzmuFb&&LUkQxEOm zrOujH;0Y$*=d5`Ht|r&(QCgS4nrGkzP5k;za@IT__l)t|x71nl3cT0k`w zS@Q-wAl~O`-2!W#fkVxGKFL}0d|ZB<&zCxDUV+CRpL%G#xX)Sh23$+7`!_8ku;v*! z;{_*O^m$tMz?x^^4dl9hlbkirm+~!qzSLRs z3S4aRea@OU;GHH{EQc)LHWi96HtK`D3^Kn9Z-~Li(%`0%#xjx_Lta$^@@96hWTF=0mXW*1hKA+^Qc|P7uuIJ}cXU!{c zdS_pMpR?u-xSssb{jXPG%`Iq znrGnnE`I+_a@IT_SEl>rf8(tAcQ~nQ>Y?Y6UHb&qJQHVi_v`nhv*yp?*bDsn9dOn> zrZ3}Ja^1cW&YEA3vwQgK{|C;RSK%6ypWZL9=4aypnZErw&YBnD29y8ftod(v(S?5h z_3Iy4^T9ahVxPb2tofTbp_k8_T@qOH1YFhI@1I+oHNPF__VM4(7tWe*kn-eueeFCT zu;%CE+`fMMA9dEe6u0W<+yBd1^Z)P^avdKGyEL%oIXJn$ufN<`^AGV%a_v8yJTS24 z$vAa@U%wg7n%|A<$aVX+Icr{z3orHUUpy$V=KXQTAisVuIBUKLmzeyB!GSeD8t*mv zjn0}+z=H?-_SZUV{v}>y@^+U6);tx*Ugo#|L1)b$!^_BZ`}a6&z8_~_?(1K1d0@@2 z#&K8p{j=0r^9sCjh_8R*6@fKB1y302^Qq37&%{Yr`t|$PS@Z94CAoh8-G>C$yeFQL z<@et+&YHi7Ysj^JqoIK{kHv*o`+T&s=HqZiwr_uxv*y*f#N=(R46J#3yw~LSI%{5x z2Vdj2{}*S?f0y#)dVRa}s=%5L!DZL_^?%)2^S5wTj<0`gR$$E&aqLLHeYZJleg_^y zuKVvRXU#X`#L<5Jy9^7g`31OwT;3v&%$|?nm-}s zZ}Hdfea@OU;J68X{jVAkSo3S~%8CB|`;N2bD{=a*zJAM`z?z?ici!gf-|4J*0Und* zw{NSn=0D<<gdI9y4t_qQ9IHNP28nC$zn zYn(M-hqI>m_Rkp|So2OecBn*WK5r}^>CWn%(so`nnYefvwC zHGdbUPxsq*{B?mfZ-wi~b^lIw)_giHoZ-Kpjn10aN_leiPk73#)ZqW`<@xGG*9X?T zAC~vg>cMzHLF%F3*In(b`Dapp4)3%1K%VC|xgoITN8$bCF)r`stocQ_fxMN=^PDxG zh7<2jJ@os$Z#Zkd3@4F~b??tl8yi^jvvA=(siC&4fUMsm&YC}g?eF(KixZ=7O05%)AM#o5NIah~z-IBuVB|8HDm z^5k1NK8*+A8sj_gPU9DF!(YC=ML6aHzyH3$t&AJr#_?y|4i7NS!aM)*?Tx@=Onx8E zH(rY88Q0=P#!d4$z7F{In&V27cbD9FEZ%GU2#)LFw`T>e4y7Hso~**jCf|)Sj9X6P zcr)&ebB!nBiYC6jDY(GoWw_LM9WFO+z}3cWZ)f`t_wAjF>r6fzHyGc86EgkwEx{?q zTXE@;zP%rDPm?#F%<*P?0nRfXhl`9K6UX`Xp2B4&UxO=*_u(4j)>Ak>j4#Fc$N2V! z;23kgnTcB&FTw+iH{dbGF;n?|n)~*e;(U{L!Ij3N@m}KxaUAy_y+16+GG9pVKOf@6 z)@i}t_vZeSa0mSf=8I|G63cuo^=Vk<52??>QeWKx=b8ImHZCwO#B#sW@(<#9CSQ)r zjDNy%Kh*NS;h2m4{rRM6952SbakBBPSl&--{i!&W`&ID6-yX(eD4)OwGM{oW&g3(@pN2e{0d%Z{54)?+;}?uOXK!< zi1F3fejg*T^v{ByMxn7d(X8J*Ed4djpTsi%HTdE0944hu=H2dZLsuL)a|kKSJY`(`X}lPEd3Mp#aQ|y>i$^z zBkIer^gq;DSo$C85m@>k>g%!eKh)!~^f%ObSo$04X;}Ij>RDL&8|r(p^f%PSSo#<0 z`B?fF>Zh^vx706S>2IhPVd-zEmtg5%sNcoXzfgaGrGKHW!qUG`e~zU;q5c|6e?q+l zOMgOLhowKE{sl|_LH#?H{)75&Ed2*{XlBrVP#=M%zo0%EOMgLqJeK}~x)qlGg8FnU z{R8#cSo#O*j#&B!>U1pq19cB9{Q-4vEd2rXrC9m{>LFPA1M1;e?*HmhSnmJo8?oH~ z)f2GX|J9SR-0#)XvE1*~bFkd+)kRqD_v%Nm+~3ttV7b4mpT#nMQZK}EzgNGG<$kYz z3(Ngo{T`O_oVpUrcuu_*%l%*dCEjej5leqS^I9zZ0rgKf8E5i=-2aZdE3oD#;W4Is zYb^J7&D&zRzpKy1az9s}hvj~*?vBfid*VvtOK^?x<+#px7~X4~gQY*9?cacysh*AH{-nMSk1>7-%l%CA5-j&$^)tA{_(d%DN6lZua(`5pW4WKI zm*Wk_AL4rBHF&@AIxP2Zt^W;{`=$CjEWaP2-j3z>Bh)*w{rfF{VE@DaulE7JKhE<8 z{+qY(-)s2;%lKV=<%j$}J>zfnJ6Oic>Q*1|``wIp)ibb+Pu1UJ8DFYV zv5e=`O;_>z^Nh#TH)9!3slUK79#W@%%9-oG9FR?gJnFSzGgMQ@6UKZy%I}* zUVS?Mf2Q=u)&H3NCBMIO;w-+8p=qIN_dKVcbFfeOdoeh!D(%qUS6zZ@vY0ieM-VSHYci}}p`u5WA=K4LxZ~r)F zEk6P8Bv0Z4S>NZJHD8ERen~sDJv(vSb-w&5_XO7R$#_wM-(O>K3gwes`%gG)`31PF zLzhF_zXK1ZydFO-3j=HU);Q^UzkjZ9)_fSQy}>VUuCwM3;pEr+{@H|M#`^7vyEm|w zZ;o@@`t7+AC!6wx&RYHf9M{{I{}T74yl#KYeSx+7QMmFLzx`L>v8MbSXDvS$H=O9p z*We;k{_wehwR{{Na?o$@P`sG(x_|F+*7En`nK%0NecxI0RXDe;U;fcWe1E2Vrn8ps zjdzy${S*7B=y^)SExn%>X-!nEJrS<7FHQTE0^J z7ss=^e#Ab&@oCDR@2urB@uJaweG2dZ%Io*}ma~?xz^(rB+k4o9T+dAVU7WRicRb)O z+IQEByKu27zro@;~6+ui zSmUhaKgaXl^Xr#5kM*7C+wbqJwiTuZL|?*(VgU&VF5`Ssb0V{Z5Ti8D(A zYxxvBWvc)Fu5;G>CR{?U%PVu%{1seb>i^)Z`3}6<)IaU=bM15P5> z^J#&z<}c!%cl!0)>a6*896#OXr#ul@^JJV#p2P=oeqH0N`Di?ZT))p!XU(6($us=% z^R2Vy+i=}XU;m^h18bgy%kT2*H_Tb{5qJZ+F2BTC^QZB`S-$=^&YEw*)h0ioG_dBa z@NRN#f2gzO!|}@5e*e#N*8B-vbdO*DdS}fy;>F}id?5R``BQ;4PsHoU_4;<1v*uUf z(n4Rq*je+(a0R&@pPxHx{uQnz*X=v{>A;#N;Kld){8DGlufQ|!^X(ToYyL1UBhPc! z`?b!Re}NMp@auonGl4aa$LZv{e*K&^AB1Bc^m(DP<`3Wv z!%4+{{dzfTehJPb*YzuK*8Dyk|Bzq)N6wnB!Kvg)d?4R{<7WeF9*c*V`WHHD-Um-H z`Alcc@5ZGjf8Sa2Rd}UY{(sJz$2`aJVDj$HnqQ1V5Bv4cch-CsP9oRq({g9cKfpU5 z_4WU8);#n){kO;b^`on^<~?xre7}FEIBPx~?FUxZW0_4t0uS@Sa7VCo-q*8K37`2L^q+c(l#^RYOS zd}X6x`#*Bl{1Y5{*00|g3j=GOf|JRU_(1mGJ;Im!=9PHx|NQb#eJ!x&XW~|G z`t`rdS@S}iNuI<9vVVVY*8FFjW9s+%UtrA#-~yAssd`ky*$UW4P8`0YP;abV5Q!<*mo+y9WW<|R1vHud>Hw*L=j&HusGC>&);^|do?6=^I16NJ^%e|an`&JCzI>?^;i;E^WJ!` z$)9!Bd?Bt};oEOg9$53EaGlAobJjc;$Gq>?f3>sbpW(LTNqivt_pGIXHSd7?n)-8{ zHGdfAn)<&wYrYp3k?ZykdMmKzSK{oIe)(@WYrYKUoBX)918aT~E+yCg%Oq#b^YKbk z{~Kq`zr(ere%EDzHP6H`ANciu(pmH8a1FUG|A4dRG4Jqvl01nIWdDwE*8F;$_@U1~ zaMrvEr5YGql{-+q*`IYmrJg?UBPve+%e*Wao z&YJJR#l3ucEthkB{L0rq4QHD75AATd$-Cg%K7PK+D7@eJejMM|=gaWUuYLO;;RP&T z=ezuhml>Z}!S)(ogp)V;`j_H*lTX2+-oCx(aiZ~OID4b7zYz~M>l^bP&kKyt#WRhs z#`8A$`q$xDlNaM8A5x)e82vaUYyzd@J6&+1I}lFEjZuknx{ef{roU$cLjeZ=+} zr{gKcqw&n2eEnPS1ao{mfeVdS;RVLK@mRAzT2|7Yac^8=JP~i$;g@$OUTOBnLdlKS zEYE+{yRbapRsV_QeUSP9miKAun2))i@_t3#6wC8Tb#pB5`_wJ4 zykAi#VR;^|ZiD6hfx11G=lAL~EYDZf8Cafot1rg#JYL-&%ky6KWmw+tsk5-W-%yXh zm$AQ6_(1mGeOTT%Y5owF_kHRTEYFA4&tQ38uYM8B^KJEOSf0nK%dtF9RWHZ#{!jfO zmgk%5HCWzHsMle6KcxN!%kyOQcUay}skdW!|D@iD<^7BL4=nG8)c;_4zo%}rn*Iy- zOa1?+&T$U%#-UDF?%(RJxE9MNvOh;VYd#Lk@vNSR<#<+4!Gm!oA4vV@oHc(L%l%!w z7|Z=u{Wg~St$GEP`>lEvmiw!^8q57vy&lW`RlNzz^;o?P%k@}YkL7x--i77*ss0no z^;3NS%k@(oQx#l4)J?HmKh({!TtCz;u-u>3Nm%aB>NZ&J&+7JA`UC1TEd2p>2A2MS z`eH2CZ*_kx*KhS@SgzmdEL>|m0`E7z9!q~o%a6y>KTzjk=^v=4Vd)>JXJNUXtMA2f zJy#cFxt^=%W9dJrpT^REP``ks|Daxk<$kSRg5`d#eizIATKxf*`;)o~%l%3HIhOmA z`fDux5%m@<{SkE?UTORb-eCMYmi~v9{~JsHLmgTZ-0#&#V7cF`kH&JpS09h%ey47Q z<$k9=9n1YreKwZ+i@GDO#(nre&d+RT%|~Oo|ER}dxu2;gV!7U`r(iq(X9o5^dk%hc zeq6Z!UU59*6aK%WyG<_hU7p9A)4T9DlY;R}=##)f8;wGT;RRj&_3S8|b%FOWxcVaR z1f1E&y9KVg#QPK+H`x1hoM_w@XAkjtJDhTrcPBhA%R3#1hI?OtGmLxUm}`CBA6Msi z55_Y`dtZt3uJ_KyRqSt_Uw$`EztQJKICQi3!+100Phkhj_gjG*u=Xc@#H}Xz@;hhSX##3}J{?7E>#eNivm$(NLO1lVobKGMXfz7(xiiFciaLUxpzH zr9Ox>Nuf-!5dQZfa z72cC^!{gq?IO8er+wt6Iyvy*G=e+0OtQWoK;{}!8596(`dN0B`Z+Jh0izl^2-so%iT|I}~eteLrc{XVwy z$4A&N%`I2l#sAl0{4Y-k=8qS!jQ=9%zp#vd^_h3`|B4v@WiG!9%lOZBUX5k^C$bTl zj}Dv7{};oWUxQ`*uX5j4d>PC5kN&0|f?KPYBa^)|;GM+OyO;Y~@SjO{6 z=XF@dullh2*k8u4`U))LSN$}W@tf|}{~62p)%^H*96#e%eFK*9t9}j3_*MUdW&Eo9 z-M@cy{HkYQ8NcfP!!mw*x#Qb+KHt}5{ARiKAA)84<~rYxW&CQs7R&fmANBzM&yVq& z=FUd}mhn5qt^WeH?e|B>r#u*&-yHH=A-7=LpU-(H*7t|}zmSh!5L^C+klzYfzY+$A!E!t7r4vXHlheA=Se^{0mX4z}Yz?upp>AsgHL&X7OGc0N4l z$=LorI^?H9{w3s-o{C+6O33eq+pbtj`Vkfsnrs`Ix1#>rV>#?U38N7+d~=kRQSJ`n)ORla|Hi#UXzfa>th#Pv&}f zQOFBIULSJT%Gm44n2?u*{9DK;zZ|>%%^_EZ9QR6W`9UGi4tW)}_dA_mjdelD%R=56 za{sE>^~*#4I^@*XV#{9}a#hHCu)W_p=k-|65BYm+?}xg*5$mf$UJ~-JA)l~3cKsVd zt_u0@ko&HPUH>+0?>|2b`G7ZL^Gia0I^;h>?(6E$Cke$ew}w7p7O2t zD4e?9J0I6?@V*)seCJ(=hkoyUBVOC!Jq7pr(R&)+y3xB7S2lXzjdOqUo{M*H@_rB( zZ}F~>^1paLiQE3_y#!}8c`w5yzj;^T>fgQJ#5r5NYj9Pw_Xl|HpWgMjV!QX3xM+v> zTAcs4_jfpJr*|VB{g3xAIB%EtR^0Hf_YPdQ+j}=&`=59GXM7&9$Ga_VXz^}`6XP=W zj*n!V5%1j@7qs$D#d8z9kHXdac=yCxT6>?2liPY{;H-VU&%lNId1vDV`+E<@wTa$C z@zx~o;W(we_h_8c!TU;Fbb$9*yr`r11iaL^2xlDV^Qlrk*}DX%9PB*{*Bh7P(YgM8 z-|M*HP+z_pHyOW&8$0{F4$tr6{Tbe#;=KkhKFs@DoY~d80aqOEy$R>0dN<*QZrOX{C_y(Y%KGy=CiQOzv?t+7c`p09Lf6H9H49omG+PN9a{9EnZ>lfOC`M1Vx z?`ACXZ-w)lSmxhKSN=aN^KXfB*022kRpwv)|KfLGnSZO@`X6AKf74z0eVaHR%)dF# zxmf1kOy_&C%)jN%Ut*bm3!M-8jsL&P{JX(c@373j+CE48&iQ5j zZE*WnfMxzoapj-IGXL&$`7c=JU)`VM|KR*F|3?2`5B+%}mif1XTmMxo^KZRde+QQN zSC6mHR@P_!?di%FW0`-|?_!yM)$z@oU*=!+KrHjGx(v(wtNsMb{Ht!ajsGvq{HwkI z%lxaJk7fQigbP|DrteZ?U!)mif2RmH!CK{G06FUmm=J_GNz6`me$=-|G3S!ZP3L z`mO%v|FJUP>UcaC%Y3W(d@S?r0=K>YVVQ5W{Lwq}inC$%Nk1tBj9xhdrINK#CFMIkQ_d3VTJaY-@#?cR{T z3;Fo?*zFaE{0X-Gw{xr5^5a5Y9&($6*z&`%t?%iOw}(7npV;!{A%7Ke*VeJyy9V3s zRfhae$o<>Iu0K2EH6b6?Hn#lL*lzEoP`)$dv-XW$|L%}ihn%usZ27A~UKa8{*zQmE z{;|F{1m{(~WJ3_1OPq?q~mmXO~IdH;^F<@2zee;*I|myl0AFe&DGQ5y2)(#azFx z4*B_ze-HWOgJRd89P*nX_ciy|@_u6kt~2-Vqw)MxG9pcKJ&eRf>haijGa|Wi{lurQ z;(57e23Ip#;v!kN%y=M{^@AlYG8h+fzpvkaD8ePZeSQnxeTMfm+%VAl4xDhFcNs1m zoe^0i*F(0y9+zF<^9H4GVe!m>1*Ck z;i?*UKg0Rli95WLvG@NgU$~n0XQn-;;T+@V@M7G_oxe4>+T<;`9Lx73zI zo|56k!qmiWj5EaO4_7`_|p^Lm}L z=AU61FX}Z|#*6w}EaOGpfTjPdH(?nc>Lx7XNxcnMm*?*FPAua~^F3J3w>sgQpg*Yh z!(+*h;0Mwkr#fqXI+pXVJ`2nFSD%fg|ESNy(tp$!;(9F415*DqXU$9TTJnQk{*tri zui@X#`VG#SZ^FCC4|MAvur{#fhu|d6_aQFt@2q(a?m^Di^P>AV$yxJTa3AsmT)x;@ z^XKtka{Ye$SI(NR#}||9{7dmVH zI8HC|{o`r;Eaf}8@~fP+{MUE|x$bY=w}CZpgX_)qPIlHj12>YlbM=pL)_fe6@u$8X z%lK2@gzfvRTd`l7TT(CM`%GMKt6DR@dA^%~<$9{mo7GsZr-|pzd>dfCI}yRcj@OWpU42Io^B*T)|2`z#e$u8%d&zhk)`Wiuhk{`9(n?*nl? zivIn1JQd6JXo0K02Fvwmi*xHMsc%{a?-YXdhhVuL<-7VH#Bx1i+Kblz9hU2noNw9Q zQDfLYyvD6R0n7C$!TEJ8*CSnj50>kZu0N=Nzc+_RyY1bJqt_#MJl~4B9?f<8d*oGo zABpQxuJc4J*Q0V*{w-|xztz>TJ~!n1LtY^u%cVT-y>0c7-yF>mmDt^C54; z_IlL!_E_H@^2gX-uR7il>ro*;8S*dKUQg3YW3N}YhWtUu2h5BuKRV=RL*5p0zge;C zmxa7K4)xFPZP)YsV)Ayl)BFB;bDXo*e?6X9>+8P>SO1^)t&)G>Jp*qwz7ywt z=<|ENahgjOL#QET1NzwL>zHegv$FQ_V^myarBi%1dinf21D}QCki$^9!`$xXZzr%9A z)16PgI4OEQxV?<-Uon>R5q(}~dmmysAKVT`^MgkvMcX6#zKHFQ#AP#bqtE|wVsre` zKX1attl#L~m+f|@I+nOd-2eFepZ3)AcO347DIPr^7vcPme192*+kTu8SxYYO1HN#U z+GLHdaRYg<#6>pX+E2WH#O3wgTX4>&-oN97&%C$ewZ^;f{Lg(J`Htu9RsQ|QNzS_c z-nful-+zpA*8F;0MjmZn_Wx;T&0oNC$<;68wQIcJz{O@f|A@`>4yX9KZTrEXS*U5Xvc=RP4AMK~}FV~>A)$RC>amHD(07smD3`}?J5{TP_)q{hhE zI6b~kKztq^J#0us&XV-sn{hsl?hk$f=Nf;4w*%v`N`xxaf$J8 zT)&?$KN>GG`JK38f1lrjml)rVC-&$QS-}3weE%cPZ0E~w!Sx-yf5!y}cyGrGlD&7~ z#)JAq3g!G!UruA-puzZi^tguo)9cYKcxY$8{&d`AJQMFUo-OX;%io7HF7)r)t8o_A z_TP-FQhfQ}@KTd^`ibj}S$_boF!==BtE*qX2zSc!^*@dySgtQ}{y)ZTP5u`id$?c! zU)=Ku@3>8T9%kGIuQ5)-k?y|yfjEovrR{krmh-1R99Nq2KNz)OTVTU+Otn#*g{|EbXbTz|w!!PvJFK zj#!T8GiS}e!m0EpeV-oL5?J##So*KJ9hUy9J_rxRXYm86Kg(J3v$6DF^$;xmSA7wd z{;nR4t4)1(I%_@$OMg~BfTcgHE3ou`^;0;__<5XV{4%!Jv*p+?%`M}f;`?3n-*kQ` z*Ozy(^cS7a>we(-m-MfpF2D8Er0D!K*L^>!2FrZZi)v;4)~6*!=OewJKMzOe54k@k zpNC~U);h1nGXGS#`n&W_iq3b@`H=GYSmsYIf6?`y#xg&zb=z;kay`)BzdbdB^_h=X zx$?z0I^VnfdmqdA*X`}wCn-AKd%FD@iekCmlVA|==Z@!W4r$KXT+AT!Z!c#%-B3JD>gs;tk}E& z+x2hmAG`f(Z1c|t#IB#59h)CLFg7p5cKzvtV)I&T^KZ_M-F`|=Y<}W7vFjIMyZ)Vn zWApluzdtuN?~xnp-si<`zZl#4?;R3beoe@m&yQWd=g`>o&%7XZ{Zee}|Kd{auNc44 z>lyb~2VNHY{F#SkyhlI(BY)S7XSsjcfJ@Bv;76RD=C2Q1@Zw{=f5(LId=Z|U~yu!{(LtcyLU~B*0dwXZ%WaG1N%_#1VWPg~^pTKFS`|{7=k^Q`1z^P|?SK{pc z-ml@JZ11;l^+4~HxMq;|hq(4^?@w`Ej`wO@e2(`zoMYzmjd;1qn{fF>{(k6?U${Rr zc`ANjxPL!%E>0fo>(9gE$=fqu%JpqJPB(cOK7w4YpReLvlUL(fwlDLWtiKtLHThPY z!TNH4BYBr!`Tm2+d*FS{_Rq(QOg<7nPyM=oci?K1m*c6d-^JDc23~9Om3Rf~^IN0Q z?Kk1=Cf|X7HTe;I5vs$vzI~3v73A&Q`onQgljq}?*uH+>Xg1C<`2+ZCa{c_e1{aw8 zW4y}L{}(PXc?;gc`kmbNkNu7PF?lbXN3Q4Ra=hH+ zM|i8rSL0-IU4IWw%=PWl_V-qi9n`Pq=Mj10j?*{M3OIbj>hy>j(QI+!Th<8sE=vp`HlK|V%fi0&X6T8 zQjTlQ_U7S)VSf7yaLI7*$FR(A!4el)jC)?@{XE`jT#0Kh_xbC1v6*kGah36Vc$aY< z&f$21h5K(T?WJCWrG3=jVrd_B1D5ttZ^F_(>L$FZBzLd3VVUnV--%^>s`p@-FVqR! zg7L5356gU|?to?dsSn07UeqaA<_C2*Ed5=bhGqUzpMYh&sC!|VKh=G)%!leMEaO)_ z2+Mq|&c!mnsfS^i&($Nb%s=YOu#9JQ0haNlz81@Tq@IXneo;@xGG5iiI2mjIeb!m? zW%y8Xoj=w&Yuqnoz`20oY%jkT^^V1M4 z_Y;lo{;c)J#OVA{?AAX6%lxACy~+DaxxY$v&pZENx&KmUotzZC|4DcCm14PnQrBU* zf7|W$Xa7^Uzvcd>%6S-;`=JC^|3WPHOX}~j+#jir>c#s`?(b^c`qyH)-_qX)dkM?^ zTAi!!Pb~LqJ!ocWkKR0=%KcxmJKjHe9+Ue+=?~GI=P~PBLq3=1Gh6??*w()q+xnm4 zdCivJjBWYjcwV#R|HZcanLNMQ@^@fc{z9JTZ25<^E_zl-=F6}TmF1(%ioV}`7t~% z+Van0TmDyU%fH3*quu|OkO%PmX!8SkezYDD@*^RS=lRm^&r8_u&!5=t&-*-Y+WOn@ zd})1d$X$5ewDn((ZT(MSTmK}UM{W5xur2>Dw&fq>c~h?U=Q3Voemc#}U-G^Z?0#Ta(!R|lKaDx@FH`)I2~tC@Z|^M}!0zR{O|0H+msKaTT^pTh;lui~CJ`SNe$+HtW(-c%O|>0KGRwA{#eF`ItMSoa($QbH#%!R19D$U7&RO%9u#5-wYj`L=#+7ey)_fC|@u6 zV|mdf);t~mjrD%_5@*e?!2g-N+*$K^xYa0sd~Z8z{yuI^uJ_BoJ8QljcOYl_i?;XS z{{`0kNZirnL!C7rj+4#yXE#X^U_*j##b=Lele7wo`Z3(P-dz^0azRsFw;ZsaL-dXb- z@M+}w{9oa$`IGoeaz37qp1)6>HD8SfnS774<_Ub#cpka7?}^TupNcOudA_seSL2Jx zb^q>j*8CxSCAr)`%XogzS@SwP!Q_8BYyJxlkqId>+|KM&RV_z z-)HiBoi%?DSCF^k2hsg?*8C&#*1Qg{C)e@5-C6U0@lWL1Uyg1SSo0Hb6S=nEC}+*Dz<-(=JW8W+$K*8Dzvp2^>K*1Q%EGx=6$&Hu(DOy0ds zV9k%kqfI{CS@TQr6(+ySS@XI0YLizxYyLhSZ}LB!HQ#|Jn!H=vz?vU}Z!-Bs&YF+L zQ^~dc%bYd87nhj)EoaT&!?R5OyR+th;c}B7v2S3_)9^f#=Q(SB30`3GJDoM3gC8^b zo6efA#EVV-o3rNI@$)86-7m1_N8?J9U+Ap)DEzv~XE|$r53V-(3TMr0@Ovh2a@PD$ zTxasb_YbW3QTQ{H4|CT1V!X!WGo3Xr$KRTKxwGc);s%rd>a6)TyvgKU69a30ByKYK z1>a6)}ywl`wIBWh6-edA#oHcL838Ve|d{|Oo&3oW|O+M6F^AWh6$?tI1 z{BC@p$zONY{B7LH=kFtSKvFz_5S21XU&^%xv9TX$H1B&j^~;DTxZRP;RUAtY0jF@ z#E+W%WoONo<0nnt=&bp#_*rs2zC#WSta(>lNv`+5gPk?M0KY@7=l?cm%}a5u$t#^T ze*=F^uFnG-oi+aje@(9UZwK=tUaa|H_*voeIcxqp zj^lls-ar57tohG)e{%hN`=EmYYo3BTk!$^%f0-{zf%?dNHu zuwR;6*7Ckuw%5oH<@22$m-G1&+pBY)hGl#DefjsWY_Hnot@C;R&Gs}OjBWWj*w&YC zwlBw9hPRmgy$9z{^ZP#!HyJ;Kr%d;G1x_gOegap{@O~EC<9`wRrMYDb`zPx!)z8DO z;P;`}pD7fQ_W1G2r0D*XJKsKr?<=xD>TU%|(fv`sYU-EcTaSC*!RK?bK2Ow%hXjT! zaghUXI(Z6`e1LN_#yNNm{Yk%nek0DMynerViL;h}5$BOty7~_66j<|4c;dBw{u_Yv zarE<2_Fw{DiuL(xA+9iaEiT9Hs8HSy{DF&2-ucjkNDbEUJrGx#d?HRL_2=g%Tt}{- zA1uPjB@4)2^0NuA~E>w(9zzSeg>o@nZuihG&-X`E^DRXFQT zU*A`_(v**M;eCcFe;h8I?aQa*`0KZK?Ks2|1Bztm4*=^yInu=F4GOIZ4c`Zc@?58wx~{|(NXZ^F`l)J?bt zZs*D$a#&!^55v+Q)ZMZ42lX*H7az(GWP5qenvcTL-_-e7`kVS{T!N412eSTs&YC}j zrGKd(#nQjjPhsgV>gTZZ7xhcH5vTJ5ssCGN%^R@vNA)Hw{ZZY7d*b8xfvkT>*T9+| zhNb_hyJP8p>SM5-Ur)q-X>K{ySmwh^W&QcSzg~%ZOz`959y}cD{l{{=f$iz|*@%0Q z>)#VsZw(d$RI zz?z?fbI9Au^^N+MIcr{phd$INQsCAl=JVQaSjLCu zX;{Xe`UEWPtL}y6e5w0l8IS5LEazW62+R3X=VCd3>S0*UmwF_Y^RK=POMg)pVChfl zYq6X^^+YV^Pdyngz&gJ?;jH8$x$yp&v@pIW5_)_h<57Pzt8ocv*s08`j`4iEd5Wt1j~G?UWR49R9E4x({uOwO)T@J<~3O6 zU-bt#-?$zxHU1LY`F|buOLNO2?w_T6bUg8Wn6tQlmj0~%0ZV^Z&)|Mq#)EpltGNGW z{$4<(az8!{%Y44bdGIyl)GtRQ-?wQn+n4K2+hdr&D*Sj$!ZpSnalLUTob{M5-xb^A z>w*2!-0~j#EA`9#CHoi8{z(1mV@-M4pJ8~ksec6SdA&Pc`orz`BHT`n2fv6LwEgfm zIFnrJmpuMh=69^ur{nPutn=eY++?#6>>FDU1B`)4$G|$Ms};0e;j9%tDnXjp74GFOMSr-A9)$e@vGm!a=z4WV`*RY z`&imj{SlV-RDX`8{nTG!IUnlvSo(|l2Q2+Ty%|e?Q2&OdKdAr2(!bRIVB5bV$H(^X zhZ%3uUv&Kah^0TJQ-SpNW3Nt%_UF0IH)1*8n!kzVeCv2~CD;TAWX==expL^C$2cj!)0`C%BmMdcNaM2(0B>xRmmmcf>W% zdUwKQFL-ywxfA{Gn-t+KX8VufO!DY_M*VfT=taN&XSnWF?=`r>XK6wCfb&mY&953uwH{r$WH3iwIkccOEV<=kH=X`VHS-F2g-nc#pyLE4{~J`}^|O;R4gXldx^yTd-f6TMiz_ z??3B!pgl*5*`J;A{Zrbj7R&zV|2sMPT7LhS{aM5SmV6Hbin>q#6B4Op|ZNxyJwDb(GihpLQDK%j75F5^}nGw7$`JqG`W7 zaj_{s7nd6^#5I)H=a*XiG1mLFKX9d~uXAtCpIN^zB7xW?oo@$cl?U+%!G zOnwg@O0L^qjz^jLHsW-w{i|IDpJ$r#eQ@gMzP$(Fhs^pD@O-Stvk;e>`f72GS^qQK zm0b7tA3W0Jt@`l1ZJdNpV*KgxXW)KV@0Z8mY%@OR;N@oh1-Q=mNj#MDdc2?FgjN3d zzQK*`pSD+gU&e>Y6LF^T!ID#-zRx%dCz$#R@ex>$_aVH*tp5c5lcg@0H}#QN#*_LuEd5`75|;T<-5bmJQTM|#e$)f7j2HDec%t$7SmqDSFTxwl z@7rC1WxQy91(xxoz6Q&9Q(uRrKd2|+O5ljXJYAZ>e*Q4KlOcB`oH=i zEc1){Q7rST`Y9~^UHu%E@t}SQOaE8DhNVBM-@-D!)hn@#Z}o>*#<%)YEaO+b8cY9I zuftave~+&={s}KK{uRshUe|BNa=)Pd8?Q3{56k_6=B@e#_Xp~I@m7x)jTJ%y#!%V{hi~x#;~4c_o(XZ}j;J_nN}< z9^)~U2|?ChcWY9#J@o!KrI`P3!~R9*Kknx)$Fjfb!f8p-_R{;)E@pq_{%iowHsd=7 zFa6Pv_w(>_<6*egcm&>VJR0}f?AN~%M<)699g8!KC*WM;B0So7Dz^8#C3vFAXWMa*Y-Xa%kil1!E(In&#~<96zZ4vWrJpLzD>RhOM9K}^32;~@2?k_3z?l-pMqp)7z4nKqI3)bt|V0;SJ>+wxE|1V$vR9s3P-GAzP8u!J~ z{)kuMA{;$l{4dUJ)7PB>N}b91pFAW|Li@}8&vAI^Ex!D4Twy!|mm4p|#m3*@LgRQ& zrpiN*NG6ui1UBBv*uS}=|Af6So)j#2D}^h;|J1zDx5Wc z5=;M5FTv8@>Sb8Yhq?;O`BJ}$<$S7Z@NVM|u=EGb>#_6~^_N)slX@+d{-*v8=NdQS z(Z;{vLgTHt*mwsnH{OjajN=Cc<4L#I7Tfu-9rjCeO9j^>8Q)F3P?q`b^@)66i2f0M zeqw&wiKRd3{MDEDDbiomuP`6V{8L7yvi>yYE9tL;u*`2YSo*V;kH3TWF{Zw3Ec4Y8 zw|>@LNzwj&u3P_hEd5olU&&_wW&X>=4QBkDg{wOG@pLxcdh3wLVyTb*@)(|9?7dTR zQ+^LlIMlD7kev`o>+HQB?$pJ*1Fkmhe=vUAI0f%C?uHkc&wtWzy}5rp0k@s%-|t`S z%xlI!!$56+rz#--$X{pvUSJ=4ara z$o2abEYqcxTN|!AF_= zGH1;T@JZzQ_nq!_*8BmSL$3Q@a>Tlf)j{d{Jei&Y1@*HQ)hu~Ur?ccXJ zYd#%+Vb*`%S@TM~fn47otasM@2mFJnKk?kans>x9U#dG{nJ?8{vAv%3z2BDTR-u9?yqHj&UAS#^SjKS`aIL-Zmt(tuNQ-{%*Q?4`m3Hh;bwaE|dNJl42L);HdUml*HFb;f(}7UP6mu6G>E;H_iml&tvI^z@Y7UNzxVY=UbU);ku3uhY-!Ue{;xYT$Uw&POTL!Cdw(*HH@au44xr+;gHJ(m7o=*qv3 zrT=F+A2KH?+W$K_kH^ygHNWa!{=PfsU&r?|I0vUvUhWq+;{@7Meau|`{=4ybEd5LK zr8wKEykJmb3bg# z--gqS-^FFdaq~Go;{n)yzVN_rK_@|0L@hw;#&;7urMbANt^k$;aR|C4T-Li!;e}`}6Qfv%hcSvBq0)?gGF5Z@A$l z?`^o#_kDxk58;SaO@hO!tVMj~r*shhS+>bsm=XSC7JSe$@Fm9qaw> z-OifN#nS%j2XQu*H(t^oYMeFy0GF8Z^;r6c=3nAP#%pn<@prh!xDl^1{slJ}Z^c`U zcVOwyy1m^vi~nz-j=zxm3G+PJ7EAxuydCa@_5Dd7XU)&V(*M*0vGhOnxmfyx`T{Kd zMLhybe^6hF?e%aB_DgfiIAfWw?vwQ!e1CZmuWIyu1l#%+ne`*A|Fp5x_bJ}F+0So# zoP&Lci?qt){SLX#Z>KtI-WM<7cyxX%z@4`E`R!q6E&n)9C71h88E?CsHE+RHxBKUx zaTn1ajK9VsSwDJz!1@Oa53K7SjNAU|+oKE4VEyALApLb9PQ%gbE505V89$5*jB9b# z@4mi|@M4p1$McO3AHn^O@nF1Yn_vHYEbSF6{JsXR#`?TA%~|tO{294EPc3uSybAw7 zuH*MRXU!Y&FXZw(A;;ftWMIvcv9yP}GnV#Jr($Uj^-);bOWhO8@v2Y8(jMvzEbXN} z1KaVKjjK#P7|Z$A@i@u4*58Jw^pH<8WQmLXjYl8py&LyB z$~*pI=C7l@+hTh>?XX{(TRK0==P%T^mLJOT+=FF%dOYi})USE6Szq=q3umPH?G41) zcbM^m^NbhbUdHd^Ec5-vIw^mgukTZwFzEE)^Cph}h*7l18K+0e`G7^{hY2{@)VBcl zFn$jg7&qY}$$7rM&S#Ec>tP55{>WzX=x@FT!h#Kf$HO zJMettBQ9fqjdO7?-Oqf6%-mt}^a~YmK|&HO4(~qw%qLyKy>BpnbId({QqJChlR}AItgF@;Nx$cnHoj z&cg-9qi~UNJ}x!B8qYT_#EXq@#8t*qaINt)yvDc`HyYoKw;RvJ(qHs=9>jKjtiXP0 zZmD8^m-#J4zK_TJ*n(w#>cIt9ob_;0w14Ki{7JLE%#WYp(Ib5SU5yJ(fBg@a8y|fI z<&7`E6~?#XV&kXr*2{eT&*Q{dems1Iml{W|WIUPmkHZ^`hvQ;Xeg-Z#UWzM>zrjsr z{rE9#&$uV9Hy)0wjZ1L(HGcnR;?!%s@5ZCe_Fluutgq+qEy;~n;xzMps1I?W$v?%# z#;b9;@j6^#{5_WA(e3?&W&hQ`VmUr_Gu~kQH*PZi5AQZ^RS=vnU4LJk!ttuxPWqjU*H%##TZ7OcO!Mg-6o$NgeXH4}jm-UV3;jCMIz5tIlehe2B z`+PC3H+~*Zyv^s8IANOi>$qgPcQv-><2~$`=9W5RIo_sF`E4eb`_G-mQadH(m? zI|BEd>3tL~yW9IX9GT~xj>pdTJ{6ZdvcoCNU*ZQ8pYmAp-+aF)SerawgdW`Qo(4Tg@@%jdq{xsUX zU*Co0{OkMqJ0Iuo|8u?*4-3ZkA6WX^6gR(|yomSRY+vV#A}sw+zn}I7mj2g?2WXie z&Uqp!+W+!W0K@uYpm(q6LttTO_4H05Rg`{L!__luOu_+)=;oOS>H4`*)dxA*slhK>)c`9-*p zd?-JV^*1_ez6Dp4XS@9R!oZpr;Yg#eKXP4Q&G*6Szo$@vjNikq=l!ek**Mj_Z$HoF!S>=K7h+joeKEHE;d1Pk=9a6B<$T|R z3wHSZnTK=!_I?O=*y&w?8;zgDOaJlt5?r#&dl|O-Q-%G)^WM^=XnB2K*6~Gtf0+8~ zC?x%LIF|iUAGnOqQ`z4}m*->IKb@Z!W7!||n`V1*yg%ZR|N8ygjB9B>z27-tBG-#} z21j(^^GH0G{1hzbC(Aj=`93w4_0_r99`7*hm*$p{#F`RM#a|2oR#Qr{3f($se$E;SyB%Zx9@i;c(NrN-lMt~vhe zalY|Qc%kvFxWn!K^R*ec*5r5MHOBYgM&tW&I3vmbI$8qL8zW%4NZLb$({k=_gi|^GXnQe& zC*m~9M~{#4&p2!O7jQbc`emGN{01)B&*yLB-TQmLj~f!bKf<+1-k;<2_TFFNdgJvt zgZ(|49gz91brJJH2VXuB%kczDe551pg}K~D%V#=k-X9O;_t%4kYYRTjl%M3R=)*b*Es)tK9b50<^0}*8@PU|?=$7){I0->2l(^*i*ryXzdw#U zkn8z9;-9OM9M+ ztIYO?hSnc$%FFwcO0MrxzLaWZ{Ejxc)K`i#y7=?+nscxZagjH1Cb^!UCTGo?aT&*_ z=cmif%$OM%LH!GZRaF!NT|9aRtud2Qpr&oHbwJ)>prSZF|0t z{nFg>k+B^A&!O^vm|WWLFJmcx;1tGxs^9-kcsI_L`+xQ@*E!fG|Nj+do#x9A$76eY zUxF8BdgtSm@*$CKR3OJY8=ryo`}42k9DIb!f55wE`}Rw`h55v|H*PY%5+}00w)Z`_ zeu&@xJUo#+-PQj#US!H|!Q0LG`5hll{lUWTqv2HJU3jE%WGcsR+!~h~C*lg@j=0{q z6PDxC?RCX+eCi%p+CzOTmg7~YV`*RYX;|7J_~IVgI^QNaoKaSlTZ-zu;f6v{&@};G#GAeMZ_l`h5`m8kY9b{BJDn zqyBs)@1JpotAFBq{C*COo=?^vW%f_{^AwzRnLq!x;k6u}j^}4_dA`ppaiux_6?n19 z-wWj*;`}T8`t^9O@t3&9cr9Lhr7!;-E*|6EDC-;lg3Akhz7^+Q<-G&fnf=`@zF)7G zZ6fivGT$4w#SO;ou(U_8#7B~`J>Q+NUzlIs;{6o+C+#Qm?KUjOEA20Sh4Ufpo#Eck zWxmh#)Z~w0*ZYNM27z#_ix6XKcN2^r<(nh z^M3|TyxOI+dlKp1e|)U&nMv;<0&|Qyw7jLkwWh~aGCL4IOjT_-;39>y=ebr zdvD?<)7~}sAL9>jI^}~UK2ndfjK9QVjo0ESc(Ak&^|vYxtn2TK<#^TYvFwlfAl!D2 zcbBM#?#+)7w;Qq7M`PPRj>mp!Zb_@=ew_BG;fK;6vTFGLH|?KHG4TQP4{5(Lm;cH6 zmG)ia{08S&&WHL|&aa#g^>?`K9QLoIb##6?;=`n9`y9pkGT)5B(mvY1p2pJN(ce!Y z-;AYwH9w|~`Z&J2lY{jO#nJZQYDf9BkCUS3C;I(Pe2O_<>0fzx{-iS^MXWE^#}a3D zNA@T(6SsZljL67ig1pLE^A$L9)`-3RV4G!f_dWv4`oR(xIU39UsgK9fKEcBI!P1`UK2qNJ zOf1Kv`9N&@^SQGA-i7zS#&W)I#2J}ckwxu-_IbfMScSibfY%Pr+S?yCIBWg`&b^I% zpJ4su>47yr6!$30iWJj?(*Ak4=Ju>efh+%wvzFiB%Bz3Ci$2H-$oiXb*w?W@zVv~RHR|9tU% zIC{Ur9_Bl1el?c%R~KSwAN7rRyZL>mDYygs!*mmEzbBow{1Pn3uU>}b_|#Qcjz|3_ zw*9{b`-SgE8cYA*j4N;U$J-?NRPSb-V*EF*n%h6pi(+zqPT@hV(Bysa680ybjY@wg zz;mbj`mV+GW!@99)E6vqk;!<9Ii6xH^#u!m9~Il7D%XD;{oSGe?D@AbHCmjP~<<03y` zdpw)5UwEGWitk5Jf0q0FwFt}l(dRd=zrUICa(wM(GXJCxh%A!tS8)c;b`I*~c@H-Y z7_fIfo8qkbZ8(4OfW6nZrOukajF&&|_y2WV{-pO?c)=^)HF)Ri-XGwGmEQGu$`{^W z;-%ksuf=T#`1vJ%R^VWN;v;RbZNGNdFT4*nmi9Rnmp1tN`{M0Cc%O;0_jqUHk}lb< zN`0@lZ@IJ9_YU4puCB$EFL-~97nt+83d{C_B|h>sw(Yk8`=z;MEBBjHpFUr`^%>vi zqCKL=M|%$ZoLr9=-->1bHGdh)_M^u~e^|}@Ci`2>M&x`fT*LjfDZiZaA?>N_|7i9{ z&PS^$hxKobL*E?(8fJc+d^R}$tqdc(Y$KtW%di+;9Yd#jwCC_u~KjEzTv$&DG z*yRn*ns37S=M3EY`$&i16Ik;j@d9$K|1xLI3vd&;*8ixp=1<|Vg9k<`_<r5;zDvg zA3L2j--D-+YkL&V4XpW%xSm|@KjnBgI&1zjE*msr@B6TE_wjzxxCtkmH!vv9`rB|N z`_Jt^;`;{k5+aMt@#Nqw#*^@>A%6W^@J^F2#tlP#{yc6w(6`@LcpTidDoOb2^U`I%lF2`#{KXT;{mwN_#9l4=hr_Ur(EQH5iT{p1TQ!9`&GE!6L$-HW%F`~h5WiQk_`@S+0mCvd`5-p}GyS9`yRvuUqt*M4j9R=r+u zKI7+eKWffTPdsIuU;kvBaIJR+PNly@uQ#ke29Lxte@g$DgY!+k0!NG+aR=k}53v4t zU;jaPBKaY%zARkN{_5ug*E$ok@cAgVpMOura(uxOA1THWj!%DI_8Di*mtr}7^($D$ zuX;I_@vD9Z%XnAU;$qC>Y4rI2aMt`Ud^L!x==gMl?a3g2b&3!F6{f#;h1c4y7Y z@Ixkl)mifuSjMaRT`c2S{eSrXu(t13XU%tD8Q<#NSjMwD{-I#}s@q~2uj+PK#;ZCR zOMg^%#?n93saX1l`Y0^@P2Cfx<0JWj^tTbtnqP{gKdQ%I>5uAhSo)XxdMxvydNP*z zP<8pjpcsiWn5(X^Xs_M)K`sPHhvE`8P{REz0a^;*xq-1UzhqDeKtdIxO3ZzK`JkaE+-?_IDS~yU|~dMl1*%Y?IGdaf!*_a@M>C zFD1|C2XehRYGGi_kHaZv`}yJ`yj%B=HKyZ4lRqb(E*J5cO z^+YV~r=E`7~T*d;VRjl|V>HQ!g3^L>Z2=6B(_dA|I;c!BW) zxXSnuym;^TWm-p`!1jDSi~Yjy8?EE}PP9)o6O7C^O<2xXTY3MA@A)5}|Iyz1Joy!t z^P~QR`AXVT#*dVr$9yE`L-YL_`23Ik3FfcXkw>wd|9V&cZ!G6m%TND-zsHE9->0R% z#2I}RKbYT!U} z`_I1EFZ_SoO}x*L^B*6a|Mn)A_Bs_;e(ugMt#X@lP)A(kcHBU&z7tom{pk5)|6ax& zRt=0aQb4Xhjm}#BXS|(!jmwXJJh0{`SoSwq;v;Y4TI2U|Tk6yNBP{i+KgVgtUtv35*JHo%eP#NmluxCDNq_JD6Yq<( zeHkwoW7(ee|A(<0Uzs~U8?hYE66Z5Ge{wur=A+~HVJ!Qf%|@mEAI$dUeD1*o8{By3 zd>p+faIlYYk)C)8x%wnL@q6#na8ZMICeFFuw?}_$k3R?dh414U%l_Ped;Q@1*9vFd z{yVsUJc}Pl|Jm-W`9F9p+t>cq{Ryrw#^>S1tgq#VVJROh{Qnv}1yP{ zv(K->3ERBK<21@2@AmIOoU+5`6}aSY? zi9LS(6Yz55UU;o>Uo8D0SmGmD_*1O=cdfJL6S16M^<*sPS6z(de5!B9a{kn1SkA9{ z4t@lm%@3r%EO*xY9W3WtU5n-Xsz1hZe$}h6{ri(&V>v&XZ@|+2>L0PRpLz?H@uvPA z%Xn08$98=0!hUIP>GTVKZ&c?e=I_X}K9}*{6=%i|a;wBey5lnH*ZzMV9!W0uD>B|5 zb`DnH{}1CL@_aX5TbwmdSi<||R)hAA*DIYhzXsd>ejP4I@cT0f%l-sQeB>5vk9Ruu z3xDtXXMTS`_m|`S6ia>j`=2vSc{%>4u-*O=+}Or%|3y4@U+-6N!+zdx;F3h|YHas! zCH4!y-@TdpVd^iH_G14=ZQ=Vz)IY_!4om%uoKIu_rT)?KeHhArVCs|oZ^Ro8^xOX# zS0C*CJ8n2`P-LY1{d3OW8P9RQ(b?w%aM6wa{o4dwjCForhi2P)$$!Hc#+{z$ ze#E#x?qpnuw;tiQe*;cV^PY@le}je3t8lNugM!Zo+5b=Q#F2v{o!s{~PI-a(>fAw* zdR}$Gk@=@PF1y0_uQa@yr>F{TyCu@-?{HxCNI? z@bxEDG9FBRB2F|Og?k#$6i@Q&-;Fa({us;rY>s$}_TEm#nGCsxb zdU(qb-p|lJec!Se%kgS`yRnR4@b7ytU(czcK71vOmiapj%Xq~)$C~4j`Fy<`{{%lD z`s1t&?eXl(oQe(XP$)hXPs$@Yc(P|n9ySoW{JLC#M1HjQrA>;(Y1^zQuJP z^5<`zx41tuj>W4U^w-B*@FA?{{}dcIsZXFcwaN9l&^cH={tTy0@ZWz`;bB;}Z?~TH zp6#{#g*bky_a!*XwC7el*5oO8p~>gqJM=)Zo&^_e}6b@{ukat-qPi*-U(UrD7>3opSN#t)_fo?C)fMEOlQrf;eW~X`<~aG zHD8ZUXZ&^hADuNX!%^h&zFOMf(j;DU&wsc ze~scz_I-in{JH|m`oF>)pR9kI@Bwqa7T~Js{(Rn!>t=a>jyoHFg;R}- z@j~MtaM}#N{V#ZyaXF5j>GSOrDFSe)W5}!Z;tx{xsi)dm9(wVa8wLT;pP# zXZ$0!_w!}A$mDx*%tXJx1K7^rf3W}X_tm(+kp4~J$1)#gG2di-<#@%-xSmRXYyQAt z?x&d#4cz_4^Vr`1{)A=!I$zH?#@}aRymdYf#WEk%E3nKL^&eRJCxZRUe7x{qzF)$j z^D8WH50?JW`d`5^pNd_34`CVqy6%2!%5mDydjm(!te*Q({s3op`X3!jGHkTR#+1Nhs zE)u^$c{yLnOP#g+9-Q)`uYWI&)Ba|Q=I?R;yVB=psc$w;eaqMP z1kQTb`zf48`(tRNTu(m0C8j@q$3@0xyw7^I!EfIZCz#_u4@aB)B3wbP*V~(MoXJPv z%OCdF!`V2|ImuM;>m@CF|HpX&v_!s*6Ucp=9ZTwmE^+fCg6y5p7erynjiv5eO(xUM;#+i-)a{`x-?S55K9 z|0eEj%D;mLnEh|UvrPUmUSs?PE~ftA^^D^=h98>dzaKh(bKSr{wBc@9+M^MaB^Y%vZC0FFe+4pNL=P__hBg;Dsiig3H-n^Ve{m$#Zdk zw%76b3Ez#i{f)M=zJ1`2uNjUY*Y6Ln!40tX=RMfYzx#0t+sD%Xvc7!g4EgXr1J5<} ze~V|C`CEz$OyX@`tzDOoAGGl5x9`! z(f*!=vrWDLM@;s49xgWdRvc~Ge*nki`}Q2g2^_!9hv-7;H~GbQ7TfE3oGdouH5?x> zYI~~t5>)Q)B!}t@NXO8bME-{YU&U$Wq11>Ut2$!4sR^Vde zB3x*E1aB~I`w8o(@r`(~aRyE{UWrE=e~x2lPfIr+j^a$yzUWW6|1j>4j~hRX8=LxG z!g0nsaDwr_IKuor_c}$P`N;11gazv3-xxoA{=C##^Da1y`KI6h+~KVG-8hz9@81?U zYyJ$D^H04DCu13Lxqg1^todj7dGZTge#BYx6IkZI`jpQYKitlhzt~yx%kjVD7r1=bSZPf#rNqug2L}??1nE*1Q;RBiHNEDW8X|c|$Dg zi@FIe!{_h=*?(7O&Es)3dGL9W{9b3x$Kl>)eOv0R`HNW2cl8>ag4^%|+22>rntz8M zCD-=X{UT(|8(~?G)lIRiuj&?f8P@lAJ)AY~i`S9s@s4-aJOj)6tbP=i;Qzj_a@Kqu zK1tq^AIS0ScGkQU%X+E)4a@nduE5tC|BdB*)w~MNH9m=#8rR(sT934RBb;aQrdZY| z&0F9S<47#)f#z-TapM>)>w)GSaU|C98S1S0?f61+z2A7;S@Ucx>xuelEbEDSDVFt3 z{UVn2O}z$Z7{7sM8Rz1~#_!=Z#`$=I@its&T!f2_zr^Ln#kk7&M=bZx+P*R@_hah4 zSnk)<2e8~9s{g@q|ENBW<^E6|wlj1;tZsni{#PB2<^EUQ9LxQ$x)qlDUv(6g`#p7g zEcb`%SSdUa)zpLZ0-0!Kc!E*nu?v3UCRee2{`#1FfEcbWnTd>?;tB2tN^ZSf< zV!40Rd^DE(NA>+!o+s4lSnlW54`aE1RZqqCd1)5*AO1Z$&%5$`6weRkeN7|oY~}e! z|9_c5Vd25^F?fH(`?G^s&PR2Z`r*OzS^ftEdA~N_)GyCpZ{UnC`vji{<$m=a=TIB! z1pdXN=lJ!h{g-tEFFo#`j|Spoa=kyx#0Au++fT*0=6D~+2TcAXZa&vvPd~(UvDUX2 zH~q@j_cu-_5B|MU*0(laF`rG|9`_;F`?*25x5;nCBgplBekRT_?SB)en(`ZQjA_pv zT!i&`?u=b^17BlZU%KNwQ~n)|u7;miO zHyGRbk&JUqeZz5Jx?jIW;Zl>|j~CJ&-QTk~%ZzUUZt$%?o+A7Uxz48}ILYMIIGc@Y9`8;(*5u#dOdL!9 z%ldiw_aQ?*bpmmCjme*J)_f`6W%7TWHLp{`{=f6>t&by3|2M_mOdf%=$diM64-53f zDJH)jXBrQ}Yi9WIpM*D0+x{!W3r+dYal%Z$zoR(D zIQmD{YvcYn8SDM{!#LCAFX6eyJ8;@>zJ1@|Qj^#DiT*ZueVky%`wU!V@>V$RG2h+ciJnlHp3 zlI#2GP0pHc#j<{=KgCs8dQ{r?kF(~-@im;!`o83XUqjaXVl3yo`f{9s^?EzPS@Tr9 zfLyOH^PM$cgk^nHKZoP9694lGyuoZ=y7#>EbEi{94zaP`aCS_kNN^E>yP?kycD0$4`lzz&YF+Fo5}Tk$ZTiL=VMu~)Qj)| ztnYL4oi*QvTeDv1`BLeu`4KGZm-+-wz#aL4v@d2)$eMS=50UHlBSW1vza7i^q`nI; z$2$MAoi%?NZzk9G2b-NW{}{`9sQwI>;x7C^+E?YQ`AID6t-9`Sq4iMR2=^k__jgw~ zYkoDB^-gtHGc)m`lMcm3vqjXAjh-YS@TjX>!bQN zT!r=h;u*h(ta(c;>#e#qj=_4o3C^0|gk?QcC*dTl>(gXs&1Ya)AJubk7S{RljI<btN!->K7Zl=1(tJg;c}FqY>P^;9hH57e`;yl+s?$MXE3ej3a3g?bs5 z`+M~&oMZeN&NqGw%kzSk--zY;L!FQ1c|iR!&NTmD%;#9%PiX!%miHIx5-jfv)W2eR zzE|(X@_s^HiRFESx(dtt4Rtk^=YRF7e}ta*)u&^5-=J=e<^6>E94zlA)NQf6k5FHT z?fa)r*njwaiU#4q_c{9S!G6K=J|QD4^gimMhT*~IL;ZUSO8(z52-#?|`vaXQxLx5+rm_!T_mh_8Pg?q>4uaIEnu`*{98=F2z4 zzcZhE1^3S1&vp(rhZbIiWqb9tSn5|_ho!yh8?dxjJrGNK)kCnIFT=6_R94Sq{G~s4 z@k5#ao3ZqFh4XPN{j2#=#!tp4+vU^3!-M@@;5^dQFXK54mj?eeFa_xE$8gjFfB*6p zZi=Or@--pYv-oLfj&--VS z_rOu7`0e}Pg^cGZ!PfKl*618G|Lgw>8S>%pwc=cp zzu~O;dR%JSvjLY=zxMwxxbqXiPCJ!$l^)2KUBtM#%l!Jvef{-+m#EHQt1~ z8Sll7jnAs&dBoHok1LGt#m9}G#))S8%{bGz0uM88`8W43#yxSG@qKuy@nXEzc#D*8 z==)04B91j4gu59h z<3!^TSmu+~mx|Mj$KXukv3RcWLwKoiCSGei4d-EfzI@$T_qQH@L$1F+@}slnW%zIM zQ~81PXOqJrYkn4%`Kmq#H)TG`HATwzan?K$UrVm*>jY=bCt;b->gib4SM_Wx>#uq~ zmi1q~2+Mk{eh$leu3mvF9PdUT4?-iV5 z{07c5UXLq`H{i%K{q`T=V%nqM$Cl&$Sg*Ius_F)g7+-@|VZEQZ2d~5W`!x&kX3Re? z37$`zaGBX(0dC&R@Bb4VWxNB&8h?Z1j7xBD<6rOq<8nOAct0L(ddH002n z;qO`D<)-}YIH|dB?_Kyf^F^;0**MSmJsf$KFQ1RgpY-Fo4`&*;IL3N}_5Dl_9Ql+l zpN8j>2Y-Kn_30U0Xtw_d$5LM3$Nq_v&Gr%hGQOsKFTAv+Z(l#$e4&3opN=E3&c7G% zXzJ7VJD=cPrvAftKr3J0zj&D0zWs65N8^EbM;l*$2(B<5j@O#E_dVTzszI zej`q2zG-{QaF%hC6P#bhU2&@MU0BZl(1+h=liYY5PRIK9@1Aqk@+a6)r z{4Tkk5C1xAUgur!XUyWpS9{_b$r{BC@JT-S>Q&YC}iW&Wy{;pWT_ z^-A2)_!XRHybjC!)$(s+nV;(SvCL2PW-Rkh{V|sFLH!w)`LF&8%lub=hh=`Nf5I}q z)qAkaPxU_hv~eYt`KtL5T!!_1dE4rcHIKn^KBzllIUm%WajbDy+|4*1%Y4`JeXyJl z>O^es9|z$ya(%x%$yv)!$4`*!`{XyAHP6LzzNp{Ba=xhZ@mE;a^L@^mSK<=#OZkD^ z|3orV#hSOpa{j1ea1_?({lU(f55;nRsc*+}eyZ=na(=4s#d1AVkHf2sCt$h0Xg&$c z^+i1$%k@`18_V@fJs->UOuY!p^-TR7mg}v01(xfvdNr2ox%zc1*K_rHY=1v(BbMv6 z=9{p+AKHrjr?PqwPu_Ap*7sFQuw38depBv$%CKB7)gRUg4_@!o4fuUCx!$QC=J(Cy z{-BfF{v#~+1L{V+Ka~3c^&l+QXLTO$59NBS^_|)%Jb3+855RJLRxiPFeO2$la=)bY zUCjG8xt~%$DDUIgzn1U8`xaSmo6=tS{kZkq@5%jHu516lSgyzFSI^-0>$ra9y7!+g z&LpS)QdfQimh~+7{6Kxnv8-QO|1Vh1Uv+dd-lrOm!g4*E!flxJ|B&Y4!SyhB{iVKV zv8*rZPtADB{pDVqbH2Ym{e=_Fe5k?)OdhC1`RDxeMF+eb2iwQ_cnfaY-q$w*?^){a zKW5`dlP|!X$@O}ahp)qWJ^39+W3B(puzG<6vwbW4wyFO*oMiGFaRu$u_dOZ7#I$!M z9&5_Kh8t6#jJK>W-{1)2I;YeN95>s?;-zN$&UhB(b^W>>FTnb~>T#Tb^?2UKWoG*i zaS`=5ar^%R=b8OAugiLNf$!hecmVb3^)mr?GWkG!D|u^IUnY(>`3(FSx!xb<-~lGz zh+iPr`|UDp=f@v7-IU*tGtK-tf^$q>jf;%y*Q*yuS?vEl$z}L}$-ClV&-nYjR2&iG zk3UUpwtpITGx_s4$@pa)NqyS?JMb!#7vp^6pK;WMet&y$D%-(8EuL^&YN*_@&V2lG^`ic z!SQMT4#KgtuYt=a;m%m|H8|VkU*W|jKZ))A$0?0yFY`;^Uta7?^?bqtm*Kz3_4#6$ zv*veT8GrRC9EbLpU%dj$c&k@q89(*wSmvjCJ(lrTZ^SbH)thh@ z?#B;gJoY+kegI4Vs{g^I_y$-0ywgI~`~ocfuf7;d|En*@y|M0ZgtO+USjI;^2Fv)U z$6}d(>W8q*H+3eK`K6wQW&WvWVVSS$C-8FPg;=gPnlHh!9;%mPSufQuV_DzTYq6~V z>bJ10-|7um)_e7bSk`-W0ha5J`V%bIEAjBJ4l> zeRJ+Fl8)0qz@Z-cwBf4v^}!)qz8-|wX3SaRL}3plcuZ~tmMz<3=lHSOJvTbSdk z7fyRk-U%PT`o8!!+=%jezcEwFoBE%?*=GBVcsbVcWq69on>6A11MBg0#kRk$#hrWm z_esw=hsLx{U^z}P`3Yyu!AH;Fj z`T8f}(Z(}y?(_bBWgR|b@^|q7avi^)v2EXPcyu3M|2`bS{-Ze{S#MjML477a2RBdf z<)iR%E>hIfM?W}nZ98KQA9q+x) znvcUW9_k6$Ue71t6mq>kU+t{rU&r^6>;3Du&YJ&#A1A+vAISLCZyvJdr(>Bf>SnkI z>-&T5&YJhaC&=}F`hI84)3MA~^}|@^k9rE0@mJ5pgN^56nGc#jiI*BL#%qnA$1>hp zeifGSQ@@I3eAPL)!uTC5^Fi}GEb~eI5ti{+7h;*8>d&#vPxUS=>#KS#4dCE;V^mEbFW0EwHSw>PRf>v$`#o z^+9|K_+YeY z`u)xxoM6f~ZBZ}q46ZNx<9xarkH&hv8il7}y}m5K`APnIa=@9*gEbt+7385$oxm|% zNPp`39Nm)pNvzMGH{rsYefhz-WQcb%9x&8M-()a3X+ za1OOEEU*QSB-i!iPiM^!;(6ryexh|m$eOpqay;q_aRc-3K`+5MQNNDu`LZ7SPi1uh@2_P37VtwkKVn;k2aiwZ|NS^PzV7{2hX~&9QU8BAmj3C^ z_Huq~H1*5*QH-agaQ?~p$cRUs9df7*{5~39Zra-sucf@^SK{)Q{CM4gi?Pn%xwz1j zUx+un?C*Cr;Wb#x@5SY&{NFg0yrs0C7PfB1`wCM&0XMkAw`TyJYwCXlXPWXa;}}!^ z4cye^-{B~%?{n&&Q!j8O*7e~M95Cf?#XWHo*S;BeuBm?>E+g0bgAI6>+5T6&)|B6e z8?5&I*&>qr4O6}cw&T$UmzwQwz!f-+_Q-fHa@O%$g3DL>{@#j{@AUom2~NdR-1f~| zhpgM5jpJ7N?R(=g%E!9$E1k9c8r*cGum5#i%zV=O$!~EA?a}uib=t6AlV48-GTt5V zT$A5|8>jmEZo}!uDfoc#D4b{J?*lmEF2DT*JeK3p{lAF2nfz6pWc(IRGkyEF;NERc<* zKh;m;KJ=$vukxKW--cy8)J1qS*6*|aan}4emhn-CMe+R))_?DEv9sovel2p={7WqJS6z$~@CE!p>O1AU zkTq|JWqzoe;0&zqAGa* zo~q-qtf%TeSk_NakeXU-d&+)@OAl zmi1OW4a<70o`vo8`U&hmmDM?1Z)H7}>xEpek6~F~)eB8|x&E%l8F%~heFKg%``e6{ zntVInV7wELe#NiH$8m$vzP`HcC{KO5zIDW%OnxQKS>y9NaI(qo!C7pt*XO73a+5!Y z^Nd&G#?+_JkDudGlYfI7+~eE#ljNp-4WntF$<@c`PZzi+U|IWz~t0{ieJ^7^hlXPqCi=I3DP zPxX0tA#Uf&-{7qIKrG{@9)k0+p5IfQHGd3Cf2!x+d&paMt`%Eb~p>1koi_YQS195zs-;d>Z zg5MueUk=d^?dmIxHy7b-fv1i%{dt3$8cwp?{?Pw zC)}IkkzSJd*6>2sBg&_^=eK*Dwfy}!=b^s;{r_x5&YJJU@e}$6qWFQdr^7`dYu*W` zkgKo6X~x}fWQNas;>6ed^U{4d8PmLAdl%y!v|sO!Kf=Sv)qmo2toJ7o9r*qS>-DP_ z&NlVkk5}RU)&sl{>-DMtml*$r`?3E{u03bRvYzVvV6VNf^l#|H-xJ1CUfmy0#B#*a z{}Y`xpNyqG^$aY>tDb|)jThhm?bG}j+|76yw%4DPSo&AXzk;QI)$6eIr}}Ly{i%K* zXU<9d&ztc>XTUdTV40!(0HgDVd;N$Q*6)o7TACI|K>Tr zq<@0*f%EO^NPeG(?e%=lYr~yA*5B9Zcy4%be(L>Iq^VEN$FBH5rk|hJ;=)PZy>SKg z>HNDNmzn&3IBv2ppMe{!_4DgR9D(a|5HcT%u+$g&gavluRP+4u4X#Uho!^0uA#3?l zvDB|_jHQ0{nb`JU1oofG>ea3J{V&>|B0@2UMCnY84n$=JX2oA zs|-iZ^8NJ(jx*km3ycrq%-Ozt6|OQqfwLa>dDx|_PjkHM;}YZ3#dCe$3?DK+8>h_k z`MJ2l_bsQS-eo#cPeb;M8oNcgMpPc=r-N>D>>{GVYI;8sChM8{dXYpYq$^ zfzuXx-;Dz+yzi6p?|AkY`*f`Ld#BwH9volYfA>Vp_~p6tZNg35PclAv zY#)4oj%EB3U4C}|n(ey}+x{!4<;Vdw^K@+c<6~_5qt(Eg{c#_*$G;id{%BBhUV`HaynhjI^)AN)jQ8U_ z<3l)Mn=gM12R`-=T*i8Ad@62G=<~)n-}p?tVY|;G#GiP#!DYtLxXSni)mKo!{?g{B*tRnnM4W_3jZYmKsw z(^ELgcrjjUybPxv_T^v1rN*mq+CM&Di=&TtzljTs-w{{&JP(%`e}of``n(YDGX5OT zJ?8UWxWT{PyYWKfQk;0)=fC0JC%h}fC%ym1V~wkDmhnkkW?c7j*0*ZEeIuL{d^+F+ zVi9O6d3||WkWZaJ3!Kx;I})!s%eyT;eztdvxV3jjyz~u!|KAzg^{*@TpUUd#%m*27 zUH|rD8E>7x*WJVY0oL_nDVFip_2wX!@z(O!kKy0XFy2~z1(xw%&Q9fisR{?j+pRYP z?!}C6gv;N+GTv#->-V zMaCzO?d5*27nbpx;+~&ZV%xqW*!JH|={5awEuX};KL$Qnvp-g0+aE`;J^mXWs@ea` zu$>Qwu$>P#OsF{@Uc`1j9L07%49KWieswLM#CH3eC)V^@Z0kGa;hMe`+xhiYEjN0k zW*%?O2U-6{o@yndIsm? zcr5MF_hFAd8XjzKoXcM{?UDZa1V>-wkM|4lTSEdFQl9r0$M90)^E-1qIsScZf7}i0 z`<02f?CONj_nFkN*_rBsHEzQPOdftk$eK69$H~p;ul~_l>-!Ziq`dzAUig))|7QEE@LIM{aobOI*6nBFL{mNoH}3AsS2=6>6FAS5 zkLg1DC_mQKKh{~xKZp;#>HBjzu1o(nq<|dnr}%WNzaQ`qE;HrNi{pKuDW8Z-*k5ox zq=wg=b$>ay!8N|W-@$P>o&wT;jjsw>%b$re$Op)LB_HFg`B=QloDUD+v7L#U?+2kJI0r9>Mxzy7KL++&SL&e=6>6d_OKS?RyqaG5JcILazPw zInFkDG2USOi{zBo-lT7|C zE+N#64V zU|G-A58yQ82XUtHBe-O0;(z6*;x*>~BYOO>*AAKb+K zoZPSF^M$PVmB~DRaK9A1pTLz^&i7>ZyfSPm_k*0@>esQH-|CZC&Tn=9X*}O>e(U#x zvrYTte(_CwAiwUfz7a4zolW*|(7r1Gn_b!}cyjy&u&r5Nk z@o%{EO+K%{`Nn_ajQ&2a!iS7c;wb}sUbiRrKLfoR;ZB3Rn~Dc}x4^@UBk@?{ws?ne z49-pR+jqqAH+y%+5hK03;;|2V$K%*Xz59sGd`rZ3z74|uQ&~OnQoiqHJoWv-uUN)& zuA6UHUB>%6yuo=smhsf*^*va|Q_Ej{InN`Er$-!TUw5^=D%lPi@aHSjJP!cfOL}=V3gx{7fw4S>@_4#=-G)?di}3 zGd{5{&&4vHdOlto$NL1F;_|In##7%P+;A0tpPBL0{bzQiJmaPBPrt`9KKlM3@@mZZ zCCL3W=Wiyq?fU}T{yV>0O=s5fSJ?K)`Q2;w#{_KqV>`CTA9+p9{=W~~`LG4s`Ed5N zHRr)T$-=k}~QzaFaP&uTf@oDZ_TO~L6? z{rNNlXB$6`Bd7U%KHg=#5D%E{^Jj61@$-0Lmd{t>&NIAU5zq8qhZBw8#v6>^$Gso( z&qX(ar3-S-~!`Q zdePsDeBKbxUFF>bFaOZ{EL?8Zw{x&v-_FDSQ(3+3-0iX6xDm*xzdVbEtGM>6V zlwcW8T~97MkNL{@Y57@L##77xh-EyNyY--RTh=QXPq&`T5i?#9E-%M2o@vfkwd4B> zto6^qGM-xh4_L-i+jB`Y=Qrc2<)>m9Pc8oymhr4|^`Cz}>yeD7Yfpxl@rreMo%Xz+ z!@9oB#WJ2LEMKC8NVdAzU{=e zebE=y?7xR=d1o!hbg0=M4`bUOMcDR7o7kGiKMvde{|L+Zt;Z8_an1Q~KeqFs0NeS{ zs$L6 zs$746ya~T#ycL%ke~J$n@5BM>3w^=@-{RAZf55$sf5p;XE&m5jpO*Na|H9H<%@1Qa z9`(Oi+OMv29qZF%zkPjNWS-wn$B$B8e}6L0S+~Ci&nIuf52U~Ean}3+{JhDRIBUKf zzfP`ykM&b$&3EEWX8*^XH4p2<{U~{3ejxk5*je+-aS6G;uNmR2c`DvRuJ7aKJ8QlO zA0XHF8TrndZ^OsPb-q+OYkmaRf5&g%wr|Lq$KW%_b^F22nh(Wo$o2TLoHc(OUqr6s z^R~0*@8he#{ELp{7k&mt&; zR%gvW#nI&2|Nl5^ejHz7@(XSVS@Vl=S8|=7$J!-BKb?|T^Zu!X_Yrcv*yZjYo}R);==sj~pT$_#Cc6zN-EV?mx`-{jgkL*0}N;uv`z~T=`>I z)^~M7(_Xp0U5eM5>(iAud#k@*U5)MW_AuMazlT}M_j6Ld(Cxq5Oum1kKE40xYs$<1 z9>B@leEsQot?A!Mc%jK>;5EkcaGvoZyu)}IE;D`!+xlO{RVH7D^UeM@;P{Vy`||Ms z<3gNjyaQ(#7vs6crP$WL2bY?BAKqp5e;7v=`u(58F~;?8qYSi%dQS4e~U*_ zzyACEutBUBCU1=Avi&)3`!2Z9MM>pPn_C`*o9_iwCp4_UH9D#pFr2r|HkhIMd{_@owtZ@yx}G zP5vSNg6%uI_Wgl#O@0u!GWEAfVtqDw3_fc5YcQ@b`EYy(?brUCg&TbB`{zk~3VE#C z{|7kQY8!qOhix8l=j zkNgIs%%8uUH9w4{z3P9l^slh4(9TXioi>w&r-mi1oUAItivz8TB)LVX*S^-O&Smi0k> zHy>&Umh)dd8O!;so`Ge(SI@yR|J4ida`S!mGg!`V&6nXKtnXI} zoi+a)e@U*--$$J_uf`?h!TWLM$3?e>ta&Fa>xcSEEbE238)jSwKh&pTS)bHrU|CPpEwQX0>eg7+4|O|i?>8^R{!>}~^<&||_4g1z zl;@}8vv{9P`-1Bo&s*Qk;rkFAyguS{=7tCRH~74YFERDW{oz1dRqEH{!o983hzR&ulO4nUB+c_4`|h=NdnY2hd-7 zJ==oUkjwQ@?l+qb3pv!LI)Srr0eOnMAAQhS^G9&>9)CajowMdY;RG{2d+>m1iJ_Q1 z?!z~jyi#)GBiQ!W3G6?W)o(F=a=cOeP{#9`*}M;?{<>IxpSa%R{Ju2x@wzzDpKAKU$RFu6Q0Txu-k2iGb;)Z|kBc4H|&wO0AZOfKc;8B6(f zIG6q|lH+B(_Bum8bpn6kDZjb*@3`}bkTt&wH~!tvk85zkW`DgOjgyU^#8rRs`wVob z>~A|BZSsS7v2p9$c^)+Gi!+SJ;fiv<|A+8sGv1SNw?BOT7*5#hosF|iz8J4D^?!tI zeIJX>_C>h(Bi0M%v#du)@dmSfyA;-w3ctS#@c`pXaJumoxH0{s{d+ZTjv5s+MzPGF;3q7w2?yts^Hyxvi%+rt zR8|k?dLrjvsjR20H#wDX`WJUQ>d&VwI1$TUq`&^eu_kYM7wZ%C>GqL0$>e?U7_9Hl$KzD2_q)sR1gzgD z7UIaO`u+F&>upAbto66U*=GBj@D!})|3o~D?e+KDcRK6#-{2_vH}nY${3P2`Ui07a zT;soR+A;tBqSf7e-(vE%c&+h8cp&BV`-Yowp2>&fD%z{R-#!bMoA$5AC8qrQxWae~ zj-!5k9@vk2;^6%SwVpki`&F#{(Hl4K>W?oGFJ*uFK4k)qGWirditTlLUc;SCo{Kk_ z_Wpzmv9_ntJv^_N`mexiO!*Z2qbWZJPcii`#7)@0wr>+|Y>sa)K5pteYYg?9?c3m| z$+i9c@CK6)!iC1S;rGn`X5wvF=i{6BGu)5~BJ;llM_ldua}SO&-j9nZul;}az07x$ zx5dNAwZCq}=_bDgFEzd$&!xPcKab-~Q~%reS**ufiW_wE?fU~?N3Q+ZJdOEa^49nq zlPBOflMlq@;PvJu2XK}Id3;0*#mvAKWEA-)g zDVFt6{U(<6Q~fTM^;7);w!iPb1>4_u-;QPd)bd|oSufRJV_8qt-(y)n)jwld57ob8 zSufRpVmUw52eGUN>Z4fBS9LX(^Icu<{?PfZJ`KzHu08|H`K@k=Wqnh(#Y-THZ}sh1&R6wa zSk_1Ny;!af>Ty`kPxS;W=dXGamh)9T9n1Nmo{i;vQqRY-KB*UBS)bI;VOgKlE3m9T z>eX1zU-j!)&L{PHZ0{#FV*laqZ#=>GshppM{7~-q9+}Vk3eL|`_xtMyv79gZzM^wB z-xuTH`Oow4gILZN_5BO@eO2y9^!w=HPx9|2DbMX`@Ok-pEa#_|{|U?e#TvK&8=vC) zT-FbLAMyOc@Zk9!=eGX|%lWF_WR6Gfhsy9`){oGqPT&t5f6}j4%^%=-0XLNTSYfWk zL$O}Z$KXz;{34uc%ID(-1AYBladYEOaBt%;aJum>Tt$7W-2OX^<@~Jn&cZpS{Ns46 zY0ulZ=^(%V_wlZO{q%#NStf7pNI1(A4@9b zE1ZMH@!z=I)L(@o2K)A%#KUg(t~;LdA=$eT9?kwjpRhnve2;MpyvjHdOZ&8ZTP(+` zj=|C&>W+A~ac3NH+~-|!jBz}UGwy@!?~f&7`}<>qa02D^_md_$>;9+Xq2x{Yfy}oz zoHftIqfP#kv*vs71akfTo2LH@S@RZnw%LCVXU+TKCFFX4Fy2}74E!>ALw+FbTj{L% zD|j8bo*%oMHQ$ZjBiH+bdg&o+ei|+y*ZZ3*oi*=-ZdV);#cFy+FMazJEJ7YknziNv_{-4s+K0PJBMO{{GlJXU(6&SCeb| zK6KW+0QV)={{72Y^TT)$xsFfNLm_M49^YoRALy+45IoA{)0{P*g~yS%zy^< zh-Z;&`^%g)--{QT{HzHfYkm%1POkH}kF(~9_$_kn-wDo|Pr~`8{x!~;zk!R$_5AwI zS@WOp_vHHhZljElHE)XdlWYH9?W}nZeAMJ=&YF+Mby=TvelK&@d?h}EThaj#e`H|)sjP0!{fAs1^zSP)<9#nm?&%k^FB&%ts%j(2$#mg~L#K3)9Ne1AYL=a1Z9&BAj3px%My{z2=D zc!qz!!~M%xS3U*H^-%A3R$#fF>EBO%)byv^|E$Eh=KA^yjt?aN_y6&Hn`uKVvCBzE=4RlS}zWjivl*yu%#t zTAWcQ`M>ui-{R3YIG!AD*dyG(8()lf4E6UTm*Jb~FS#F<^>7$oJi_O9;NB_Tqwrel zYv9T+z`3UWJREh0FaHsi`a_?vKp}2Tc_|_LJLs(WQ7r9OS7SLob-m2c@u*M3bIH%; z2U6da&YE|_(q45>oMF!Q1T5{>{3dMYM-uj*%IaHk587AA7ZT!Uu(T(_`GHmZz5@H#_2ykH?J1&CDL>fMFUR`;ZhFwSCmoj@@}7t@ z{_%bkryTK~jt3m`o`r|~>pc%gop!xDq&k5ou|3|!*ncXk6PGi;ssDgGo|mw+XQ?~> z6Ik}w*g0hd{~nR{mAm7+`X&Cp7yE0>4Z0lf^QL||-uG~93*Vkicn9-e*ZV*4+Lk`w zkFziIK7^w$@;-*wT5q7vYueujFYNA*ClT+u@%lil`~8l2 z&Y?Ed2|R^6)pPr2{rCU}23;R0lJQ|hIel8lTD}=B8tm&o8?Rw|y&m_%8;tM6<;II~ zmGKr_X#6KGHjbFi`Nr}0l>VVbJ)J}C;d+Lp{py==N|s;WlCZQ-^INgBPo08g|LRd# z_ODLE(th=LEbUikU_0KAV*jbE&N7zqT8@)W_5Jk;j=A6W=MJ1~{0&Z}dj(Z!o!m@uYABClU^##}-Pe<%OmDSUhGC$eBKL2%F$@^*A zo8+z!|HINArcZEw=VIBv-p?Gya=f~}b$K~F*xoo-{tB}{>92t}-yH8Pwc2-^DKGaw zDaNw>RGj^YYcH+()H!rabpku^DsuJLxPbWz=`|Uz>CT$Z#>dHn{X@RqS@Vrp_NU&2?eqUuEc@5|Q*6g;r)>YeKf@?Pjw6V?Cd5#FB?TVS&Lo8prViIlf8GnooDzt7l`|zWLaHDytV6 zOZ(oeRsLO*%lLj^EakteRsJWFOZh#Bdt2!dm4oF}c)#g|U<$ zSgZUHlS}#G#!`M_t@4viF6Cz!OZgSG%C9!Llz-h=%5Se#{tJ^!`LB(od}XcjM@%l| zPZ&%2vuANVF!QMmE;f$FX=eU(#K%qE1xGhX{_p$$J8*+ZetwR@IVN9(o16T3{4BY? zuiTEKP5vbwORnz&PvFibKXo?iqj3{FiSkXD6f(cN;v|#z!l}lI_%g~ja^)Yw=_a3y zSCcn%`Kx$}$#Zcxa+c5F{(i*SCNIZBP5sRtuNPQu^47Qmx&Hn{Uz}s|f%si=J)TUQ zZ}OS=0J)y;Z{p?+lmGku;S${VQ9mBP;RMR-`}?MIczRyf{le;poe^8R=(+v|8d zj5AE0g=ZN*fw!6R8}VY3Z^8GG>+j?2$7@Vpg-4R>__UkL_21+d<5bh$WE?-)AMc&` zE4J71n}_XueoD4C<)6icX1=e)xh7vL+fVWJzk~Bkz6lo?7vdu0op_h=Zd_vgD=ssx zz!k=a@gd`r__%R{c|1>>_MM3v8%N^i#_e&WaVI>$xGRn}?u}!OZ^E68lW{lWJ8^I0 zG@NMs5FTwj1!tM@d=1<2coWNd6Z(V&-oVsI;BlS@%=a0G?%lfCT_e5yDQJ;oo{ZyZU zWj#>0#BzSATVt8;>UOvU>-@jTS@R^khg`o;ne43j3@q!5dJYaSK6?JYfTA?{E4$Yko79^-6skPR4q?Go3Y`i)Fn~KZ!H3 z{yx|T&YEw*)5!IHalf6P+pJ{R_Ki62wuc=l34UuZ%CU~(yci?Ng+kEfXN znNVx{Nv6DPpT3&!$0#4=#(TQSrM^{oIeGATinF4^IW(X6`<8fz$*+1cWX-R^foX0& zvHdJ(&FA69z+sIL(} zko&;`{0-Li=`WmT+S6(g*I%=JJKW?n|2%jT4m{@TAA)~jd%b^~h9gZr2OlTb{(1*D zq&{75e#RAM|BavK`OR#97QTS;x<1F_43qc6-?6=}cj+G|t;n@~ zCD``oFF23>)$a!yKNE7Of5QT2Vwo@M2rTnO-3H72P)B2#KkAFH%olYhoPdMh$1+~G zIct6gmiel_8!yCqKl`M!=8N%5Z4f3UtNu5zNqUh4$T+!X;|i?`V1`Nt8R&9Jk_nS%pY|-Y}dyN zvHw(7Ut%olQxYy>z69SF(TkIuL)-BG_2N=9pB}@u{(0DcDyyF|mijl;D!<9(vVLwe zmh!*j3bVgIYi)nfl$Y&~8q4;ro~_xwDC|G{dmLja-wR)6`Y)l@_BWaGvcDu_+5SPC zKFhD~A2^5h$$E@ek;n4`S>LLhH9vtnpYGS=3zjh7jR)c~w$E_eXFKcmi*S}HzX=bU z?bojYEcJ&zVS(+qH;(5AvR)o^*1QT!ed-f9-hAI3_FSlan%Bp6KAevIr?R@4vGmvF zwaQ;*a_Qe|jivlBJbDh-H!79>d*3;gg&IL7!bTsqH}-+=R;@cs}N8yDbN^L_paF3ByakIpb^nfD~T%Xm62H=d29e|7u$SmsOU6Bby6*Ws)9f%MNNXU(_brsn+k6qlRr zcjDt%{~pY7XWc&Rh0uIcH^4IA)ZsYJxH(QVZiQvMw0snn@l?0RGJfh%y;>HA9)_ygJr(+byv`- zYx)1H7~eSO94zA-<$MCmc&e{|oxewl_4|z_SjIEkmG5oZE9=J{c+Crbd`ID?P5k-2 z07n_;;p`WE`Hyg?mEMJTm+|K~W0lW$;T+@Lxcnubm*TwD-oN1;#uZ}vvpdHl^R315 zkRcy_{|;xHzn{?-%khLhVSyMd$D{6uI~jMzc6_^H|Ka;eW9h%)IBtz^??@bPd=Fk_ z`~Ys+)c5Za9A&%}_crbM6pu3Ai8GA9#j}im!1>0%;vM)x4nq1Xd_~B5{LS%Ea{Ybd zYn?T}4oiF0H(+V6dLXv_H3a)lW%a$U^81n;zs~RX*71Eg`wKo_aekb@(q46Z4&S%o zwp1eL&vY!uAAJ9Tw_!QnE-oK#_9x@EJBCTEwnc{rv1kS~4$n|@tSe=!($Gx;!l19=m-|Hp8m$+M+Axjv7+kB6DO09Tp)|Ap6@yb9+T*I89B z(9yIf78jZP3Vgu$T6`n+{$IeoP5ugwV0-P~U3h@Wf5b&*`-U&E z9+gFLJ&n;E30Kdj{ca$@Tk|NjTc%kKxY73vh4a=WtuI{WfgJzX*>u z<-f#JjEnJH;~(*Z)W_?UV0#KtIelM2!t{#sYaQymyWtp?)tFX)$^=nw>qxvl@$oSA7hzc>d zv{2CoGfK~JU|Nrhz({!N-BgG(O&fI5D zDygZaDRhp|=ZKnH7rM-;i4X>J2suKC6G9k7p$H)ik}wEEVK^a58bZkF_js-Ke(m*| z{ri57Ip06N>yMfJ*w5Gd^}fB{m$la3Yb$>POaCf2!qT70yI?!N?t!DDaZlTth-Lmf z3SML4BTe+>QG8{=oABQoCo+D{gj??u&0kl-tI>5ndlXJJ`bK!E(c3)0^#!B<3EuT+ zlwUSnVDz)#^(OsXINRut!E?~1&QiWjp2Iq~bf3YJzw(!`lvjBxEdG@nVX3e3&#=^2 z`FB{#uiWavu)fNB!%{xwPO#KRxf^Wz=O8#b8u#=vEdA3Tp1-2VEyYOAN97O>j~4DJ zuPe*{ek&tAk)Olf>b3A1%GVu3X}|B_^nIiG^1z3<-wkX3ioZoqME-}M3ooQ-T0W~^ z<8?_VImnT{DoUTo*JE$>Ti{icPp@yj2rq=SJm11KhQ;5=ry~E|my-T^ZU45e2fX7( z<#z6Hcr@w5qowNuR~XKMt6=?p(pjF>z8t<0UFYlho>jjEmhvj!0ZVz6?}ep)%1dGC z59P<+P88K zuHbx%_Djd8May;(Jtmz$=y{2b{m zi~oTM_N)H`*OK1q>)@UV^lDYr!6H}EQRJz)ntmHySw zYaR4h$ZFpUz7SpK*O8u8{|kH(dNAK$b&+S)FNY<5m9K&q!zb~E#M27Tsy_`&JS(q( zCEmlMt$PKQcvO8oEb*xP4lMnvTo23mRQ?3+2kZR2_v0a}-U*ieQ|<;=zm`qcH2|Krew?RsJLTfJ`6uQBQ6 zeam-XZ+Qv4*M8A{>MeLP_1E$HE4<6_;ZL-29kJK-WE8wVtmExMI0d%z$D((l`rL;u z?He8~-BNgs`M%L(@Is@nf)^Wp4!+B9EnH`K9ozux{P3e^&F?o@>Zjb|N$z*Rdj8wT zv+9|!)L%IUOM58~fTcZ@3t(vvgZrJZ z9S>JM!S|6VZ@9l=eTJp|g8bNDB|XXSE5f=z+xI2DPe^>ma4Of=3Sb#8qdcEg%k?+n zX%pFsKI>)Je81}nSo%ZmkID7KTTS_NJlg(WiEdfyQfuPlX>`k?yLY4bd0zY*7P+6{ zT6D{zk23l?bjzZb8C`g};X3S7O@F)(4>Y_9w*B)t93A}L1Z?}~GTLAAACHl=r(^#s z_37vNXWCQRr?=*7aJTnJZc`ABgeyuk3=@M^=7YRh|3{)xOB z`$T=Wv2Xbl?Q2-lPkKM{w->r)(dQanc(LJ**h~Gxqpj--kD|Ohu9DjE{2|Yw-qH<$ z%h7eeQsG(kb75%@;T?vrf!+R5|6dQcGkgo&!SL;His5_UK87EF zGYv0;?emmY!g=WWd8h`@(k?PXdt8T~>!2$ngH~=|&&qS@lAA0=j-4ccy36 z&xdE5{FiuE{XzIDblo4n=UMfQ@J;Bte`)({$f|dM??Bh<$9bMr?+-tK-kvw4ev>?_ zJ`H{xUB~yWo>jjSUSra)^Q?Luyw0Tm&9mw)o@?ViK-c>9@vM3#{4aFvpEEtHUJCC- z*Y^E~XVn+LZM#SF+4G)Ne;MwIuJE&1D}Ad z{d2iz)vtn!O!^g`Reu^j)#zV%R(&fx9({k_kpA0mO~|UJz~`ZB`G6W|7aw_6y#Zck{3pE-vg%#nXV7(g_4BOyAb1_RUZ0%mS@oIl z$LQMrcX(EP3B1MVZ+TYzJ@^N7jc@m2$f~!69rK&|&+x2z9-M?OtA@0HiD%U(!JX07 z|BaqizZI7GRCzHh^QrRvuwDNifuo~w&q~;?Pb1c{KW4p2$4J({rLe3w<2@hx8lMMY zJqXVK(C5OkUg&=8+;x23p7}U9-(dgsBwWMyKZ5-e{0l7ex$f8czRvgEjXnpK`CauE z>xm4;XK+7?^n+oU?^XXhEc1KNe(0~lGQX?7_ZvL#(fA($%Y3i;wXn?h!S!>}zXi*D zul~BciO%{q+Sh-zX+K@RtIYaWk8YV{uFuAV_0jOh*eB{!HZ`@k{4eY+i~rdlH?_C? zHTIUpe%>dM{dee-4vgaEN4VPXZ}1|+EnZ^2G~5o}Z8#b3a8TrLU)aXq0dRCQ?m0x# zk5>Cu?uMuNyax5@D*J2V>p9{<{ORYJuAo1peV5`y^n>1_e`wEv-u@?8%HJJb_W${H z{Jtct=YMlxDX;eb^RU!ExZZ^Qhi`Mf0SEUJ;KNOMwZCoqoq%px>bC0BsC^T8DE3w# z0WY9_IzNd0Zj=68bjzZbH8k~ac@FlL#ePGAz2(cWw=DK4pGE%XqFWZd;`2!V2YOG_ z-wWV$!?(dP!;9f+!}q~;=KNwQEbS24*+?vN7stAp+J zmG|MUM&AUd82%hS*zgv3q~Y!GSi?Kv%MAYt*BExSO~*q!I64~lbcF4AICvGGr_=LK z?hm~POT6{*@!sPp<}>;$_`U|?;oAhxeva`&{yLu(zr*uz@fVJVw(c=l`oEAu$are= zF7rF>r{iTPEd8b9i{ zw>$)1MSX(#Fj$qHTW!)$N4Go+u1m1rY3%Prw|p2I}POT0_`Zu9oP!P38~_o-*TpuMxbKF^d_$AfL38g$DfbMBj{ z{T`O|hDDzLANVos6ZOtpBY#h#3kUnpVAgN}i(lDMcX=h$mF53PlYT#R%PH`bp3(J* ze@OaX5li|ClfKofjDN$Tx84?&FOm1g-s+v;C5JQ}pFOuXO>em`_Lc|2myur2ZzR9D z3F%k;2R?`NiTc_Ed-q+_@>u>G=`BnCofGT}{{x>#`b2%wj;8rpz6g8El3#UWQ+vyo zV{cjPmnPVE|2|5874|9S{={{#J2<+2@RVoq!-#Xw!(Gtz{Pt_ls(%L`hOYf{z}k>i zKLpM->4$q({baZhUC;l{_pJIQ@Tur}{`{b4)tAGi=z6_&qi5AWgJ+}b`F)4iLRNhr zxEfver~N&vJ{Z2v_@Cxk^-6e&(eL!E`n~W|=z9KM=UMgl;kD>mzZUC4R=pkkKDxGV zrf1b-@Ym?UdQN|pdRBch+^I+Oe4YiKRlf}$hOYOcU-qo}>+pDVy?*kOXVrJZ=b>x+ z9{GC6sviqqj;_~t#&}l!EO;Jzd)|=i16O%g{W|z&lmFA6RbK-?jIQP1>RI(h_!V?* z-<0(st9~fF0bS$oM9-?90)K`coS#v?i#@Ae4KFmGXSf>v5qo`J)Jo54{|wxj`Ap06 zrDxT*!9CFRdfWbQgsl3(a5lQed!c95PlAV|YdoLtS@lcc(Z>ISo>gBCpN+2VvC*^Y zpTXxD{~g{8S@nHjnXi?*!#5fG!Jbtg4lhOz_QSMqrDxSIfMxwqu7Xz^z5=c{JP+Pt z_y%~F;e~K2>!13&1MXvZ30!9QL0HyHwO;pk}G^CE2bJC}2QBm0B- z7|DL-IIaiC{Jp^Q3$W}5syx?nek1#h-k!U0zed)Ro_@d6`a{m2sGpuc427lqdcH9i zmij8MgJpe5@#))tgnyHMBrNT#_ZR;GOZy#7{&Kyc4wm+cd0uPktNSIp-fTvCR|9OXMNgC+Z7+itI)nO$XXrX#-RD{LrLdGw`7v0^r@RVoeQ3nb!F>$Z!Ucxc!Q0IBfjW4!(cg!6o9D}H zf^EEg4o3&~pT*u>Z<_KH{Y`u8^V+ZGe!uj`C=yBh6>Q}Gzd7H%0hauO`HB9150?D( z`eye{9fSHwJW4#A0ZV-}{_cRKzTLgP-IPz_qkUb|@^^-#qjArEuq}Uz(KWtof5y-) zi?7wDzx$(G7JZA+2ccUQeTUJ7>wk{oCy|GdK2cw~tEs)^k=R=ne^tLk_J2XQ{W}JZ zj>bJ_!M1%~;`~VbZNNzSv)!|dXUeO5&x?#_>Lcg>qOaof9nxOXf5KPt`2wl`4$oyK zKWXnOcrE>@;jdBs61fBRR^JESrPpt`YJCB` zhV)BGsQC$pM+?{WolsYn|C@|1Jmt5@K9LV3z14fdWg5@qSOkwhtm*tyWBkoRw|pVI zL&p>4e-^I8pYETxz@Njq{!4il{NA*DmiK*^_%`|ha2v{_{tDn7_|yHsbhtOV?pJPu zyC;-C)^dbo%hAHUj4nJ9()P9b2^&H^FvorvEbS8>E!~N5B^<05c$n>3^^4*8=)rt} z{(xuIm%*#hb^rL0XVn{Ei9h8pVQEk0ZLqYb^7pW`e|WTYyM&GYZ&=z-?OVSWwvTdq zSlUmyGu#jE#T&9-9Oqf}6JUuC;;V*Ch4v!Y@E3Yfd|2m^5@;2-f^*OB~e~swEsU+0+u=-K&hr0OH@xIuk zPeZpXR$E#}{u4PH`$Ta14W*)rx#ZHvGt*@EdQna$|dNQC&3HxujBVdc!gm}*L$xheIh@Hz13^sI@0UsE5C#H zIy@@Bq_5b!sXxmHe#rGEqxTdxI7A@AuzG zy!Vb+($^b*73h{{!CgBvEuV0Bv~bURU0MG3F}m>V|G>4RxB6>vcj8$;ul)nOob+}- zDI6ZmmzzReS^lq0j`U;Dg=4(0?Q8Y1Uf1*`@R}o(H!S`(?cdbD3;h;SmHN4 zc>W(O@u9p9?qj$Po^AMjcrGj@3icxnA#3`!u=Kxj2Uy}mc^_EfN4YyJzYnC`18zCXiJ*z$#mhqrG9G3B*d@^kJ1E<0g zf2yAWOS~x;!xE3m6Jd!z<*Bg5kMc}-hvD;KnXgs91h(tV-{I(J+;a_V*PAasrMS+y?hdGV0;Gkp$Fv<4v!Y@ zfX_o+xd+^v_S5Utg>ZLR=R2{B9TcUXfo}OcI0t*(uigbOHtAo7*BJf@UT#?YcReKX zpUA!b#rkUWBjD9XMc2Fk4EKa}J)8qCF#7%QKMlVF-)8uC_*TQcH?#jVdMFd>OpP@WXJb;d;2vl(*GaTyHaa8a&$Y|G;I2tKmw+%iwCm(!br0iTe8^bcwg{ zXz4zMB_5SG!}j;)zlJ5=RNoHA;BwxO`KtStkX7#iOFSy4!V-VVN5c}I%IUDwUpW_+ z{#5P94;L7o084wTJ_VNcR-OS%dn?a| zrM;Ceh8GyFh9zEAzZ#Z!R-O+_yer=f%Xm;;1j~3)z8jYDq+A2bcvF4^mUvWN0ZTk7 zKMl)xR$c>3d@8>J%lJ@U4>uTo2bS@odOd9C|4-oP;P=yEJO39l|I2)~$yu#Q^K2y@7@$&_`a0ezpEuYnUZw+-xCmxT57x#(EC-2TqkNlmEF1*6j*Xj>> zUDAoa<#38=|EJ&;#@`F@2E(txy)&cy-iEUce*_OS{4coB@HTj~VJSr)+Alm>xF6AN zd47dOk71zgW9?7e7V4V*FYrHUABh@ie>tRo!lQ+ogKk;guQ7TeUy8leuYi~1U)Rg! z@Dk!f=l_jxs^K=@(msa&1doRGd4qq23yfY3FEG3e?rK=dw;aMgG<4xjq*nh{pX&9%J^p9HI}^s&=;I@Qcc2Rg*K2}WyMQ(QCa){Y|3w3%^q->( zSDX4;J#|N@+w?sLMd^=57oKm%x7AC$uIVSit^X9o(~WSd;pgD4h9%wdf+)YQ(S^%Q zepWxGG1N7`4ERj^X*`UD3t;^`$(8V$^G3MVd_hC|qwBCJzgN+P$C~`CzW4W`uK9I> z3nq?m+=htzs~8^nI|*Ibmf!00y{`V`|ArA!`kT>(mz(~w`WIfe>8nqS(r-lRxuLA>Y4vx!uKw%c%ki)CO{<;sMN`D2qa0BmadaJ+Ybx9{Rl%rxyl>RMr;ZdeOR^R8RP!AH4zB~MQ zLi?;aBl0&GU3e`Cv^-Y7!t3g99z3R;`kQ!}J2vw74!Uq~KiZey>fL@0b@eCz$DSFb zPvnEJw|XylacN|K47}Q`=Q;2u<8J^w`>e>m5H2_EF%zCUF48Z8*BHJM-emZCcqZvJ z-dDq;#z*O2flH0v2$va7*~R|X@Gy8HtnoerJ{yiduMnPL?AOA7GyDUb4eNR=?I-;c z9xYstUz)a0qMnLw?M0XQDm=pYvwSr6meb*svm^Vy!pB7W+X8sA@pmG8G3C|qI~z_< zALAyGp^WFZ;I-(=hyBWaXL98KSa_DH{}_0c(M#a-jD9UV8`kTit6*o!`yxEh@OpUU zIZ=M^!&Sy#i{IL~OAYsdFEe~Pyv3w1hR-#+w5!Z7;nBj)L$~dfsNaBY?H9sV7=JIp zSHc=E+u_Bqw(kME+qk=7jjsZDK5XM<_TQrNOh*?kH1mtqU-Y_`U;YR4bMQtOFP7J0 zZ~0C5UQ?bRJ?m|F`1FQ?8h&R{2d2RniKI5(J7Da|101}O#A*5eiYVtkam{(YkR+fZrd+WUyp9>-+@;e zf4{@4U>i?Te)TW^E%)9N*3ato)scM~`Y6sf&kk{h{8z#IxE@f-gtc=M&uMS@m0Cxn7`rCoI%ARi6yMY4io2Rlf~>+vqQQR{eE&1GcUbm+%B@ zg=N2_d?GCSCFRku?AMgffMq|VTms8}NO>|W`yu5DSkC8^&x2+EqI@wd`xoWE!}aF( zG3UXuUs3%=SoSx{x52W%QN9b7{e^N3EbF84GFaAcl5&9lU}a>iZ8pK9^8iZH0!JAn++d|zJl@vpVwhl8VUEzXu6*F{(H1OOM1)aVsBaW zehKzt3}1--Lh{qkpWW+O(#ekJL0HNY9xdH6cr~o+_lKTU{{)uuD*p?%?fW$x9gTaw zgKhi%Xmo8qTi$)zwsn^GhttWgJ5FW2JOQ3h{R&_`e-;jp7VaNjSC;=9jD91!@FXTo zO>gyDuiNzfu8jQ4`LOg z9^LW~*p_dENiV;z@@LrkKi%l+f3ERgiEjCPcr5*=^TR!G6>RtWbte5A=$56fORkRE zH<91LK2e{2O;dZzA7F1;{PmmH)ZX&P*jpC+@y7mN=!Mir_p8Z!hb(py;rqf;|L|z( z4uH#GoxcWqR(&`u?W24$Z2RX_I64~loB`YZ*+{%g`vup}i1(bY_;Jmf!!m{AeTiwGI&|S+{Q3F7>W8%tbxq$Jo=^RC zfB6@9Q$l)SwO{FVE&_;Oh9&&=?w`fOP0r+hJN$6GZV z9gTaghV6KpZ*&r>|bgRtf|&FjkYf8IYMJ&|W(pQxuVYHDx!eC#cYzYPiYmM_8Hve?hQ zy{Ui8f5+ak*r(jl)ZX$n*jpC+)d}{NugBi9*pI!lsejA2U~gIMJ1=f(Z~1oYEsK3^ zg1zN?u(vGsEADFQ-|_?4TNe8zcSrWi(3hHcUkR@@{0v-g_yzbQ!>_^;ui??sy#Y(S zD!&Wc@$(@Z9gTZFh3)t`U`xlq|5}XX^M2*9lqZOPxb4?`J`oPCcfgak^8H0ve-Gpf z<6p*K%TBB()OWqP{%q@in%BcJwQy&^b*B7f@MhCqQ{dM3MD14zk6jY+MeroUSHN=& zUk6tkUI@=OEaj-UFYO=v^O({3r5q?5(~Mp0d<`Kf}*o z!r>9lXO?$+d#iVUxT(G67M+=&67;3Zn%Y}#hrQ)wc;sVE?;i@={4JmC?NvV&uE>sl zUs&Fct!SFw@+H_?7W*<||95oDqSqSz8g$E|uU^?SKg-u+Z&~c!lTGa{--5kmF`v7t zslDafv9}!9Kb>H2_#Ux0`~bX(_S5z0U3k4=@wfh&rv5DdF7^rfz}1m`t1fMwW${<| zY@{dh-qd*3(*jpC+@ADETN~NmiEdfs?yp69BHxR>)gOXoJ_wJN?ooI-tj}ZF=vnp8 zV2O9-uV5Ju%HP7<4F3S9UM8PrmxJfM!qVU2(bDaKB_5R9?9+7pOoF4MaZeZ6uAfKA zddU2_m<3YK?~=Fk{0{PC`xmUIC&N;n;Czbp^Lkj?U!Q-L`W??Zr2T{IF{GaYOM3?2 zuY&i$(q7s46aV|0^62^hNYmcg=$57I4X-!t56gYAw=DJx);G1cJP>=!L*XpiPw)3s zz!|XKAGr2K9rc4a&n-V2uaP`x88@uS=o&NX}> z95dV#&NqAne4ODva6iMD@BqUx_;|wuVCg^2zW_eLa1lJn@F;jNdNzJ#NL?;pdqy&huz z7XNy_^DQj?l+%9T_vPUOaU%8q-uTn`*N%@)-8dgHW9A` z`-QA}DlFwyJ{p$#D5t|gd4e}ux?Ew(qk2Es_QxPNIvV#B!nQw7GJ3pyO?}QmxAhZW zYmELkbjzae^>Nf5=b>A^2p&awb-on)N@HJxZut>-e1iRQWB(z#d2lw+LqxvWESJ)@&Q;hw$ z=$3zgci>;I5BKQKdKQcF8xAjmwS1Lu9jxtpCp;GJZOXUy^Qe65&>O0w{aPK|pZxUu zyuW&uddPmx9T4`Pa$8vXN4Wzm?XSEKEbXb>9hUZ1?g2}CDyPEhuZhZYG<*%ZK40-v z&uV`Ld^fs&f8h$xs?UR^|CDclYmNQ0o>hMdmi|REMnAlJLh z`rH<7Mf>agli^wI^I+*u<^FIgoWvUvZ<9Q$J`Mg8`Vn5g)wAk%!l$CksF(EXJgZ&@ zOFSsQ4_CwbJjE6Vg{*ozSmH}L8D0VF`9jRI>H}bjKji}0&PPRXbTsZ61>5Z$o^gQ z2I_k_38lS%_bh&7ytGOQ^H<&*mi(1F!MzQ4gR2Z51Q+y;?0dm&`$c>te4627;dA>( zdKPTkKOc^c#y!Www*61o$@NI)2Yuf3b+F_&ibS#=zYR-%J!L(F_x-VBkl(SMPlcsE zQUcL$hNV7oKTfzFmioNt?T481Xn)%FEkUzgS5M1BkV zM7?u@{h0s2?~&f>8{y3f@81(-(>vh z{@@1Bl8=n9g<_9>C?xaYOP&K6ehrrKp!^m*#eBZ-Jy_yj^^I^Utm{+TLqb-)1Kbx~ zpKp-oS@r&~j1T3(@EACQH>7;iJgZ&_%lJ^f0A2vg^&+vq*R$#m!7@ISAA{GzdjIuf z&#G^RC0>=c!rNf|Jn?=#LstD@SmISV6}I!$F>rJ=?#YDheDxvMza&1=*}BPkx`OLl z65ln&T`&%@s8bKo(wulCn-;@_0#Yq+Q3u7}gVhL49A8$KJJZ}=v7yx}!) zmEo;$h2i~w51wZZ zOZzET!xHbxSHlwT%JX4~cjcR5iFf5iu*AFa-S8OVNyfB{hc`T{{w^%>s{A1=@v8hO zEb*%R1uXHZycL#sRc?eOUX_1_CEk>Ohb7*WTOApWALYH_@kZ|i%lK2h8(d}hAXwsC z^j!=mdUQWiTt8qh6^ zKE7KteiHc$?5(~PJ{A8-7)rd$vCyRN)|>HT_#k*Z_Ikc8_H{-dif(x%T!p>e-}c@w zD&KkNmM?;rB-mFO`x^0Q_z}3?*nbF1dxZzjw}GX8%3r`ze&wz3G+6gf`yCas>M5|4 zU-?jYE*xABrM*t{tokXilwbLO;HB`;&;cfk^gk`1{2@8@Q#sVTpD&#{_&o}^0aglV2M}dDX_$s@(ftw zOL;ad@uhq*Eb*mW4NH6}UkyuqDbI%`K9p~UB|elF!4e$~T}7mkX?!#(gKSjXcV@KRXsXZ{SYH+ruO%7;I-m$Fv;DT?nz9*KRT zzB@Cr|Fh`E-yFCK*6Wq`!!<@1|2F+Q=$1v_ksJ9>0{+j++SlVAX3zqg*&WEM_m5+xv86E;l zf2ckJmi|`$Gu*}S>2O!WXTqt5OX1OmC&Oiir^DrjXTcK;UkFb&d?`G|@RhLix0df( zSo&M}Mp*h=`BpgSpWqFykHU7m+zUqs_rGB~UM~BM-`kLVBwgqg$5rWBW(xC!(*SK61ZC*4yhni=FI1Zh@t~;lcBl;oWc$5Bz=Av+8fa zQXl1a;m)w$fBN0C>aDWF@+ zA1l5$oA#NCZdvr*$4Bj#$TP7|)GJPi?9WH4+6#yuaxwmmC3UzPe)QeYWh8(_&_$KNQS38%xI%b+ zg1xZn*Lz)A{`Vdf>9?R;7Cn1#q$l$2*jxP`cpLQz+Jh3m32!ni>8lHx`m_8C_Ljwd zv$5ZU?yk`EEnS=3(7)J83njsle|WTXU0~b4`@_-ExaVNl_U~avm-as?A^j;vm+xDS zNl1UD(Ix%dg!I=MUDDr>kp32yq6n$%`a9M_3tC-mPzJzjE?j~ zejNKmeaY!f?N^M6cop`x{Lh;5NcmrcZTY*j=oFM^Rfn*@OJT{c*6+_=HR-iJHox!D zE&mML{CAu5l7EZ*rukp_eET51wqILxJv6^vrhXadmc@3#U!(fxqTBqBGyWw1fv~Or z7ehmTi~RaI#Mn#z6$$=k8D0Eckl^nUqf7b+6Vfj;x};x`kp3y7OZv?T>AyC*q~D&9 z{s*H=`W}6ow#Q*`bTsbi4cqoO*65OcOhWoIjV}3@B&45cbV;AsKR2M;{t`WVeAIup zpxgdiWc*2fcfq#2P#$NJ&JHg-kMi+k@6Z|z8UD78V*R(vH;pk}G z(+#%eInd~men>+4BBM+GCnuyIZFEV0NkaN+qf7d$64L*}=#oCMeV;tA>F+nXq<<$N{Rc*u^qUgWe`a(^-(f)0`geh&gWrdR zZT$~2x}+bPkbZ>GCI3+g=}$Gfq_0Xy|97KH`l}PtUuSel|8zq7=Z!AuYZKDHW^_rv zGa>yiMwj&ePDtPC_^5p(eHv`zIm_shJ_g(N>u+>PFKund$0T&iQ(^0WhDk5}&x5W1 z-&oHjy^i-e#$NNQGUM@nbjwnnC6l7@x)j~!|ETdN`9A^M{8zN-6!=T^&&PVk*lYgQ z|Ci{Nx575R9VWfx_akicJNS;|ApK&>E%U>##$NL)m>kvT@PT~()v(kz_3TJL8r|mq zCpbD9_hiF1|C*;me+?K({`tmU@-Iv9H`(Y?pJ@sHW*S|~Z_9TFy5)OdTizOzUi?1{ z+w#`$pA@8D?92O@v6uWlPVo1+(Z%0a3I4VjUCUc*+H?OCxIb%{Y~7M`qV`Tfx8?5z zM+f&)U|aqlh;Q-NfRVKKF~(ld|3he(+>)R-;)ylVF>B5r#eCU)~v_%FP-jc_<}?iuJ0^`E72En z!By*J*^Hc2Wy#3Z|!|VHVJdaq&=ewTm6+G`-?60_$ z`<<(M1<%(P{sETzZ%cjskGzfhOIJnhxBU*p_(f->{hbtA;1sMZt`H zzq{r9IcmRF_t1VuuZQJ%27CGTx_Alw&-dvneEHwIm+P%ti{kOx=03(>tHa{u`4OJG ztSHVk_jCQp=r`4{{uq7u1I#ZEM)r@w^8A5qTn~`;_!%Baei}a~KS+NNk2-!ohUNKo za=$|CH$FuC(q76REN$!L`FI*X_bjKqm>))Y`x71wKkq-q^A+%zbE5W~_!#rW--gBK zj}34({k6i|yT^%_Uk`Qld|*lP{{^naUduOr1?~A>p&Rep^BFkC_>j*xiT$VWY%_k^ zt>pUe!d|F6mj}HgTyg6d&-~U1ET5k*;2lYS4=mq@ljkW4U-AU^R~M*#J68?M_y6P_ z(O1GFZzKQKA%73c_cL@pJ^V@9>w=FwN zpZ_GduJLfU*thqyPqlYT<{#>Iv=7U3z|-yBf`1HI=_H?n+yTjTX%@Vv5!FNNoq4sg4@{sO%IqycVhr?7tQUu^GEcC(`U z{(KwmFms4o?fv(EslA)ia)8_6)7QXL&Pk7t=h3z8-Quz#!SDA!yJ)Z8HFxdEiMtzxJ=Tce5uCiLV!D!rRVHcU4}$8=jPz zAD@4(T?-$O;pXxIeDUAyHQEdA>FwLDYwt#rex&E2@M6PP!gb~8uG+W9DPOgB_5Ubx z%f0;-@Z9T);_aXMO?#K!C2F6k@alaA#N$10YkL>#k>#qm-XrBn-PYcvGrqdxuM6KI z{pYvs-G+S!xI!O4N!#1I-R~8}<6}6ysm*}+{Ig8-qycWTFV9Z6p+m&!1ajA3(}UkL zll+#!lfFuKOZmW|@DYvFe^h2XzrTEs{(HI`!~Q_@{eNihmX;2Wx9=ISU0G$bZzU|xZ>aPA{~avPV_<{?`5paZ)A4mRY{%C(uzWwJ(A%H*Q`7t( zhHd`IKR30X0o(F!fUW(FzYve@2e>)Dd>i1J--?3YYmxTo@GI?q`mo@BrSPe6>o&vO zBp)A-!V5MIb@hJ!X#HDzw_|VSd+%>Ny!@zPu7VDi^ef={Lx#C}9}lf|laS{f&Gq(0 za4PY$(AW2Bcog${XSfT4^lf-Y>jClg{_Nk|yY5Aqab5wp9+BxrdH;>@=&r+p->Z@Q z$N!uD9y%;Op5BD#6%2EmeExm+z|RhKWq$p91m3X*_T@?Cle@Dg4hw#NN&NlNGRaN( za%g?nrIMglh{$GI`T1DxH?nU|OuWE1q z3S4>QFxSu9kJvlOZR;^C-oCHHJMdrT^B>Y4eKhUo(>Eq1xq)}&$M-LNJ0!XEy#~bh zi&gN#8}ftSN0a(?OHOj*&x_XkA~}fxb8l`tKmB8o8tZd1~0j=$nEr8 z+d0XtUz8so51qRtxv?Fh_8JW@>^LlLzXaYid6=v5>A!`m&mI|ADSaZqjY}!RM95 zzJ0eOxBSxl_;{ZVZ@Mert@q`thv$zzJ=kB#`u(T<=pQrwKIeRV?c@3J^(&=&lB@W! zf4sicaBcE{`1#$taOJBRZj~QT`yY_xb`}qJy?uY34{t8ccd5R=<{e1+ugrG^zCXT# zS6`R!HhF#ELA2jB`7Y-5JK*)52E^x^EpR%#$k!(=h5oH39)0?A;o5P;pVwEx3(p$v zmiqFzgOgmJv!eDWfX5TRJ$?G?;JwQ7ZFYP@JE?AuJ7JC27 z;LYFlcWZom{0_%DjtS0>rM>eHNpd3%SHkn>6}eG9{arnig6H>*@#$Yal<{%Okof-k z_`|60iP8S!X?Vw9hQ#NCwA3V5gMCk5|E2I8xR2*U52t_ORi1B$>rTSIum2%OFn^4S z_(6F00nBc`KWdIla*LiG7W|%{)W4=T?YZ6XQAxq`Oeqn{Ko{;uMD#+UDdBI?(Q{e*9?Q6m^H#M=_@{~5TB^EZkX zjHh$B&`_~=v>w;N@_fJX-hS^BlY-|@jrIPA!t%T*^*8P0q~Q66I=|iy%lBQiK5i8A z`=ZExJS@*M)$}!|P#<}IpZEVAJbv>KH`ll4lF>mGpJ z(?bK6_O6GwtQs2Me|0!5$<5m~B!2$)_tTkQw&UOXduR;tioVmg$H`-ve}7^>>iKHn z{i5~wEx7*Q=sx~Z&t&|-J-xpwc$MK#VEMj@_TN$Wbl~}M8E&)ppOca7QVz^=DZakT z#wG{Pw=MAgI-Qy9o*T>Sk~9=qJlwsxW2BhtM~dp zrzE?%59P<>^>euL;e0pR`#*eYvRm_1biLq|X~}N%%fsXIQ`d@QH|LAtZoY4i`_4^v zn>t79<;vOk-!VMiA7`IWc{pF};M*hlf@HV4c6fZhbQ!z@|EXTTdrq?J(7=4@Id)NU z@Vx)ko|j#m>|)hL@%=;cCCRSrk|MXpm#536$!`5AMQ$t~NR#@{g|olPce^Qo@M?Hu zyS|RcA_V;S<;gDnmEmr-kLQ!CsSou}_5N1C+ZrRD{P$$HrD3>R;QPPb70GV?QPK60 z2jH&w)AhK^mDJ~}h(CgBj*Z&mlKP}wm+bc1+Se`h{ad{t*)4478((jpgX=c;b-lfQ&rOu)$m3ieU%z^|VozVU z*WsbRHa91`&3`-2t@ZWm3y;0Bzy5S9ydM8ce11FNs!NWG z@3)TReuX?gpup=l-%EV;WBGyXD9b}tNDPUaI5?1k2d|?5?`JeJaX^;Zj0xs zaIC7I+q_q3zZovOp`Y94x#<36*XP6jZiVl^m*5Q__m9sP$J7x28`*F8_HKkzuIlFs z{rTH>4c6T;Pc3OetGCq^ndPv`2MQT z)5&g9-T>FnpAY3f!~Lgz=>B~8YB>A70dBo-??+ZMes3NW{Qjww?;E)O-a+yCd$7y)?R^cre(oT*#p`R~ z*h|N|ZBs*kZJtkdtKJDeNgcH0BN7I*U^7( z4RB*xhx!4pGky*#;5XAkJ_)XF80;#1c^-s!em2;RVt`8ejc~!g2fKcJpjWuZdgAMw z0dBc3&lj+(AK+H_{z`j;@v>t;{CedAczxplH`?dlmV2N@md5|P~ZA~q5o>Q zFza}?vI8IaSi?B z>vKRo_IDS##Xdgf!0GoC#plCs;3YLh(R}+c45!DU0^*Q2}ri}AT>h}-4sGaPPx#SmA? z51vT>UJh4$I>fd1@jUS>_B#zj+!~+%OK{=z(_K$k=DQcSlAitO2CpBwjq-mpB=|jS z@ptC8^xu-9uFkiY+fMoJ85%r)N%V8zKHo+A)9&9f-tOl5iTAgBC*$kMp{~mFO)Yue z($7QV>tSvyzTfh~(D?b?9N4`yG=9C{b$EB-u=w?-L)!5Dom%`c>?HpRxVmVVo8sef z6}*${M?HQ0zv#&4^?x1e#`yVXO6QI)rQ0x9<=by^myT{T=liRC`8ss%=tlhy{(Smt zy7B!S^4I?RpZ$3L)TzTg5QZ}U;c@QbPS$%t?N^d-aK#YChnK|@$ex$Z%Lu+>i2tZ=XZ1iPv!oc zZ;!+K@_gXZLN~_mmv0!s_l*_|a|`@@^Cj%=8s-{!0Hn0vsV8=H>$%^k`?2(K)NlPT zx5&>o)o|GdT>sfOv~R4SzgRsg{dzF?Z`ijZzWx4eH(b-LFh1Y4xS0N!Fg(8hD!zp8 zQ;^?i-yVaic;43d;qiFcav9&(>N(s^@$EVBa=xF{b-3%S<%j34#lLU=0o8mzYh7Xd zdQ|0=JWt@ALRahck#p$}?)R4Y{7!n?VCH_6-I0GBls z#qSTLKS+DeFLIS$zYd;sJ>~KII=ltmp#C2so^Is&yVp;EYZgT5FN9NWiqby;FM_o^ zjd0~HMe+0FqnA>ig+;EX_jmjwwD*#t`1#;@@N!|F|8jWCy-|6-hF9MoU4J-y8Sw;b zeaFJV^Wc5@`Eb8?Bm2>hlK(43@%eZ@EWZb!?Xeb?=V$Bvw$_gkzi*F-U#~p@p2z*_ zRPX;TSiavg-q)w)F9G@OZ8d_xAcpD`;=h>-frCN%>Yr_pjDJ$#~^@3gI1G zPbphXysYN)96tUQ!accP#q@yQ&J{mPf12wrzr#y+vi|$>b$p(9Xfq;ye_{VM%r7q$ z#n-dD;7PSb@#~LAywK65zfAo3^47Ebqq@?697t>t<73w-`R!16r&6<(kCJ?-_*i1>VdAI}?+=i!d^@pvH5zmeyW z>GiTRVR;_dKtG?|56knf*cJu(?Z@{A<@=W1eSX_{{*643M$1$9EAyq{dtrHgL}%Jp z)|;)cJg;Pm_ZQ>)&GP(>4SxMB+}$yF9zd1vzZAZYDBtfLDUOiYtpT_slO&U8mY$ndTv<6|a>=a9 za`c(!PpvF2;s2zWl{3Ou;eU5-`HaaECYR3`S2|@fiPI+Jm1btAXJnR@mzI`g7pEUv zI&oH7x=WqSpK*UZDI zuQ<0XBR#LYG&emnyEw!9&G>I>K6&D_=`+fW&$9fS(yZd*vfT3Gy!^79{IIN<(oq>% z&G($?`(E4Bc2!w%MoxN3PI0U_J14U=FN}hW9G5n7(4dT*aq^;Q^l)CK>s#dP#f)ry zl^IWv8PoT&@?2_JT1IYAT3%D;Sn!t{X0y{Wg8XI4MCA*Z$XH`_r$jL67F};Fj z7*{c+xU^hCcxK7D<0@uMo;ta5^10uaJL(rc5tAXY>p)k`T|Elv7?@JRu{u zI4_n-)0LD24MyP@CXxHx=DI(na{7$oiRCtflI;Av%n8}qxp}$S*?C!fct+}yD;eYj z!;le}e`0aP38kgwGiPR`Ph-LucW&{NS>=>2GcRL8c6xStd3Jto9?cyl&ZEI-;>_G} z8Sz(PWAm1Xg9h;;J8X5aii^Jec`q~U30`Hz?XtyPm^PDF#nYxwOQWC5CuB{?%+1cr zk?|SJ$SKRr%Fiw-n~;-Tk{)A5X|84SeP&4<5Eo6_=#=um`8LW7+NgX=xy+QbQhIJ~ zc20I)esOwUUVdp7pGT4=4ko6kiU0TH1aW?8d3srXK7O*wbAseq!T4@Y@|<$QkHp!< zSs9GvyfAq%jGL1@uOuryy)-8)E4M7aB$gez-edk&#G9aoy0Q#>KFm~oY#nN^zYTRyM3g)d`dWtL@RXXNJRX2i-^ zB?z0WAnIZn<75(%`6VrFYVnM7%4ejdjha+Et#bO*0#NKlTj9}vIK33^mr^IKP$U9J3AxWcU&;jWd}1|cD9r!J16)Xw8{U2 zQsw7Q$S%z&&dJKn&nqpDg{8_4=Hl%CS1mIkeL_ig&V=&Z+`N*qlB{qI%MMy5Cuo_R zaGuJ}AIF*yOohA*=Qv)le#k7wtE{*kE$ZLHkAH<1W|^E|J;{+duzB-c&>uN6dp6HL z=*65cRj{(<1g)79tZX?!t#X4}3^|SG`|4BI@rtt$o8a}rp=E9 zmRdqCH|Y9Y2}D-$T-_+~Li;Bt-ak3<{^3=)Wx~!60C^R?7X~)(5j;WP^2+ye&bYjA zD4^!WQ{=@{#KO%0DmUtU+I;B(A|z*AzK@F>HWL3u6pE+jwP3JQX{KrO8~eWq;-Ed7 zSAhRw-@LL0GiWnSCF+`K%B)zHmKV%~L9jM2SrF^Z zGmS~OH_w!*xY?%7pQ*x$Jg@l)@|)j(&5xhvhflCJ<;i3s(^O2Ck=VFQKdr>ZW%;Qg zHqNiGn6YmOCJtWt2_`l!SYMe;c=cc8-~3+StgyKq#>T$6rolN<^CBi_l4hDVzpq#i zWKaa#fMDL1j?k?RFLb?NtK+*QKfYe@%Fp!q;d)N<^U8M)ubMv`f~BB&l?$!|G}E;C z?U2#@py7%^v%9zX@s-j1#^Pd!^jWY6%WHnQ^P9f|%?P%LdCjkAe)AX2@YEyN88ojK z^CifdXBzBynrYhn*kF%Cd&inTs)KEREc{DLk~Ziu_CWHQ%{G7OJ^nVo_kwZC-bqq1 zZI-3|7gKjeP?Y@eZ%`m&L0kj{qJ8CcP@w#vs`)`S`OS|=xp2m1wRHb4$S5N{$SET| z$SNZ}$SWf~$V_&5L4xMjpNlO)ilAs2=^?S*mN&!tWk}Qtg&77HqM8>AtT92tux!EE zT{9E1Qy z_#{P`VR$}}!S$Bl%`n4YO>JHcM%DHwl)a)p6HoHQ%T zz-^e1xbVB9al!f}Yq##9#)TK-aV67d%$R;&dD%Gb^l+^x zKfkOrmY1Gcnx2Hc6=_;=KV9c%WMmhYap%v$+{Z+pa&%GPsKn1oG{Q_#ko28=^3${vbHVq3H^o`7G z!5s+s8x&u*nOyk{-j^}WRmWgRhoe@mU2&Z(7_;G!4M%J^V8ihm4%cwBhJ!U6t8&W2 z1&<(YxKPW*58es<%h?_=8Vq$#i{y0}wZS-N!z=FuY1v50>mV(g6JE36%ikbvEJzz) z#+%zF;k28u;)~ND8&+^$vn)4j;8SjyYkbxv`I!?+CY0oGb$LPt_kD89@^Xty(kB%2 zhiksYOi0bO^s`pbWkD|m-P7#kL5~L=%PlAAR|FF%1UI|wvxipT4AV9(;DO{1l1&QEoR-Xmcr!0(LZB*uH zy*aHb~;nKpw~ z^iy##^jWjyeKXSR)XH|zk0|aqmFMOamt<#`mSmO2N{Y*Kiu1}Q#ENrbS+UFs`EvgW zN3t=D572Pn2HAU6+|g)RdA`wj5nl@aIEVNd+aH^TErok|5e(BmOcRahKQ;}=5AOeq zB84$Zn)rJD$N7YvN}Bi?%^#-;FP@MlJ{$gFn&2W#^I9p`k;|QT%epA6A6fwAtMq%mIE%52yEVat^1vV5*Pqw6Tu}Z2Zn5n8g0qeMB(5|F3(8 zz>i!SV_y(h{$K1ANZVxj50)5C;F~p*1p_kpLseNr;_+CPlQ$ujUY=LR-SOfwZm#E) zre|ekr1LqGJoa>@;c^q5WCZ(1-`;xFbG+zRV6c z;K6P1;IlzCRbIu6>E})^lVllrnZ>1?v6ZBkUQ8W8}djrcOiBUJu1E48V zzkVP0H?pb#R3RfEkfXI7qp_Nb$lT$7!T*b z+=PrEceuo+qyJzLN9vGNz!zr+exw^ev^%JS=5hM|3YX50%M~PvQ;3tv1s}G@AFr;iudZx694?mUeNTKtZP&|JYQtac z_FLq9N;kzsC)s=IRXSLSzRCVh>l|xyyq1LDVg>C+V z-=5{Q^+<(pa9N7st|)p0RS*V`vzqMrL$4+^NR`Okd1fA~wY{^hSf{8<0j=f~{RvUaAsaiuTU zVxJHDN2B|vhtK)--~RH$CyW5?Jl6f%jth>LZ57<(KYe-lc>QVl^sqc$O()gxX!`t< z9{KIp?pmLx`{m>H_czXVjI6c??)celZB^D_|LvcD_3MAV{_`LH$hlpPRo<=nP-Zo* zn=86p<6Cw^5nZeq%D$ybv%75E`vDD<-V@@F^2jRizk;k`I;i|ArvGR`KC-c$Q)Uf0>v2Wi>MjA9ewRY4R=4ud$g81^JOYAz3iLzWlAB);;RuSXb&Z987Q>XxZR6FtpM*Klvx1R}1Y zxQy97Q~NGlN}^oyp5RdSc^ba|Vm%oGslr*ClaQ6Hzmlb-5t!6bmjY{2{OFRknPa3IwKu`eCw>`58@Oz&yrBUrOx}2K&G{3uBz3dIlB_m;c`U}ee6aO zha1vvDQ&)kAh`R!PL_i>xck0HRHuy3o)jKfyb$j`e}BFFxJ+O0ZrH+8A+srGBF1v& z4qDGX6S}nL&HeJjCl6@6|9rnZ5-3^R+@eMJ;@Sz~;|7#q-+x*jZzjT6O<4T#5%nQl zzU_$qs%p47SK7YR%~w%e_g{#*tj3$ihw7O@-v4rS_3!-M==}PtU-Lf%Yyao<7NCl* z@%rI=3xOSw&WEDL5vE+*stS>%37sy7**ZJqQ*UB^-d9;ug`hEoex_75-~2#jS=rY` zS)p+5xV_IIhS9^Ie0)sW$M5cZ-X2Pd*#8t8Cswwf))tFY)(sR38*$AlBC9f@Q@bf^ zrj;s(e4dbY%e<|Y!TjT5Uq$s`8m*K;5p-&U%6jICdr;r*?;n+$UPp*vrxr9JUPD+6b(pBehRR`T6dzNt96h^?vyL*~oyB)J?2tKhDH&%{7;@ zmZ^K=AltPZ>O7y?Hk-y3nTY-E+W5E37&F!OghI|)1y_{6h-;eOP+49QdzE3m7>l|d z3+b)ix|Vs>uIw1pQkXc=viUGw`~H@mb>l*mctgk^!H1c2`L2|IOJz&7qLOU+=oVsJ zy=Mw(PbXP!=nc{~(Q7dIE?5~juii!*#03+1TQ_4h)oW%>U*i35tF5ey9+|f8s$yZ! zi#U)%-dG#fkbat>vaxNNQVW{S!AouRDl6N%FzI}*h=|uNkka4{OA2$&i)v}c2`K`p zU-S0XeSq$zhvQc({Ak1&qT1fN5l}Ci6j0|N6y$9lV&~tw6Na21$!r0Z03zlju6 z=`6Lj`{fh0RsCA`Ro7LBSd3NlhU^x7rll{~!WxGo)}C64*`k z5DxIJC+3`Bd=4Q_=}=wN@lo9rb<^2D*FlEhQr@-o*b|1m*2ba}=eBzIbZ3%HHsJR* zl#tNMox2DNAGQ5XI;FZWyb>S2FwBK%%LwdG>{NrarKl;Ff;en;;Qk}ZFe^H@i zf|mEbd>rmmX!S+Dq*&!Ol+ceg9p1w+HZPP1PiY7f?^WTw9$b(vsS&0Srsm;sxq z&M_YQ@MO5&?#1sriy#Sw z5HO<;F823UDuE_YWo)Gqh{Am(d;$>+qkHHkT9ry5i{Nu%q@F?-$2m+OjNsa9Z6#0! z3~rml1k!L1f6Yb;ZP*-mDPM25e?`!)jYg$XXye#c0&Td#K zZvbLB?>VIii=+0jXz>18Y7n>TrmY)^^1hmpGlawW+gh&kV&xh!Bh27W)(fD>=is^P z&l`sIvhu6n{T$U25cJlW=dx(fMhm(eT;p1eA48P9m^bJ05`S|ZMJ`4_zMxP7-QgqZ zG)};Dd`mc)hC&G(DFANJy#$7YD{N>ffgd@b0DGxFdN=QH_M?~f{=0uNg#WN?9iGg z&@!QVp{)d=!J&a78TJvdV1K%f00jH*`Z?mmbrp`jr7YutY*7b96H0(gvg60fN6rE9 zirXY7EU01>V3%)`K4uh7Ro8NH%&;|Ox*7WcU@p;Fh#}%j0yjE>>Fh61z?7nagpG*t zFm_hGFZgn2DTjK1x1vx2hjSneZz+Mn5keX}l3YQj=8c0H$U628f*g?#Ls@265dhQc z`r>N@xnm52S>`=bIZKIDZYnd72CM$KE^Uvl7ZrJfr6=I^Nme$;fkP9|Y_BIl4sQ&G z#`V;;gf~LqN?yKn&o*;14%7C}*FSg&$ydMo<5yq(iT{7i$2VVn`ts=a2fa9tS69Hu z$}#cUe*JowzF+?NgIR~ogI=9B*yeF~z!m#X%P{}p_Tx{y!HjJGqp0c8a?MzSN~{|V zhE`W|LDi=n#v|%EZmpZYPl0Qf+aIp3{`}+Dw?A0rR6G~iGGGI1y0z}I5=+i$m0i1E z<^A&TC%ysp&B0`&x*q=i^`h_MN(}Imwr%z!;k^%Q6;Sr3;3I zo&9J4kEc}=ll^?kkIT9_Dmblt9lRF8v^Q9yr?wmc>|B;^k+B6g3|(Xb5GeZE>G^K9Jy_^E5!~nTLaE`~@`d z>#wTt?J40l*tW5;fC_;%t{6i{@ED>a_;~QIh}b9L^h z4Wuvjm#_c#pV@U`tNi-O&%8qUeY5^_{qT92u3d3Dmjuga=wIum0^v58pu?@P-a=^j z5`WmUUUvRcCZ6lNsOe?mnSKz~X(wK!2nt8a#0wMX(#@O_0!nrAmO6p zB8CdZAAuogir#qucAQ)lbOBZRtjdNR4ML#ZyDjc3Gi#a$xIk-HWG(pqsRo z;t2wABUV5GEFyF&;gW#D&O8&H8~a@hv9s=6+GP3x5sYqrQyEbxtV0)K_<0gPOCctj zG6|CuM&1P&2nzdF@DU{3<2@cmg~HyYqWBqbP*W8T^g;1>N(7a~*N;L*iK-}J;%vTD z==d#xi|F>l)CD_)eT!!eA!gnR9j5LGfwOxL36=#bewc+Le$a05pcAp;hp9`r`UQK9 z6+cX!bNo0C=Mnin^TCinMMv1N-OdLCofSGvoj;3fJ(%jO_+jdt6~q+}YBDPx&;L%w z8Bbx(UVNGq%*I)V%tXT`eFX6cXVTNy@i^PTK(IBQ7IQ(?gQ1w^KEQ6W+Pz-85r9j#3;*ci?Dg>{vbpHrJjXDOC+oF|aui$VxyD~{&Ir2Zei2%c z<^Qx;5sFP@6tRf&uAYjS*eEhIkO?3lMJ1?W(fvH{SreMLdAR;^d-GqOje-mmggFfh z-ZLPWOaja|D5oC{xHt9;If7#DlC7)j<7g~FyOf|@I>Jis_SN;6aeZ|yP~5AoD~^0M zehFMF99L@!6^Rn!8M;AkLOLE=W5{28H}(?OF|X+j!764ZS=bdVmR2D z@%4hL8{Y?AGZq4(HR&EOwdPvjaN^oG65Z2ECOKeT)fN zjE=YvvfPX0J1>;UD7Auqx}KJHC7gv&&$h^BX=1VW(pD#~XA;~`Ptt{1tPpTQHx705 zjeUGDvCYIt#RtXhFQSC9m0*l|Kwk=)kZ)yE@`D5uKc_{)mLh##G_@g_CcGO@FGa$( zE;83F9wFv;xoDAKK`q?3E{+I`gsUh?tKw(QZ!(d6a8*&{y9sw+B2yCj8-Ju0ew~c$ zZ^Dg{Xtsp@y6AWW(BG$^1kV!!#OVpAVJDAReY3r*Z_-2AA9Xz0H~Z^{4}1%kZN7Oe z{wye;?3sAIeY4fkU&Wqz7W9Ai?eJdELD(}}BlW=ks&6)D`euFh`V98`@YTxbY0yDX zk--9NPlF}hp85>w-Jr(xr`Cd=21S%T4Js}FdYA-5{*FEM3Lk$Y6&=UKv>xY;7I@4gQr-%aqyDH6Pb zNPZbVC&%PP`}FCaI+0`Zy&wB-!g?p@Sc-(}d10WOP({L7VvydHNa(xZzf*2tkgB06 zcyzyA$NZP#-4lc?!wRx$LT!S$*s^9Q4n8gihSdTy@edb)fu_v?uw0;EzXX1a`jWt!go<-9uSDz#BJ_Cj68l`3;h*Uel2~L4 zirAKfGM@{y7VWOLB;+5$d!pF{uBq0=7l|$Wp(r6t4GK7aD3TLoKB1%jFbrF$`Gn@{ zp(ufUZRLcV5AdvhsTP6flgrm13O+v%BU2t6G7ji(swH$+$oQm;@W07fDVG)rO@$r` z3_{6ka%Hc{mA)od{u;0c^`_TSXfGDpi*|dV*LLCY4<8YDwEE?J@e6~!;Imp_bWOo2L!1d}RWGHNA3{UFc`BHO)W!eu0oeSrjOBTKjz zge_9IK`icU3EL^<0+gEUVl?9oXP&C z7F%gC2+Q+_Vhx2@gGn3qruMtZ6aGuJ2;!RP6g||4lp&+gekTpM|4sY7(0)%kjl(uc zFehwVN_?acA1TB~3gzG^#7Bw*d&ai?#B%^ih~}8K{cO_2p9=U>EX&@ul(Kpi2~h#t zmJ;795}aObOIdHlBa0MePuM0Y8j-MV@5B2RomNoQXG@2Ken>Db%`t+!e~ohzke$Wmtoaq#gS5hnwm%4O zfU;RST!hzQ&c-nymUyvO=cXiu0my0BHpNU8o+2Q9xA@Y|c&0R61wh1Z(?buG4nPe9 z;8H+EFgNkP8Q_Q0@b3XalmPo5WTWL^z-dk9hR7B zXxAAy5Edn3{3{^Mn6ZbZAKN_m@kdbeS}ZfTV0Jj?av1$zV z^zZy!?wc0z_}&x17z9#dE?U7uLfsUkIPbY0iEl}d=h718EWujNEx{-6XDho zG*eW4yAm4@fG+-LA=3xq&KqZ7oN=aU$Um@~CjhB`zwHu( z`V2@;Re;J4^ri+cga8l7y0BmsF!ta}cHm!;aMxg%^ExpaB=g<2 zFEARGy<&%v#$$wRB37*;0}}CDL;{x3dn+M}JHc)TUQi4eYE{{z?Jz{`qK@D(AcsO* z6G>18BJ~O}IW8jUZBGDsRn0PF#mHH{L`X4Y*{ey6(#{-AHA+#ZI&MF^ZJ(d`VJf?& z?3Xdaw`9seUbBi`Bl~)6IFoxY?79+}PrQP=)NTh}One4_?1alAaEa9fwp2vhh+9Jg zdSRbsz$}J|-Be4V>fXaA^NFpv8dOGtgX<+wai%#%;fk4TJ2ThBs*=hf^~*>dtMTD=k0N~ z-6QI50c*KitCjl_qD#0NoCI86I0K+sZWVo9j;t_yNbS9SH#SSoodOVKx<6F-o9=bI z2Pt|SxKyl73pTJ8m;3cDb-h?zK>FZ7Q-Ov0{`JM*O?AnrX8RO*eMLUo_?g|-qX^XWWk{85sMzJ^NLp_lA zCL>I|v)py!CIQUpHKHE628Ed=vjSgnvDLLcpG2@}|M zW@|=tpv@Q9!9Z{kR>MXI9jdn74!jur0LVv&Z3$FTBGe62es}P!GHI~bkR|d|E=>V8 zvE6b&J+zQx1}g(cS6dl{;9j{Ir1}E+FCSXm#9Q500w%(%3w?gF+sPDm=+SC&t8#7L zAMi|s6tuarLKFTFnr!TSdmTrOFaQaP33DAt4x3CwNDub3uxJMe-^$al7^mQRB#KnqXapETg}ndWM!3<{g1w$6Y9^1-Wv zf6;a~%p4U3P`NWI3gd`pC%*pX_V-^NQMr92AKMp;r^_JffouT4_Q3}8Fnn={7iY(r z;%$c-Vs1esu7)N+TVo!HZJl)87?n){I-yw6Ho^8AS)7YC$Go9{3{6F5M$O-aUG}o` zcvj@dp~j6%xKwEU!e)C}oTI*J+iL1j$4u-PwSGaCJX4&qYf~Yvfv%g)l2)*7M~)r* z2(;Zr-*ns&>nx~2FC0NHTgP^|09;>_sgjetk|2yNJ+k#O8y1wd^OzUSK#B|>yJA9L zib-c$uM6x4{ZM3f-5SL$6!aNa9F^7ts~H>8_l09kp_Wm_S6CGC&WdQ;&b7!!F{ClY zDY%ZHp&(>WeP2lW2ndc5TLu(x3@6KMlIlu+J560Q)j{T{&6^B82Y2pCf+ju(NcgEUg1+kq9PwV7PZ*oO%4!s zGjv!D(58y&@Y#qhjtz=Xm98&qd&&+piG87^*|#&BbPf(H1cHuwn5XiEJH%gT-Rz{X!xeWI@e*G}Sev2Ef$T4=X(& z@=(R2sg7$Ti8h-ay;jwtF7V>`xI}gyMoFTku3NZp41KRHgKtc1aWe7_@Eas(boYy- zXZ&O$i+6d)Eo03}G7FS_FLr@{O>FT3wLb|hNpS&$dr&biaeGfWb~sktK~n{36S9wBcF59*^4f9uYDKobw3I@7K7b9`kPO*dH^=zc@*VE)W|=lK zYh8)xLx6M4rdddExAbdgnw`n5ZDt0-RV=domA>LWJ(1I+tYEvL|Iw7Uq6tGR&k&Kg zrUVtMdGyD&zo0VBz_jK{v2N@(zvSlfQnrL-`pHtzpqc5jT>FmPN73!$!BCLLiK{!8 z{#n$6Qt^EG=9}9;+;XO%o#0M&$JejEwBuL)&ksNueq62|zQ6gz@7W&ChBJtYE+a9S zUz~uA+*-Impl@mcLu1=x@+MdWD8OwEFVOItT9|6A2bfCQg$!_;fizh5Ur51kYJn>m z9yzASMdcIpM>+n2XX)rIE#wv8GdLww+_{!#MKy0E|$zC>}9+h z-)#&9i7ipR^q?CeU(JEr1T+1+jG;tssL8@jBC!(DRd+Rut$DXGlvSORj(q^sr!}@8 z*5SgAealLtUjZV2wA4Kfsj0Sgc*i}Bv3{MfEM+s=M%E*Y;T`uh{#`9ucuZkYja#3TTe%XU5lL-zZ$V0VtDXfpG0 zz|UIE$;SN_?oArZp2RW)37~9t*H)8garb_|F@PwI3K-uL4E;=*RvPc{cWVI;M9lJI z4SO}urm)h%F#ayo3W=`Zp^O}J5L6%JUi{SGZw$=Qx^Sz&#x!7Z4zu)*=X8hbnrrMSDr2qH$a4cihvRIp5)Di1V2FMFr`en1FX%hb|us5gzyc ztRJQ>NMwW?yk84Arnf9YhW{IBg@fDfB?I?c_H<|NYAB>Y{Wc~WB(h7U@He#pGctee zdYRFBZuh`TM)S9{&~uNQmukUL5I4Q;rWnlY@3NDDhoJXcX`D=O zhME^t;@o%}X=W`h_uXg-#|msr91h&;mxH`?$rk>Wb-)_3G^FN+wPF<;WJ$w({*GfH z7xOw{X9To{)X^KYzT=+8mjxXH*mO94wj?YUZ@pwdf6FY5=rW1%Bv)F#aDND#FPPfj zg<6sI%oGg3Dvo(g(E3><^t;g#D6Zy)fd`HG(g&9g3!Hwp78aa93k0Q!XrL+IxHrMc z@7DsVAK1~15e)~wV8p^};2m2i)&YliEIkFDyoWKoqUr9w+?roV zKBFcXx)R4`3$_aPH!S=i>bK6#tqUK`3{~&iRxPQOiE^1xf?)GlD&qT0bPGVv4mp^T zTsgLtL;Uh?e-gTW1SQ(7^?*yV`z8UOHXj6h+6Muj_Cdg>eGu|$AB2taVWFw^p$W8b zQ~O1%vVEu)ApoH)(?iu_00Q=kY7yj*1Cj9X2%)^&Pt|FVC00)D8Dxq53V&037P@Z_ z)t;ai9kPUn23cYsszoqX4q0LkRf~nf+b`8(q3}NfJz{~v0Igv=3V8_ZTl^#+qlS0K zd5jj`f7Ph|!w2ii5l3vd)FBvq_sv7(`RpA?kxvD@hgskYk{p9xJ$!c-oE z+jkp4R}|ZA4}4c&xIsjhN_aJ%@1dsKhy}?fwlBvB^xb(mf<5lPD)d96mm`AGZYeI3 zvEAlI82zeEhSmt47G3H9^RwG+WaZde5qh`2Byh%rk7@;#Myf^-wIbwY5cE+(iLT3_~?-7`Ew*^!MvGdKH|1dKN+m%?E*cJ$n ziGDSKcg5H0nXKdJo14aAHWGL)5xcQN#5NfHs(`i(jm`u;7Z4qd&VIR=>1cHJEB@d| zj*e{~sT$NM!^E}^q)z*YAE{#nZOC0oV0hM0K-dys(1w~Nz@QBY3j?CPDG(q7f%9L; z%Jxvb{vTks!tPH@h@glJUMP0?H<&o?8I(VQzeSf(q6LK+}z0$`7TuXM?y z``mW6JSe0zkzkTt`*!{Cf#f3+oA{z8ZTB3`{4e5% z;1V9jxBI3W5Agi*TqXBk{`T-VUtNKJK)e^WP%;+XGmx9$Va-F@?Taov4Y=YDZa zyt!NAC~xh*dN`f;U)|>8c$3~ObI@V!zNxE1agx?>w}?aO+2S8D_4dn1@}^9D*8=CF zOg!!AICRA~{;59?=OOXW9b8I$iOeO<1A5QNQoAkPOxP4ouEc9wbc5@E6L!_%CbK)A zM@`25tFGY2TlT_ie7pgeZTR?bo)3TeOakhM--UNlcrot%#8%*)fFG-c*!W}^*~5$L zEhT6IFZK%r=>ij2>`?`>J4>Em(Q1#U&*O!8xAt)4)>{J91ipE^jqSGLs!AI}JU=|9 z8riM=sKeQP^?0M%e>J|Zt{Jl7B{1=Dm849(+~V3WZ|86;-yeptC@&L#?jG-}yVd)B z)vI@z(G5!YpZ|P2`ZA9jN}@n;(B^+!{i@B=JX$I|rij=bwIMd6&zIE#S(Wb$->!4f ztr_@nth{Of@v-j~MEvL&A9>>x&<$e$(IY$?+x>@ovH)$3-c2mQOOb zMf4$lrHf;t%>8<0HA7lA%8TFK1|J?f&Xb%a`~Bg*8egw^EnP@LxdaYt*1G8aByeHV zt3=o9iSi=p+Q6b&$pnf$>L7Pl$I?nz?QV%YA|daVGnnew(Hbyy{JZh9c!H4~(ck!0 zFHKd&ocO%UO}Kq}bgd5y`THK0qYB`gZ@>PtMLH!3oLIdHeOkeO1qm%=JVqv>?Gz#E zsEgm91=FxmyZ-fEb~L5!mL`fddL2)4V@A}Qz+n@1js;4^(p_$_>&%Rw;748fZr@J; z$0Od2zeF3Jd2HWH)0EQpl-lD@;^1OofZjh|xlH}=*PF-b`zuBE;a<~~lIsk#nxwOz zZXR!bSV(YbNySYuMz-I(mHX%2Dn(h!9vSDEa3bP|Yk~x3VtB7Ue*EDRp6~c&;2#3y zk9n&DsBi4(AG2c!gs$m48j5!* z#65}^g0Mit>*rb?@CjE-vuzk9#Z#bVSBc#VmbuPq*T3$J*F9AveE(%#v#TrrI8MlK zc=~C$P3GYh*lP<8Zp$##YZLt2Fu_?L?8JFal9hBkU;XJDvdqS%c{Shdv1teu13ecU zgRhBXKJfuuKRuSWUp`g6Z^D~TpFeuN=FQ3(_36>n)8m)#{2`g3{qsxr)iHzZ-1bB= z5ZMR@JPHsw(4G2|h8AkkR%8ohanb~lTnqT>2H#BxPA5InsYB`3gk~qMiJOO;zbz+? z%;;)wcs*c1yOTNH1>N~MiEK0GW+h+f7^bbx6STGT9Vq%a zfd&MlGl%olDV&qdPop<9kVDFUL3ExFL<48ZfED z_fsK34Yt_vaM%ZH6WsqkAi;7aJ|)4oOsJoIB1ogpQ=+Vi{{YCest91JrvP3k@6=PI zC>v>eaavzp$$9bSJ*mf*dtAe1|274Iqr{la$d`&dIt7@rR{IyNZY<_)Y=oUY0)^Vn zpw5?gYlC3x8_}%2KVF>zOwoE5L%nJC(y-D1>2(#5cI40?N?oLN3QuK?U#8>Zgr^$` z)B%G`1oZ=mt_jGP0IPNia771z(0{&nx4BFDE&Ts8O-uNbftXm(6eC_#gS zcT^~pFhlM{K)TLw`c7jk8z#*5lJ@4^fCTRwMgS)Dsz9RS}cL86-eL`DxY9u z36Uq}dqz{PK7+1-b8*6s+Y~TkBSUMqId_sA_)k%8lCNzC@|7d;PoD_N2 zjTn0B%s^j{IWTv5NCJN)S|*nG5*QPrLTs%GtPwsJU28%I;<-tJ{fx6Gy07sXN)FxF zS}iupGJ0#9dNf8HRVSE6La@^@m}QqTkFNduuZEtB8Th3uZU7;o%DhBvYrEaKHa+Bn z{>^g>{kxg2O@f1CB5oq%_Xf>K$nFqAzXja!q+AioO&{-Wjn#I5Ym;-N0(T1iNzelX zJdP&?n^5rP;rh$%4IYFPZi%%lf!hM54XFK~_|FBk(R5FY z8wJXN4Pn4l{>Jf&HXP;lEuIn$_{y0drQ#2M0A3EI;&*6{Ehd)iExrBLulS9vvj#rP zXyTbnzHxm@#cxc5dD?pDl0vTZ7>$&7+fBjm{iZ-S-R#ws-xL4*(`R7yitMZ5;kyyPL^^wT6gTKZTyFBY)A@Lwg40Q!V(m@Pq+2+C^kN;u zh<15<+Sn5ImIuDX9TPU&@nefW&JBhkzTN~f6@Wzh)VdRWHk@iD>|TF#0L?&!X#iy= zh<+yZL;yicT6w=-v`<}EPkZ*yK__q*v>b6fjEg*kGW7Vy55T@{NF50b8r?Vg!SfwE ztBsE9nB}%8W|AJ%hRbOQ(tN)fo!XIFZE9-!maxDm)cs(fR01pV*dLBAN+l4U$M&mK z!Z8_?;MP_GV@PqHLd6-qc~HehzZ(Kctmg^z{L2xnj0|a(Kd$dpO zm0>T%k?iH2Zh3~QxgswYAn@Q+1iH0pbhsT#REwOTQ3 zflQhY3d$&Vk-k!VsJwossMvykA6D0r1H zpp;IAP30h1?Xx@jIs5Vx%TAnVfeCjdJ4RDaBsV!?C3$dAOp~uUuUtMDNZCq84^m_R z%}MIsfVw8zar^XMdNi+%H;>o%Zppv8`j_SL!_DJ^n}8y3r~~kvfb%yb5GOO;9HcwW zPCs0XsGVbNQ8&n3Dg0zpPf%(*Fj9hWitUn4`FIK`oCuAu6f_gZZHi50L8-_moPOqLbwVvqozGmK@h#3f zDI^2TH2Dkh(STIRjU2$Z5bY51lNvTfN=m~mn1nrPI2M3e3$n;aa5{ofiB=B|A&5vD z)$uJ}xFM68)|65SRCff1*cDT-Y|}y{UHSzXYNj{w0u~6DhcP5j^JWR5E$g9LjX$G` z&8R~8gfohCzK6zw!;X!1+s5`aVfD8An-xn~J_qd4fD?j7iv)EGHtNGL6KrJQCOTu0 z>qGa{{r$MJ{TuFu>w1iX|KPt;wiwW{BiV@ns~vzdZvxOE(z@;Kr%k`=sr1k8Zk(iN zz(ZlQ{K{)#K))M$pu7iCntt2aTNG14f@_?cSJEqm%#$wx>vp$x!Y$h`sBugnA?V1j z*panL(Rm(SFP>|d**TV*S>_u%rUG1_4D$xi7h3^_`{-BWyS1SJI&^FIRHi)HVh6{# zOHOie(&ac*nDJMDjJn_^KA-$*oABVgT{!jarDO(jvk1 zUf_rnyHQAHc<4=nh~d}1I8H;#w?hjF{Q{0NdJJZ71`9`-y)N#eeLvS1d+4$t-qkhU zYUYtm2G4wwAa1x(wvV5x;g3wjEs00p!?=BXxepVbeI1zTech8(Xxw;-hg-zLb2|t0CWPx3Meu7U+d80dHpA7~#F3>2E_h2k=(t-1B_f|% zN9reD0v8uLx+9n8xv`x03t5YRK`zKNt$9W^wr)HX&U_ZITR(Tcy}H`)IKCBh(jSNW zhonmw!41tyxW!0_4Pg3mQ7e$NFL&a(`|;J)2GI1N6D+wCO%7-ZHtd!(q!`#GrWQB? zyzInrK@Qzmeq5$6<{3*QoPRw4My07vvW#p(XeZ0ES@97M%b~6JREBt$<+w~3b4DH- z(k56qOp%4W=LYj;)A6(??=l^id*XQt0pqqP+7{(Nm=jlx{9_}{MISUcL~+gp0JH=v zegM%k&jTx;aM0>xL%-k!#RbhtfojZ2!9H-Hv=6^2lH*Fh+)zY1cKt%|wpUaOS5g0^ zTFjQj-?%yZhibuG;lEVN5$Y~>qCziBm1uRxALXIL7UDrc(`(s>dV}|)|I(NYa@_tF zFH(eI$S`9FA6A|_rhjPo<~ME+)u4Hf+b=a}KHm0AW3o$({ZcLFhQ}|v(%6S;F>ho0 zrCN}J{FiD85{qGu+bdp6i8naEO7rry53i*(FJJrRwE(ZDUtWtjar@s?+}wM4)7*RQ zL&Z6${FjQus{NOWqwDZrszn%BCE5vlXl}Xop<2v`(SE5GQM1KH`$N?tNXXK{^?B3% zZsX)bcaXFq@fQutK!g}tg+ChMk3Zi$ecQ&QHmFq7NJQ2@xoHPuoO^d>89JrzKX+^7O!a4Y3|I?-F~S> zIT?_^#~+Hrl?E2WD;DKtAL_UG9obIxP_@AC{1vT0iYYzRDuzc&X|G2NuN1>0+)NME zq8J`Aje4jS#qdbR;Sa^|N-?}r46hW!E5-0iQ?D>4F}zX?4@;LltiYT_N~Z;?tE|$s)(O712CDgmXX;Mnz6#BD+a;UQkX_BWkwmCnpcCst(+#`ZVy zES;G|Iru}JgJhf5FV&*+s>18o%IUnSbY4|DSt^}Z1TOe1ICp zZI#Y8LT0_3&bCUzJOOrks18e*uXMJNN->^j!$GEVuu9MZ2PvPdYu=Fr9eB7AR61X) z1WjzXJrJ9yHsh~lrO@hu8L*OodqmF=m_RDxln%^od`TVXwJt!lZl&yha`p2FQ=GVcP6sL>tXzf5N<~3XuPEESGDd}puXs# zTGUmA{DOMeCSkg}B`I$#*Ba0#VDy5-%fESk`lEdKez+$C+ouJ%_@DCPTmSic|J6M# zkJt0?I1t0qXTvgryfE|&8k|Kz-E@lp@@*ZDG99?trQiKpPf~7f;6+IwOig9s9w96Y z{1l)VrrPo*=b$o3OM0e>6cDB;d?eTkI^k-=zBvOxbP?eQa>1xemiw0cj&;+KS5f_T zd(3N9CSw{Y;LHSD$6vI6ozN5_W@-(`2V^8b5IJtsSy-kx8xPL-+!Xt{Sc!5eW`&U; zPFfpqc>Z(KbEaalBTu|5CNlnbW#SS<{STmaW=fWZg558`Gl=Q^sq_BWf4$zx;UcIV-`uv_)v zF0%V(!r>M@2MJs(y3Y9HQUqqYCx|5e6y!z{yT)8sqF;?aTiqQqk`P?5(hcJ12(`P` ze$~)TLl+I*Gj#jWErUx&?9iCt`2<{Nw{_{RbZ^nMMYk4RT6Aa8l|?reDdXH{BW_kC zVCrTgrJe37QrYSDp__yhb-Ei!O($vJ!AFQ>k(SQEN9-3I%RUlF&}Z76z^tI(K@39C ztAU5{P_y9xCH6~ANXMpV_qZ_!r%9>U6pkKQ(B*FncK6;S>=U>$Jw^%fB_CG-SB%2D(z3rSljZ5psVd?;D8c27Y19jOKfIpQJU<~U3 z)YeI^sJ%CJ2A?{3@0IW+vUFAlc7;2`PInHgy8r6YhP79#5tsGjaDMGqZfwYk9FC{m zBJqQi5F^)b-z>Xz$M@pEK6mT1$*>U~cHVA@6K(z8jKdGY?%c0+n+`5%v1JZNyft;PX-~Rg?8eXS1J+d9sWU*Cmlr7-HCPFsW^f^LGam| zdQ>-DQ2s%ZCm9*Qi8oKY(?oW=<1i|)oLz@wes@AoY!Q34yAr@^kEhQQ6Zl^3;nKD_ z5uPTU+beovwb^^sZ9+DNc$RfyN7<|W#7wdKYCLy4v6t-Ds$&Y@&Gns{Dr<|$K?@{bAQ{A+9Y9IxmN z@aa`wt#!7vNW8-W3i;PRQ?+>4xkd##f&>2&FkTEK?)1B7dqxPnkeWu0axf!nc*V~OzJBlL&<)fFi z>osae@3Yye`R;w*RZa4y;4sX+lfKeD|`ZRpGmrHLVKYy{uV*`7RFVWldEQfgNk_cv(}J z7~}N9zdTy2kHWPV#<$g%U^Ei78Oo}4Q1s?{2K(hRk&EP9>tGLkK<@O&FOi))GTJZI zBE5Vr#k@Nl+TVOab5Y-hxF#*Sfyi0wqCf*o^IyIuxpdzkIqIQmk@_3NAU)KGM2fiH z`$G|0yx_l7%PIc_T>XrRD%qZ7kp~B!PMzCgJa_s}PM%0vAK+wDTWmwd_cCRDdfH}U%)48ayh5Ls}b)fVdomv+1woFMtIuV&!3#bybzzX7?UvK zSrDCv&pi(|)+oDHX4buyEn6RJ?+%@URQmG;PJ}0L+VZYb#z; zWO>}SQt?UzfI<(Y5DPf_Bmfdk%k#*~vVubLx=X!Xb z{gObYTNfFT^om3&iMt-&XKzZBlDKPFKvtQ#2-}Bhk+^H=gZ-guk+@q(+_jiJ|C{<>%HogVwfL!=i9SaMwd@L^i|TmR)%lVS-{gsvzO=*qsuD=aM^ zXEZG{H@1tcg?OH_VN_bFc%EWci}-%YqG&C|^Piks%Ql*nIS@~o5<&y&!4$rcz|g3=t;0^aAEhubbcXFYKsfC)}A6<1np%I6_kAH9e}1i z`jmalohIzn?F=aMCS|Xl_~q{j6*<>vQMXQ+$kU1|^;RljufociZ`;hZl8G!(+j{sECFJK!p6(VvKU_C8NQoLGg#c~IZ5jK7gUJ+3 zTd8eh^$Gqpro4*YA_=}5rVWd)SBe=Mc{~9NZzpzRrPPab#i1K)4}S5mWi1cO%D0rk z#qVTO6Z&G(LcGjm7x3t*_7DJwj203|GsO$U4=%M3&)-dRvW?v4AaYrQW1Ed8VS!WJ zUpV@=e#LW1Q$cN|;w94!kk>|&vMb?q@e_6=u#^qz>Qt?13J(arEwyjiRs>nru0SUE+Y$_1;;i-2%D5&5**tgC87x| z!Fk6NB=Pko(9cOU_5Lcl7NSJAAnBsoQjC^-3&#@Qf^@;RaNP1OY$d*hgPU*0h1e&2 z3pDIXm0uhj+WQ$PmAD%P`a{h;$y2W>7AHd=J8Lbr6a9mT(ZG3KI#p2^THH+=`#kg!9VD$u`t! zg1p^LjUI0sLjpOXF5F5T%O|iX=OOBA%JJ=M7m6Kw;KyuunzDM<-%u=NNsa?{9bu&S zb&OcsRoE10TDP7h=y_a~i!hEx*LK#^+uYHdEhs z+^3eMFwoUu%?0jTvTd2vi}1qFjMr!F=5Ys`VT8W`={EeZ_-RczR}u^cX3vT5LqdNs z2}Re7`5|E$Y(u|rJ&9X}t|wF<+xDE719=%c$rpa0ni7OuG2x=lx0L<|QJPW-Y|quw zk!O(u*l_aELIShI*cQJA;RK_FgcBK)ZhQ;j7^Z~;7J)G_zJ-*YTOTx|2|FuA3!;Tay*>g#78gl^0Of62DlhYC~ zJKhZcTU+rv(;Ni0QZg&!x@)`QzYka*WEHv;x0TJYA^zQz$&6<`r5jsf`y0>rgMt6Q z8(H5_SEHv`&h;f8Ax1+_FJ{ioemOAy5oIc*-2Q{BtG*C=+Ds(hUod8_JC;vF|4EMfqJnOB?VmBz*Z0JDb3u3{w838|>e) ze3yH2Hi3a5B}eb55T1o=TWk@J9YL#OZgBP?Ax)4kr7&OqI}n&-yKk%y#LpvGb96x; z?+LDRbV1zstVKV!_aLC{O$$4*50w)rj6pT~L)BujQoMpP&ObCJiZk?h*)P>% zu~POcp4kR4ST?Q~j6VEgqVe zt$k>2EOyI&>CJyk*jwwM`Lx=HR@;19`DH$>_Ms682i_7X1DUQT;y z59ZX%`5M*caY8Mk`dU<9i|T8OJG8&4FQU)d{Q2#n@9WyaUhS7^vA9EiiFRwzZY|oa zMZ2|Vw-)Wz=8tU!RExX4#O<df>tE{u*!AF)Co%cTnAE(ay!0bnnd$8xBfX5*XC<(zcgy?%Ub)g4pXRo zS!-X`+LyKYnp4hv&Fw?A2&AnxUvqmH&ssgMks=m`X&<6h0kG9NkZT>tb(pI#e)CJW z0&3AB75F7|wOV_))*i04himQO+FaM|P4!z)YqhY}Na1FGYqWl>Z*jn4Xpv)*Pz2Y4g?)QCSd;!lnEQzQP= zh(D1Z(94NGHR4Z=_){bP)P%_ve`>^^z}ob3VN%4OnlMoDr$+p#v3L=BCZ5xX=a36b z4^@kJP9vVvi03roIgNNuBc9V(ya<(9yoi0M7K<0LU!n%>;l{0)k<%=SZ&FMc+8vFn z+hbeNVjl4=_f4^3*NNveNm@b8koXhubA_4M&(0g`ua zx+x!rVl3wgIOX~On!fvTMIjU{2jE77Z~uIM^XcaC=7$CS(fHG&N5hiVarthTej=Hp zfBx!r`1sS`mia^Y`&Tb)TLBN;5?nekxW#U^;UNLo-I$eNS1$jN4{xc=(b z{Lch>0Bn8t!*aiVy!-3T?RVD{W;WYu!A{%(kezkiG?5ol%^V{icSjP=ZX1Pll2L3? zFN%5j@L`L8Y{DqEC`jT#oI^hi`aTl^eK7?1GSwaEYa4v~{Ze5bC;B(UR0@k>#7#xzD?WjD%CZG_97;>GPCZu$Ty}w&VDRW9T^s8V>@E zdMTS7p0K9;>jh1r#CI<$=pBjdXTS1Cepa;K!z`yITgSR@If#eQJzrLZP}{8* z3OuOmcRPGI9e3Y!!Z^x{yYC;biuz>4=@)lT<0F|n2n z?;A}4=_aT0#5WpJ>M2P8t@VN?LduNs?#E@my83YUqdPT35z2D6UQhQ6kQ$Ki=P$;} zzW&2EzxF4;^#{)V;AIf^lJ(pg=c%iKvB^iVF%zHZtC*Hi1HuAMf3_kYKJX>rFxWS{ zP5U$Mhub%q>8*epb5&UObRLFKO8YZXZYU$bcdy8>+g}DqSC)9FkO)u`6#mZqFX$mv)!^sI1?A^&tQ5 zzj~aSqrd-tse>AR|J8WHK1M(7)+&n!H!bKpS>WPg^}JY=z{R>gFBdIv+4YS>*-1SB zmqCA2*9D&q+j8eGOq=Lx-ZpbmzI#$|HN%9SWmvLyZgM|SEImQce(p~5(Ll5R>fu(j z|7t=9oWJGBF40|%Crt$J*jgQZCT>ehv=&Q>E8*PxBtgXP1Tra>UjpuFAJCM2AVS&4 zLG8F(i;5%W#ZH16l1ap&7-#CSddnY`gROH+nq~kUL7{l%7?l+qWLBDsKZ9uFTcrze9{gZX%E$)u2*E$ zQn`5fNXph+n$%o(EJv86ZfR0;tT!pz9A}aLXxf~mt%sq&t+^OU=Tr9?rrw#ME7C8PSdx+M@9ZI{u}fABO98SLqUzwY>EiZ5F~mYf-lrq`Qk28z&mVufUT!|OsAI2( zFOT1E6a|cEQ_XcguUVTdW20kSP|r4H+|Ayy5X2t>Cz%(^G-g?wD}myhZ~gBu&WuEM zOS4wv+O2)RWwZ00Y8EOK1pj|hB`{ty&hYQKJGMP{VbV+@e2=>g^5(NUmp$>a0(UnH z#Qz{hv$^F7_m7Mi?Nssi07u)7-I8hkvPyQxt41_2gRCha4_Cz9W7~=Se~_(#t@hvRH~9Yp@!ISvgWD~|;K}`igF_(U{sDE`FTbi88n*xPtDd1q`!ByEIodLB z$`QrTkL_=|lo=MV|57cwlsWLNy`oxl({g-P9_prLn5$M!H!Vjbv|p-4H!VXt^;cAj z3{(zW%A2}AIdG}{^7~pL=Qjr~wTBv!OiB)1Y7aFcIiiGUcLy%zZ*oK_A;8OdWYLSydAt!}GP6~yb6bd;h6mn81M0y~)I$SnUr=6RxjzW9y)5BI+rK0dzmNI@}x;{@+nQtC_g zl9#pq_Sn*&yrIoJQdx>?GzW7xPW?1Y`P{bbb=~4kJ;!Ny%tI=LJz2Q@>{DJ+%aSN- zh!TU^Zyj;UwrRh0&M7yg{pK!fhbLdQ8ePlkPi(3E%T}p-Q2LXtTKA0fCtJm?dbB65 zQuHrd&2HxKCtJ-N4Qhf77QSpXyP?Bh-fBk4r+3(D;mcMt+bulVYG%uYCtHQuZ)^!< zn9I6>>hs;h2Jik$3JbN$laS$RI-`P0n#w35?j z?xbn6Lz2ol3-}lQ%)dV0zpw*{4Q;!8)-Them|6O#CsgL*_%$YK^R5civ({@n&f^Ts z_SBE7s3#n#87~#8bFB3)ZV068m2_k&=vL=S`-Rm?VgzsL~{J8nLq1>e2w->E-iDe)nQKjwFYhqF*{b2C*vUWiq`;38N^ zh27N`Tg6WdT|56ian}j#`h~mM*(S%9v=Q?Fy%K_fhpc&e`Ymvux{po^5%2oK;f@kt zyB*t+J#l#;@?94+V&6TOBO^wbz!zNViS2`vGxsvN#cW`f_zRfq6IqFiN3riprlNs^ zU3`D^$W|t8QRr|zh$tixjY0`@;nrAh>7Xu*XbJM0P3O%n-cU`Vt^hBE^|)>AM7}!zRhxleX+UdxB}wu*a-;p+HGhxT(C=>)EcII*>rz&|}SO5;kP4TO!*R=Al$TE`%} zh?P6cOUlWID6_Siu->jP_YtO?6&_`#QVHvgsI>JkVZ9Olwo)nUeO!Zt_1+vnS+9ik z-ke2YlkuXiB~}gNI(iXB(8hs|Q;u49lJ@m-4?BHJ*x&A|sZt5+jp)6NFk!ttBwKAI zthYy3s#L;ydw``%C9JoHAbP2UtBn~S!)!?BO7vc=Smk<1X~m@!mrh(NacRV*5SKn& z>Tqepr3{xY+!HNh29+*6mo7Y45S}?IBe~?#h3C?R=hB6n=d%9|36WRKDaAgx^4JG= z9{X^?$Gi~zmn&i~dJNht(uI@W-U~<mMQ@DrCkFQ>k|@WZpeNf&<6xz1m4 z{qy^I%vqf~ZgBRB0)v8{+Vd^jL-j?v@LalZ&$rCqqzm_a%l1pNtAJw9w`>o&k=lo9 zksSxUfIpP#+Vd^*itIR^Z`ponc4f!0ylhsBKmk18vi(vmvg3HZWgg0o$NX+9Gl{7SmhpAJ6%0zcdoyyuZ7@`Ofru*Y>yThmSXt>G$Zz*rR-$%>j096i@2f$1_oA`H9`D8!Ybn z;pQRFAMdX9W0~C+v1Ase)3q~3*3Bu<^_i}&z5D#otzT|EFs%6Iwle2VFSh1Gv-CLu zs_Rfm)qG+W3BI&>ZkO-yqsYEK<5OE?pN7BSMtZk~*dkBPM-!OR=YiOvd|a^Y4#dDd z(ILOIWjveJ(-?GWCs^rj4SM9VK!v;#EwQe|C{<|T4^>|pZ&A-f-8CekC$yrFOXg*h zO@Bb?%gZn<1^?O9O%vXi8Sb*hGPgOFh5g1S!uZ>kpx%jyK^YBBY&)0w-1I~hb~BNr zD>etICR{V})E)WnSfg$p^BM*Auq^esj`%+Bj)lF{l@-q0WaAzJy&ZM;2fyt7PUW=| zjuGVbMl(azXA5DHOH0h6TR?XE(-AJ6uV6K0V?|~mxAQy=NUzElQFKOXL;_o?X|oDj z#_8d42-HQ)Bo%VZF!5uRp@iS+g3%f5MvOGawn$acy5;C z91k~p#>$3yY^tg6vKD+YJX<0t0ux>~RckfjAHZ-l6fxLWNn&lxN{unNs{rhfg^WwV z-V_ktQ?6q{sPRhjs!Z4jNJ0DM+CH-_)V9;imR3LC#AMFx=Q#rh#lREVq8kP~?{+(c zA4Rs}Ptz_Lyi!SaP*m-fn_J*Pz{LSE1X#5&;U|pXbn~1Xg!wY#LB!arZk)Rzw70)^ zi)?OiENCzV=Q%F$K5^X1_WD^A>&%rSYnKYQkzNN8^6hRpoP(;auQ){74jdb`CmMf^ zpzu%2ASPl8`+mU%P386pk(Ah2xaValyJF;GsB-&+SO7Is&;8m~9jh?QH-d}k?)U}* zgu0;y++$)vw1@HH+ATNZdINYMZf+y-AEDga4y5yYzw5gR#dPG%IHZ-ScphSB0Bw zoY!Jz{}B>37cAdi>qwnLZ$402+jQI{eY9xg_RDbvY>OG;m7v$a=}v<1y&8Y6cC2vi8M|uH_|OaPmTPig zJNjl`r)dNXNYf?lQx_p^3fS_G`Q(tf~oWp{ks`kG>`CsvRXQR{#uY`+}a zeBx@2*Dz>4q8Hp__R7^6P?T(nDPwBdz>~2k?v~4I1je#JSRyR6)_kJ;+%Jb51Bxg2 zvYEIK?LX{jyXClm)a%+ZFHFuTH#uxtG36G_<^vd(-Bd|#L?63b4zIki8Jl{V+3thZ z9R==gIlwNbwO@fRobZbZ<@V{N#!Igl=AKQ<@fboeu^jEU2YhJ_YiYBAn{n`S+^3hi zS&{BWB$9FBTogaUCcN8T59S??UwEe>u?2cTYrS7?8qn}ks^cC%1sy>Iy&#Ma&?RSB zje0@!f zsRL$1c>wvONe`~=4GE=2sZDS6(rlaV+)F|v9av7x6~9ucQmg3 z!jY!-L@%kba7%DUjZ!xw=PQnP$QXOAGeg`E@XiCXk|3AR>wT(2=4Vq3p#6jQTMPkg zX`kxY^F4^weV_H%p+ZJlz@>Kki8^v!Q5m$^nB_ql#XPlJj;&$nixphBDJM|@aY_5- z`m82QoPAZbFmhiN3}CzEfY3ufJvJzM^C?IdryyAuF7;?lyR2H!p=4{;E!vH8DtoC( zJ5dH0@8xu1AEKP+BC3AwQyr2_Gnll-rUJJyw71WtKxSLOiL6mxv3^0S#Ok*rz6CX94&MsL7S0a4NoU#ne7Whbu%!<}6jB%e1C({3N zp!asvc4*H+!F|SsM8)ATapCV85Mv~+n!CzwSJ^S#h)GzQp|UgMo~h~uzxwJH1yHbq zauCHq@`YWhAV!bf7GZVV6*0R_*m8p;XihZy1=*gQuAuD@CmU2D=617R5EB%6SUK=A zy!?Ys9Y=%Rf@40xmzUB`OD=+8jQf;>APxdt1+*AaZxg~l3}|exMRZ#2*fqrfDnGa5 zK&!Yv>=wk#)vtXwcI+%P(xI#Slrz)OwwY&ecM23t;y4Csw%=mkt=1yp;^ZySS!pn6 zy9LXB2}`mYqp4)pj>|bEL&1H@S%I@yNAB1I{1^d06x^qrwVb-F zwi9bA-~&NGBFtiM9TDKxF>?d=z`VU1H<7`k{4Qn{9a5~@ZY76LZHjv7Qb9@PC#sr1#7X-f$)o6zQ(#WYL zeX}{N?zRYn;%1FlUQWvt3>${@xLa_ls}(~^vvMcN!kxmfA$JST*c_3_h6OtV&~uvA z2wgRR^=-Ry)RBOm#2n#7j!;%36mb|sZCOha=rxdBgtmG`tHQ!t-iiS$#n$3J&so=s zDIq}!jDsThm;|K$-+L0pqQc{q8-^`n|_N|`hA zs?A}OTvA-0E03>OT`bEotYA(D%Ee{*?5dtAPrPzNurf#cgxNGK?j=R`x$+$JXeS3u zkSOf~Bg08Lwte6l5%*|(88V!$G=G;A+h^Jza}+o&0t2^Yg6Bi|3*6~U`Kf3yFXC%~ zo5!%-aPa4j?Y|vwV7X?v7L-UVq5TUKcc%TBgKEHQ3bQ^Lezx)#Sk{^HtULrb;)b2! zFS5;FJpFMl&@@}T!!aZ1L$PGVj-N;b99755q9I&@G_Boyl?-Jlrh% zVC4L>`W^WNdjbc#1^-F4e@Q|9a{lrX4U*Zk7sS;u*eA^|Kem0qHHI9qienYj)xfGQ zDa_Bb-Dzbgt^jkn$VcyM9O(7wUg-Jx0 z$Io|U0Qe*Is4O)9#85W;5yNFDAI<*&!9}0E5T?Ur05|baKAQe0Pl$1g zlWLD1H4FUrlIr~B{NsQG=dhCtL}i?TL;KP6hi4#)6M)*#tFje?O5&0#{Y?AST#^a` zCQ?r&HiyuDH2nd#hCG8d3~M-GXJP*VTNb;1{n%qeB5%XmvlRmU6DJd09^EL5(4&07 zJie8Wr@zq_5b@A);C>VCY^d_JewS47XUZ2id1V+;(Ou&R{!`4r*& zyQG>wSH43KN0owyLwis+T~g7XDc_bTjWCp>UYkgQ7sek=f9Rgz9t2DDCAZx+?4L^- z_A~9zeK(*Gz=sni9{i3hG%IrbORP1SUA1bnh6PoW#dO7%Ul~Emz)OT~7SP9U!C;Z) ztE|T5reo`k1y>=_pGA?ymaoblUoDJ=E6##p|5*50bb0*aacnNjC0{tmL;s`sUj^^z zQRV>5T?|-1L6v{`_AIBCh0_?%g zT=ysOe~Y1uoIjNGHJ$>f`*GJ!T+>SD{6Y&>*K8i%eP#?j(B!u}6Ht}pEsXUd}?_W&!r zdn!mEv>#1>II%SC)FJ?zTi@n}eMz(bvi&A2hmL&hE2}sm1cdgZ>95IV;>0>o>q!00 z0T9YZ(;xmjDC_2O0ezkmNc_(tDkImAB*kc$QN6JFh^yK9A5DKGGVVHjHpv-Ers7um zZNsvSZhyu(W5SQGt~dn4{<~xYI5Ypi$*oz{t$4+w^$hfX$rNy={IHPUnO%VRisfVL ze>DGVMv}y@c*s-3Ol*?Yk2vqx@lPlp=sX0tjKqk9^3nXSnU)?E_>7qtH~WyVf{|28N+dfo}A1P8eYLq4TR~znfZ21nh zM{EEKfR|`6o*7_sbb0Xeu)e_n(Afn)^x~3v;mr84+syEAd~(oUbm9EIWMw#0e&o~~ z3AaR{IxRsFZ`jhY{U3?i#QP9a-iSF+_YVW5jxA3)$7J*~sPEYJ@!N-U5iUYRW>bXycgaX`ru`N#kdmQe2*y+q z4%m{WCfuKkOO}f><#81w$lLU{1k{Ci zLM{{0^M}q2)m_UB5S4AdjF>j@{s#xT2>dJF{xJ}dTVv^3rkpfpA^yO!1Vpa?fSdPVn91nBEow>gcgey3<@yhZ zUijKA#hN2RhWHiBOAyF`E1&Y`fO!49TjkkXg?}@KEPTh#nD4@6U z(eyXvBWeC}>>m?>7Tf(X-u^M+kp=hS_y>7p3HD3N+7UT_u+JIf1;8!PLUeh!zs1`> zP&_UOPIO1skA?1MOdxQZ`k+6Ew|{^LKr}HaHW_<=IDg{pA2R{F^UyE@3%fsfa9K{9 z*zvE`f~z9PG8Tza1^SJ*f6Oc5Pd!z5x?slG?!WQ&50;Fua~yQBpCCg9`7Pf5vDl$8 zB0JZ3vE#9;^^3QEaPRIwav*3O5uQpy`DprEaDsH@7is_um_h!Fw|^`HxkEEf5b`_V zs2c7c@%9fqKX7Zp_rR854v|N=pT({}Cl6sZAS~24Z?u8_EvZo?{eYHLA-AE!#03Qh z8lOMQh7?;K4_nrME(z>K6Q}!!rBRA4Z$YI5+T!6qa1L(mNAtgxYhQ!Q)r1QO96<7? zC2opsAD^qP2?voFt`HZL-2v<-;z_s_J7Vy^ce{XT^Zq)~4NhDaPYXD^2hKK~G%BasyNf`{|NB z=uItj;LEbxL1_ebwhkQUlEvsvE#SkB3LST3vq%J;xMj6_zjffo+BYMR5G({BP+Ese zaVT#Z13oc^-_y-F2CcL7g5@Q<)SFs>X%5|h`v_5ZZKj(KL6Pq`OQbdjN)t4$8XdkLe*fRUJ0E;+M2u2!X+Eqn_6i8U*_Iy%W>pb(>)JUx6MV&z@=JN_fVA0fisMj$?oc;K+dC02BmkQdsFd_jFGb1^QZeKAzcLrwifV5Ao?6v5Q3^s zXpn36j>6=<06+Cf$=#GzE z)46FaiQ3sYRO6Pz=p#LcvP#0Px-_XL2@^mgp&&Y{2Q#ApV8d}(q_s+>+BC)i%>DH`x z;5F9l{5Q=K8HQ6J0$|JV138`EYtVnUwICs0=y?$&z(Ec-(3-EnZ7tvef)^HfeMrB1 z;*8h432tfuq<|wDCTu-NY z!=8JZctf0@@LEg(*~!BFu;x2)%Q_T9;-YN;!3^X>JY~WdcD$$YT$j)dg6M(t#}_)Z zu%kRpR23nLN6<(lQ9y{0BGhib8;E-c555T>Hf*5?jA0Br-qZM3;-Li7O?IEIomYCt zJq<=fR{{3eVavmpGw@4mejqo|5^4=lgaDHfVD{5~So0LQsRcocCX8gl7hd3eY#r9% zCvRz?JQ8kGqWwXkh|5#Br`NnqZfZd==o?JI!2FhZz;npf{84Ud0dEV8Ouz`$xSX80 z`!$c1+gd2$c?fI1)i!?QL2oSRxectDy)n68fa!UjFxng`EqEdYZg8!nj! zj9G!_Tl4X`sfCI-HjF_a$rDX<;`!FRfNpDn80Bi@4($jNtiv6*<|lMh3-y2#cQ@qt z;&ERGzBPcJUVy3H)B>5+k{;_f$fCI2299ja*XX7eaH2 zjx7vRLg)c39}bUc@ckqTYR48Pz(q(b1*{&ZY{5GfN4q^+z*0u^JifDpuY~yVd@X+c zmX&Tmp;RG}TZlLZ^DfHQJiKmd0oPr^Z!wq^z-R{_uzbx2?4}mTFxO+Ulslq2MY#e8 zyWcwC{)S!&S4=#~`m{DV4j-C5TR0`v&NY~7k>9iZtQTL9?{@O#4Mhl5 zd%6`QMi5mI$%O68wuXXP`qX*Ze~wEvJO)j2RI1sgt~xr6lQ71J>3EC zOY{+`K0tbHgAW!CmOIW;Ep84Zr6?o^!|80@(~k^>4_`+h)iL7>_-B}<9pz~(-<+;o z%m8IzLkT->Pd_p+M03ypL9#;a&3$TP*wc@UIA6lW@MXqKJq}Ia?)UT~lT2v1Yv7HK ziw@9?VGKL&X%c~gSy&RK0po|lHMFqfo+fLBBnrZVjI0M-)S-nP?`cWJ){vJ0@u#TB zKNecpaZmRE`hlt->59-N25&oTfcx!fa66A=RwmI5z==#&7{iWwZ?*$=hk_WHBdY1~ zv>$fd(>fK|nUdL6=0bScGhr_VgnY-(n6|@W&+eWQbt| zOKit6jDqokm{3_!GDmUi6J0|szh9WwGDN}yYy);;~m zFzXiJAmu3u)QD>jC*PiaWCL<1?)HRiBQ0Wo4YRc4o+c8GfTSKY`~*;+nU;3k)1U+Z z^nH#%1-_wtbxK?5s zah|CgFx!LPJKxif4EI*daQI^byeSp}qoqCl$iTz^6au?MSSvWaC_FL%@XcGZAB)pL@#gJhRywx3B0KdA1nHfMK#-%Lq8fz&}Z_)mc5`o|l z04lhKK$;Ba(i+D6O)bDrA~xVEO(f?j`y*)9JI)eH0aDx(A&K(|ho4dFo_=Hq>C8Uc z86ggbxFBWi=|_f-8X)bpgxXi&MFkz%8rI7#>j0Pqrar+@AtIRM=V6w1`!3JKyo zVq!@Ko6{`qcuxbR2dJpzS44*o6CTE}yh7Hv}Eoo_=INnh-4orVruK zoK3<0fFBv)SOj}7+v4l%Gx-6ZpT6GRKi++Pz**?KKmGWfr1-o0`h5T8{`LN+@#S#n zetjMLr(rxCz7J2|{r4ZgBctDOBAZ`B^uE9!^Askl(T2`FvSMRy!P?zP{c+ zJsu8!*3S(c2%UgyBk?`iW`Ur^G!%;?%KY8dV7?Fg$a2; zhyes$070V*ses7z`TrdL)IQQ>0MjLL0)gj)%yr*pXl}D~l$?CTy5?k#`#W041(4ts zG71$K(NEY6IsR3$ia^X9{`4O|{=oOUqrX2nuYUi%6hbF^dL(f2^oTZLeyrw4c*xVQ zT+pXSPQUqad6)j3e#N=QJyBADb55l*&R0|atNy;~bon}f8qV8SG^g%Y{lh}z>#Y?9 zxBJz`|Ehlmu%+mZHRi^*W9ygk^-hkayPxl0Ki_?BUp}*M39Kc=97stb+KE68Hyu8A z-T|T*biZm`hO4_kG(L~*>v%e1?v^a6njV$-b?{t)LL(K=Nn-*Qlea4<>fEpTNhpM1 zx&~OhKE3s_0;JHCSRKL!5ZAMi@DHRie+TVKceUEwKlXQ=$35AGKTl|z5Wff@A;1F{ zGrN-TB=k-V$`|*mX2JAzQtuWaRXT}!uR>i?S8}d{UlKZbYjx;T$#+T;L11XwDWKRB zP@y-4xd(FMdvDga^!Q!-@|}Fx1>HY9J#tU~RzBp;E%XP5F(w$-0lpv)7`jkFAMwr{ zF|qDf{o9r}Sa+=(ww19nI6=zA8$12Ub{)1=GhTRr^f z$+^N7Dd40l!G0qsrXV-iQ=h;5`UoQAZ=QSU@{iKv>~Z{=&K8nv1!YD{5O0FZap-Jq zowb?5#m~D8=ExiExIc4OD7{ax80fTAbcP_Hr_WDVX> zWW&}0dd5w!8>B;0NZV|07%5hBe^)jP5v&h?y?TpcXx~s|!`8uw=8h5H1Igv_$q z?F}Q{pf<#A-Gj3+`v~R;B~tRiU>jXyC?!=wzu#O8+c1{4{zwohJApd zLA$--mfXN!N_I-`3`!s>Niqp?d!J=tt;psNiGrlihs zcY6c3nBq&JM6zMWZ(uM}tXlqVZ`kS}R%o|3(BK9JQxc`PyS;&1#L?Wkyws|*Ngp|BrmV+>wSMG?pav)rePqH4DoOz z)@cc4QVSpOPHG)IFPDaLCu=b2Ux>v>h#Ci~;e=R=$LB@CG8DXjxqExO|G#fy5wCF9 zBzkQG=B_0bv^j|u+~Lx9Fq-v)RT=ok@Z`f!h74T_FcI=$-?(Sxo9JldgPD^L+LI63 zlMibT?(BvhkmnK7CH6g6{|(0VEJaXh}A^CSuGq& z@=eYg`LJ3<{*-T43x|b%vsw@y^_$hg?v-yM`N@aXB31zTX0@;p^_$hgzR_=13v!fx z(^^W@t9%2z);_crQr+1%t))bQ(O0yV5{0dVzdiZv3;{zjCM=7GpX8W7hEU(X0%K0QTt}K z2oJ@ZM!O}h?E1|{1OuestS_)Q^372)GjdlV4vLCG$quo+&DH<}` zC7HN>GukbUc1xq((r6cKU3ep+UE)aeN2A@!Xty%jtq^dfGNauJ5mvuhEl8a5&1knW+O3ReE2KvKn-zy> zzdSvE{d_n6GWKt;PtSM#!~OX9dLUkgB!h&TW+eK{i{ZcZpWY5;Y+{~%InXmQ?#e%` z7Pe(Q?VsQ7A7AtC{`DnK)$i#3%hv~WP0_y`4*#3Ki)+cvRciNCIX3 zSKE}+j9;{@u@W3*fg?Er<}u*{PHv^+08FDm$7Pc^okNZQXBkPznFn>ud`z^|%q&LV z)E=5{z*q(26yyk{MeVs9pgilSO&pig6GGKd%h}1Zk* z3$MVlmK9EcXDw@zq8zo*f|fOZ6?4jwW0v2wtO;jw#`24nl@pfzqGjcLX7QboE%{VT~?t<-!!(YwzWQ7LdNBv#}da=ol4H7J3W{1#~s1y zIFOUV|+wNgJFoJ(>FAjhDm$rW}y@u%tf{M#e^c*m# zejqvih2;2Gxh&Hq1T~m)SwWG&Rf{aGTv^Z}Y}kw1z)9Vp6)7_pbPfKqHweuB8z6|* zGpiTfwIXhbWbQsZg4FJx_#of=XU~>-F?Phqpeu>c;5`6M7q&Rm#9L6xSZpfM0;XSE zyt?BBl-?FgOuT?DoT-==3roD1?f_&O?_8PwZxLkTEttgOXN63e_<_)~K@@-&qsGvb^~pwf#_CERscic2!ExHE-EE1xwj zmuGg+gnjpyKM+uL5o34tLLx|zyyV1YwV?a~&>;-W`>SA&Y7eF`K{do8<_dOAe~SP2 z`TliGjz7x>p{ngOcVwHU6^JAN#1WcahJ@pAE0+ZuD`!`$Yr|0i#2* z1i<=~<3(81#nUD_Zq;Wjt~1g1_0&fN=$!#Q^v%$+INd~B(KFu+GGn#{8jylqJyqIuRTR5yO2fMOV44>stu|fV((cz5L!5hiJGXb!jlec3P$qAj;S>yh3*tX)Nsq)@HT0$NgwY$DOt_4nZ+DTrW2t@N`+-Aih0tj=jO zmZU{UCU6i#>KwZfm`~1s9qBj9a{cA1Qe37;HDd2n(HxECQMb-XE`EK+z;QVIRX1p+iDq2?;Dx$Y>>E<-2+hr`IakBnm ziEPJX1>m)L7x-!E{M3pN#v++VX=qX4#9vii;H;bX(ld;K`&B>fb7OmJHCs=xBj{#y zS_dGAMsPK{=ck_^GxkrK{H6W*M-hcBIQ+NY{YI!X$)CrU@%bk)j07BxhI~sPTmxr{ zCZ_3avCmBnVxq;optL6jTAp=(2~*0mof*p4ni+Np4vemoo`+_x#aio~C6#E*CBdw^ zX4I7kKMvW%thtH!*~mAQZ4aN4~1j8>#)SA0HkvOxj8HXTJWHZ!=6na=d>8HmiNO|1WWC zI)WvZr)dvxb4z|7LlZ+Xms9q%Of{VKFg-p0Eh+!_o4@?-4}bp4|G4|(?|=C3fBf;U z)PSj|!ifqbTC!*24l*k-qeHOE$Q-`8uw)-^>3v$?efL&%aC7{FkJroF^T_icKMbN? z<)SCIUeXJUTz>4&I5=>$sKdDa6S6V5=%ciOBWnPp10N@p zABcT499;19_<|3M>|;YjGeg@J{ZUf4P1hyB5)w#O1r%QcMBH8(acg)giDje%fU`6R z)F2av2}03^whAcrvTKKy%{{hRcSN$PaNfcbvZi>G-SjaTR^l+^c4{?D+fsB{nZE|NHDj@3a|{XP2Q~lke^< zZl75tnmxXKDNL51JsQvSjb>03-7f5$%Jpwac_zV6Sw?=1;n+{)E*eX_Z@Bg^nt10l z`Ee63u$pI$um#zAB`(?BHR{6t0tn?oP!K#(@_1CZC z%iYTuTxx!luYa{~(jk=!tIs(p6)Tcx4(R1`a)RnDi~VaJH60>p;d?ipEBy(x8S1TZ z_a+S#;tlv^uV{x~Jh+#cBJVhtO2fSJhCL1CaMESxf^}*qMJ?Fl2}K^Yc#Ob;4nN@8y~WN#R)L%xKm;$4J!k5>-ya?xe)@vjYMN9)D-$xpZmVnjhnb0ggIZhE$1l<-osy2L2pM)Zou*~4Ay z22RIM(P*^Y9q{uE3x-W}2DZ$r-d%O+@^HF5-hGQt2IXpOz!~jH6GL_*U3^9LcCM)Z zEYmIQt95}ph)yUP7VnCh-_Ls`QM3hB>&`kNQShkv_|7RwepmH~c--^s-#@}&Qov8d zBHUBJKXCC|kQgNQOqrr*iMfu>kvKY>`!B@{sI0q0YR3zxK5c`L(wj_g^&q?j2y3ibatW zopw`flCjNAI~L`42Fn+3L-!4-Dg15dA|;CzE#8JMD3M6A#)(8d$%oCOEqr25dx^Q? zCFWo!xODQSX^F_gYu}<8Q0DoUgVK|-l(T$I$Xe9`w9LP#JO={4>W*v~=~RhTrkPN6 zhP8~o$?CgbHNN(mLiS(5Rsp+(`%l7RAhV?fY#yese?E72tsBJK$}9z$U-@4%`a>h$ z*pPNxE4*6#FDD^K+G0`5{ zu0uWQonG6Yiy|!Ef^OkOJc}35Lwn)W;sx|rSUh;*1#}e_m14Yro?8p29WS73i(`;` zTJ9&88KlW%VXK)W6_1AR{pjZCOA5vMOcczI&+)xS7$ym z`s(7o7=6_oN%Xw*cLh$tyJU+_KiU=ea(AstsQw9ARO-=QEC*WrRX_DC#;16#^VW~Q zI!op8SI-ik;qoa8@Vrq0)u{llMFkiFY=DI!PhXK{1WbG#?hYVlC0;z8ni1gwXhpNbZbLOc2_qs4iI5wW__$L+I zDwTz{&V*Kyb+{d}tO7Iz1dOq1kL110Ne@V_Igl|H_C5NhIWm|j>F@1ygKKS{)eTa_ zP=i*bN}TyriFf79e5Og=AU^H4gy)xwJ!v7{smLQpC2E7C5_FQzUe|sIdp{A zg+hNBCpiN!P_!?=OaYs4IDFt)^x+?aJ%J@?z=_Imi9O;?8WK&a+O(QIZQq$D03*R` z{r;D6I2`^UAL7LNBI7gwlC$Al*xQyPjGV;8c-QSfa;u(522-C2m!sUve6>W^U_OGQ zZ~E)hF3bm6wBki85PwxK&P4)^7nl#m_^UHl5Pj98abqe?qSs^1~l8E32vL$?4cH5CYLRXKIPQ zxhPfQug=F@{MGqziNC5BqrYlhO_dPzNtbn|;b?0rxt;W4Dr}g>%We|;t5MB5y|8&9 zf{&M$CT0U^;Dfd~0+jg~Bh*bJ37xrdu!tt4#nV&dN(;OD0etHQkYAqr!OTl+&UuIe z=byNu_I)}^0{EnzM$|ak>u>GUo_Kvh|Kle4jip)r;c>cKa!_CIobTXnk9nSC%|H_895{>M>!)*Gt(e-bbkx@tpiUi53DrPu*eYwyz_z%g zVBy3sqnb$cSP#c;#KpIhknZMFx((IiEGrH|Gr*eRJOG(KqLVJNo8w)x=*_ z8m<2o_jm~RRDonsHAj2ApytM3ov+3CtFxpKeRa|LL|;YS8Tk76tN!I(6kE|+5mUS! zSo9(BTK(j`ScK!X&i7FCRYNZbW`+-#l4wQ7foxbMRqy(jN-tT00=$c$*Crg1_kA0? zwPI!U7vy+v4JJ=swYhq$IH6d|+|1@#d7gRc_&R9k1v?GaUPbZ6IvOo(recG!3^KQ} zA`<)b&f=)QBQ}c&b?EzM%Ed|U*d;lhQWmhoWU6fmGleoC@+y(okHf?GTzw&n=;QdB z{qFG)HySz3^oL$7dEk1B&tXXfZm zp3EuC)f}LR_g}iV=NF=5xTXO`B={xGb1pi7@sb`?O}hq}){jCDgvoL>czt}wiCnY< z&9?(LX`6(bSBGV09kE+8k2eYq;NHx91lfuf+fHtYy`15AjG8pnPa?jRKT! zMr49VEZ?*W3GLHwT8Ucm`I|^9@?o_E%cI3_h!I`?X0-%j4b&RQ)#x=bb)wp^sZ4BS z@}Xmq^l|#lYB916x!)w8oBqv4Wa`z#^sCT={>`XYP2kjN-jRtBaAFjk7@j8lv=$I0 zC2ty}CN8D+&H5s75b`(ci;*%SkNs$UF=|dM962#sL`$r%7&RtFj)}ozCPt8nQDkBy z3DTYxkc*i1^r8tg!HG(z&Zv zs#tuw&cF!2K_kvRp3?)Z38m;vFbt~Ub1-qr1^9N(&7jf zH3D3B?2pGj%W%US0oQGg1@OJ$VvW8z^8wK}XUQb`=FICv-<-Le=$kXQ5q;B~Els|Z zlk^>EQ+g=WSyIwZC`emd}2?B3=~ zf`7NaF4ymeWlcA2v$Sm5M&LCINsusFG`nT0(=|-zHB5C4WkBhjf46Etu$InmBFEue_L^@ zo#u4WTg2NsE9GB5b+!*Z^e-SB!Q4at3Tkv{Xv@EZ*ktFn%)%gl#T{{5=9-%x79f=dITlz+k1yC9VEFSxoug;E<9{B#v@c=;C` z(Pi5Igi?OmfL}iKaPdEgwgvY(ms*C1&wzLTsOv)L ztbf6EHbN=?f~!wLDCJ*pbxjGS{0pv*f}xau!BxR&r52Z*=pyK=p%mhPa0@1k7z9m7 z2Ade(J-(?b6&T{ZWO5Z5L0rM*!^8*!ssYi%el#({uxccSs=jHpn6R0cw3(Q=2?~zB zVgjdRFO>o&a-vbPZ&r&*or#H^sesQ2JcRZoHL+7NgX)i3izM>YZ(2)gVrMEaF;Y$i zBgx4r-w-=bI+mpP|DN8SAKM4ARj92a$^YZ@!(YWnlcWz%?EqwY|Md1K%7Y&31YzJ4 z#-C{@LkxIoB5Z0RY^n%NFhu+u7$SKJ+ejV*k;&^{Spa{JJ!( zj(_&6Ih82I*UOb@TEWSr&&HvRV5tv&%?4MS24lT=j>#*u zC?6^uq@vy6n`k%W!)g)jhJ0h=$OjuoK5P`C-H>lqi(x_F?V~>$8bm7E4PG&j2Naz4 z&1w8`>{zv_0 zwTN~@{${mUP?Dr_)E})Di-bag(H~8pjYqzHvs%K;%MnRsrm0RXI3_iZF-dNyf3sT5 zX-qQ{Qb3MK`LMp2H<+Xq)E})c7DbavrJ(Ud7!UoEtw%{Wforp488u%{6aE0)~H2} zHTlrK5H@Y!tQMp5%*;NSXy$m+Xcyh8eY0AOb~B@0bno^ztHo#+j3@iiYBAc)jCQk= z1B&&9W!Xx%ZVkSZ?FRXA~vUbK0D>5FlO67 zneCs<_D{yfaW@@i#5Nf&f;tDb$uc&XsJK?lOqM6)Xz&)Q3cC(u@GyRAdr%Diq@TZm zfB5yk%$rW|HZOIS19?B%iNi0lF^vyH>8Ub&}FCY#s#(dKF{qXn`fNsN&P-@o;-!MXH3l!B>ppT1fmnm_Aj1a9L5xGC+1w!tq=$`MbjkU@Gs{j|8ltSFJ~_Q8uW*dNR(}ElxvpFAmq*ISyW|H0`oy$ zRQ!%i<(r?hg}JH-5mWM$Vk}oxp8jH79e-K^tfHgQ<8rokT5H9rwc^xTacZqNwN~7P z)_BlkBiwErqvw9>(e}elX{Yuq<3)?Uvi3IG;39^3xfQM=bROp)E`b^+S`XV)LM z-v2&ADl& zJ_BqxO~a00jWDFjKc3BU0=y!U$v7;By98#nc38QMT3Hg zGLVl5(mVy-Bu_zOAx|cU^AxlVJi!Qu5<%qWHx;I}76mZSr-gxx4q8bi7>cQ4%mYTGh_EzX~~X0wS_v{ z(dARyuCst~PyXdIWrM0goh>M*Wh#ITRBZYSJtBSWn0ju*0ccu~#jQBH>ZUI-O@%4h zOiy7WIo(@OL*vNEXn6CkOASOz=I_1h9YZAiTvqFGc-11 zLNMuA6C_4NnDQ68QKGM^2)$`c<1ZlAe?H~~Xp$vfxyP))4_IA*R|Jtc>2*z6atgeN z5s3Ux1gn6!*^Go>_W0O}8o*@vuTMX3lI7E%pWClrCEYtEWx~mc-1Z%AjT1S=CCAA| z(#>p;NnVdB{=Y*dI)Tp6|F>_1Q*DqF8JfGMXohU+EilOpX*VnY_PlmD%DPXagFZP5 zs^;c~+Oh#LEp1xC)M=+vT$AbYE;H4yZuv0MJgxGkEr*syap>OQPiu?;> zPqbu?gQAienu*)iv^b_6k;;Ti4LCVwA%aWKp&R;Ekd^{CQnKl=3)0zX^2WYZd0p3C z$MHDg=6AG%0v74EkygN*NE&HUQInRe3iP(JN54(9eSVCGH5C!FB6|eL!|dBC0KRU% z6hdtsIQ>Q6k>-BPi=qz^1gi7AVHLVQn~1NkhY3$qT%s)=;nuy-0}wV!OgKkB8L(~M z5aVuJ1)#dfAdHmWa3K-EYkj+QFZ6AmO(3Gm&|n>T;{^5sc67_3vU z3CFZ-W$T7KU$f{OoxjZ^F5#T4=_VP*w(fc$75Y3I?Z95#o}x`-b=)}HB@}3FPvbNl zTYOEjV+R{xp*u(ejtUFBSNgwYU!R1(nTiSPP=R-Qk#_7{-L_av9raZG)8p&&(*qj* zw=Z9Zk$|eF=etL(c4!9jE=?&YP*aZouT|^Xzo%;RmshQ-!~)yPEsFY~FI4Bx_{J;bC; z7?6J>tIv;bvn-B=Q5s`MySeGvj2NwT(MZN$oi%RpS49`;oPpU~6|EILhqqSLI__8f z^D3GdD8XMqWb|JSB3kpW+SWwoCBRUB$4IRj+qw>Z^E~+HSXHg)dnsg&t2~$vmk0mw z>56D^DdQ(_+zvt+8G#l?#yCCsS1IU?XWWjB=Xu*e zHyXrZU6z@%CqHRun35KPszUJ%1g_b~t+;vCF?Lnl`*xk?BDdo6EWng`_Y72g>he5w z8;&y7FInsJ)NMH4*h!)FV4z^^8_qG5Rj1nF<4@-Z3%XjmQ1%T(T(~|jVux;x2~ebMN`=G ze>2}RSm9$m!tSGnfl(hO6m59n4@J}Tc%-$9?^*Os<$M;;`wR4j?CbM*2HpVD;6T*r z0;N#m>Xzgk4sc_ME}}PGgs@O5AQ@zWNG~Yu6NH1u@%c`IS;J3h@q_&I`=7r2*4`0! zGa&o~*Qq@D_!HB5_i(Q&-Z~kNIEEg9qUe%3v*y%_Z;YJsZn9+8u^OVI0gMS>T|$rB z4$oiHAsMEl&`4x<&|H80`ta-Bc>lFRK)-9>UO%5Y4we>Bj#CL>Z$mm66WUd75xeM_ zW7o}nPg@*hdh}LFOMFBSkY*n-X+o#y11}WbdFM_czsx=oJgXmrcm?yU-ZtXT&Qj|T z#G=Nt^3P%{<5|lZk1fV6e$le$Vw*Ttfg7P^#a)VLEh|?d&)R44f#O-q%0a}lwkz(x zu=`q8oPT-Nvf}#7vzC9{RvS&Q8fzgm9LvKF`_{<0e}B7}tg zH7-uLz|;6Qo|hgsPoj$67jyY}a>Ktb=XUfI%nT{~k9GAFNRDuUMUP?@nmg*>47`IW z(xWu$Tj~hOa!(ssUn@o->jB@0beIQGbe;?%$k(5c#6d0DKuPCezbWBe4xcsXt*SQlk-+S zIB?~|=EY(eNJeQt+U!~^P-0;UiG?X>xFqE)7D&S-<(t)Fu|OIwDL+~*77LU}xTO53 zq^04K#1L65kcLajw^`1L(n|xB!BzG*hcLT2DB0cYI-#4O(O^(o3BY4EA| zbWdc-o&4?Y<>9^;UwX+1(Gc|jXl9cRWv~Ft{c^?hn4AHD)U8CRyxhMe$?MadeHq2p zay){8GxT*`k$n6ZAV+l>E`hq!KRo7wZ6?LY8$JRhN(fe;^qraCu5jYXIS+ok%6=DL z+P@iQ+THZrevx5f7AUJ!ro9woP$0VGdQev5960>EKY5={ZH~PN0R;e66%SOVnmLsG zGUKaK;z3&l5?dM<$nFqcaujIVbZUm`SmtG6ULGHJqNvGYT4nV#6fH&=?SvXgz7{}5b``N#{y@ZyhidWv7^@1ADxy0aBvJtI4$)VW?}7-Tu|@xN?wku{KMm) zAA4wAR{ZXX#|5(dC&17j#>30!`!D=Be5e1gZex?SlHBqL3LUNmP{lv3B|QzW>QU2&;@x3q0GCPP~R zM%A`CNyN{VRv@{y=h^-JlVZ-ZC~ex}e}X~?vgt8yo>jfFnb3_uHcd^ML=K0_43WwL ze>_cPowmoZ9B}Tz9%nMMxg335uI}@Ky-NfWSq3t5&oJkrkIOY9f@qJ|$%IUrTQ{*E z#HfHQ!?+(zeN(kX(hs&N5MZU;HR-zYCz=Ajl|0e7@YPdr z%u!qG$K{HwCrS213ZfKuoZz}-n`P@P)fvZglZpnZueeC#vqUU+Ul#-xvKh!Z6x^_E z&wV&cIQoznqDwoj$G!<`8>d~o9LNWo_uM&M-VVV5M6c_QXNe0ZtCOKmxdrk1(A7k_ z5u-sIAT#zBK;k%?b)&5cU`^3-1UiyOJjX*do2n+by%_C&G%wjieC9|9c-xHGa4L6p zL9QGHIqri;)SCFPb@|DS(42NYoEL5>5X>Q=f|x(zGi_etRF`*MnUdOYXeSugKFrH) zR7ZxAp1m?uC3TMC3>BN*0zV*be6khPFv&%j-LsSa9p>yuC&Ms7f*du(_cI=2CUbI}_;O9aP5Bw(^GBoNMAs$A{4fv;K zJ?<*#+2Jd!T%2~ve8}-Nfsay?nIZ`eByrj;k6q36E7*-ilb69SCQiF0n2-q=^v8h} z$kQ-B0~Z|s4k=J)$B;Qa~noCj=@tUPA_%RR21tV^0dJ7N!Jg#KGq(2U$~v?F2mCkBY@r0 zC{&~6$b65BBeOZ=2_E0pUYuU=2ydG_8E`>^5%2A$MAZ;&uO*`qXKIf)fNW#?0o_Ej zT-T0mp7c4Y{|qt~!^nq$^fB(xw;ADcZS^+Nj*YmZ3Ns%~IFYSyn8hkq2XD4(O{ zaKu6?2SFe!3P2vLT%2ASwh>%lOX*^)0yH!VnP_{Hc*>_WKA_@6YwnDw#AD@1G64=X zOdXR628pd7O7v*C0wQS;ag)A)ZLzxpwR^N&S2rcjX?U3y6CAtF3yS(^InpW;Hed84 ztKjMn?ZxS(1+IZK7im3_NInZ*Y#0M#?SVs^uo>V{M2;Wr{KR|^Etec|OGK9?PJMZA z>yE)8S`K?rThvDq@k{_$h4$j~(v?764MmBJpTLG0Z-Y@I+8$U8BM}xbxK)d#P}c!7 zNVHs6LM{m*850rMK^1|~Hd>A(B2&q!%|$^-iH#3aORO9`6ehBoGaEPaW4Qk?&cw@c zt>D7k4OLOM!4VQWaZfrkbWQvxXx~XI7Int&Ss1aMgIK2$$kCA9ZkHOS6fPCa zm$rxLD_RbAXM(52%tL>q(zPztwSc7a^vzauSLs^eL2=B0m;Z(B;mfr zAQvqMD_fF1E@LT)(Bq)oV4owfYk&|G`1|BCs9H!IbIQBUJHWS)AErpD-R+yCP<)ONA!juVN`%N*f3Y<@Jew}CxOpM#&^OS z>ri}!9Iq8eekAA&eLz(Y;k3ng;_ZAwretJ#NP8-V0N9Ap#ap}}ripWOgmX=a4zaPX zkkpmVx5YT(IM2-{K=ZbxaKH1mjz&S^+Tcm20bed{9pjL*c!J>6a(g#mx3y536x6 z=j3JC2tQ5Eav<_blqsQoH{k)I2Pe9)up-ExyH{~ zj(d}2u|O=J%e!eW8!GGt^^hPqwIEi8{=10}jV&?LC4g`w&+AfCBuFY1=lmo2N|+8u zW|fd+&+ao~ciiO%vivdwO-gdvE(AzR@)mFV#C_*eKayst81lf7i+`)LJZu?(q$6@8 z9Lb!{W6dIPx%<#9!7^ZpXj>BGws!I)YnFj451Am`okg5IsYYImIad! zd>ax~X~$1OM1;5eBo|hdCs-+&gs}fC7}&G_s$+}3I&TZK&ct(t{SSPKvwh+0#SDzN zoWXX7^M~jPZ+Rlhuu`CV>IlnC!~R{<>R+y3B{vR6H!ub;lb`ngns)z6c{V=i0w^R< zU$s-1KMUh^%^wDk492CL60vpK<%R2!d;ERL#vz!VbRXgvVDz)5^}o{psRl$1ZxjMZ z$@F=ee>eRRb(bN8)F{E3zaS`!pSW}Va1^f5(}dN1!;5qu7v6 zXa{SW_{;I*1VCaak%~qvp-nJou4&}2l}GS{*(GW{;SdP)zowbLQogP+B_ll%;a`JK zYwL%@tatq2o3n>fEL5n$r?CDOiRz(0^qJ_f(OJNJqPsP&SA5Kz?GuCxw?c}(zDDJh zpUS(>zb0$DQ8YVh18*y|}yVzX0u_xaagfyd?n|B3Mq@xj)AO~ZdVeqyf)q{VWTAk(AF3FY1V z9~N;m{uor#V?NZ!Q+YT2wa`9zvT*J#qIq&E@8lmaj$^Nq&hp8zBrBFO@A$t54IE7 zml5dTAoqy}rnCPY3Jts?AR{zh05*j6chg^&q1u3jBk4Q75dr@|VtKsn1Cfm?2G5aPncMicLT67n58*@L;EZAcZ;Lp zk*(2VoT~8@!6tH=;S~zKsRc~xIcGO^{39@0fd&cAxk|$~wb0~a1A~T+PprVFRa&9) zn_8HvBd(4~%XM792-`ZWSypao0VjVn?Vy58_^WVggcepfg_~M{8LTtXb@u4k``}a& zk{(|2qBpewv((i+Kv?jbsC&W~R(9J>Edc#JV5Uk2;K}g#4=t?h$6H!J(OD#eK;hTo zloL1>!WMR;)-(lnEQcKyH^TO$6C?O+zZTF{0KZ)zH;B3GL`ysFX^vu!Cb;_!hrOu^ zdeLC1y3p&~v<@w-Be*u0&U>O_g5*Sq$bPc~pkD@CLQ)9O{+qC;*Nj!Sj3L8IkgEeH z`X(cFdEmYXY}suLNQFJbgID$fVY@r^o zmt%%TjfpNjtiz6bI&V50KS=rv=o%{DQwuxZ(>SK%D%UWK4)gHo7A0V7zgYqb3xOM@ zF~ah6l6Th3gg4Pr-xuQ%T-Y4g{qE#qzh+6ir3DP&2nbGH^Maf-pnR-t9)^e`z6fqlmoQqjZb3GR3! z?mc#kN<8U)V<<7w5n#tXS|@F7nidIF-LC~Wd(2pvGcjo62B|v^z2uH9v=u>rAYu@j zdn7qmXko`aUBfO(1Wk%fq{oFmw6Noz=3=N}V!Eop*Ru?m;S%z@+dAMpPU^=g&+u$$ zPq-u!BD`M#7h6aLQP_i-c067B10i;z~tuSFlZ!?{&vn;z$CdxOlB;lVi0OWNJtR=Oc)8Nx|JH~_}H;Ik$vUiWJOwh~`H5C)1)aE!wkcHGkqVQHcX z#}?6IMhvI-nic<+b-=fq)L8h6<~eRk!A~Szv-9870!FB&8EYJ|>M{$ORIti-T!+5F zMB0IC+p@ly*$O55?tUvhp+v_Wr9oL%4ndwKnsdJv*k%Av;BP`WevZw>Xlc#g;Ffh@ zA5?G|#7rLx9H7GuwC0g;V+$>AdQ(wOC~0OK^d0wf+kz=@Y;jG(6@cp~%+ii~8Yf#q z$Ivo?`cHtbX-*_R^KP`%VG_WicI2*3a4j?WAzkx~xMdwWm>FWwk2&r$XunUhwBtPu zZo9zy6C%Kh@K0EW9rrYmba^wNpTRG?QuqkDAJ+UYZkeSXO#qI)!UUl3JKaEQ9vU~b z&=J+C%)LZl2hF-<@ZOD<=sf;Cf@;G312Ne;ta*9dG6u;#g7`qPziGgaEu5`uejqos zfH;kED`Gpv4Z{rB4LI@aG0eX_cU=*_z7SLLQ=uy^)!YZd2jq6 z2KvPG_ru;qPOm8A%R=d_tT)sP^-@wC2-t3oTuO zm&mEH7T9=~f}G!?z54GxF?;pvf& z-^zzfPN6>tW)pjiz^tyX@EQZ2Axw{wYP`Wya^TCP_p1#8@qr4Zt}tq~#NUS7$Pk+W zcu;~;fSD7lQWG9POamqD%h&sd@g=PTj_?0kep?`YYbnv*KfW+NaEsCA<4=u8m4tiR z_zabm5S_WXc$8v#!U=wQdz1i0TuX_P#aEW&aDd0L07X~CV>Cg!LYGJ3T*=oQlV|hf1WLXI1m~bW&7y)4lUG<<> zH{>;v@yKG|E%B*T+~O9Cmb96YNt_h|<7}wD;1>C3W5XolyzHLjC52*q@n+cb_^TUw zFhfPgYh7|H#owJF^`oz9CJo;nLJ{MgSu`qgyDnJq@qYOC+ya~*uXRq)5`R^(pi@m7 z;hPV{Wbb?+D|%lg9>V?Zl0zdpJVC0J74Z|?hRuO+;T_(RqdD4TLmfv+`bVd!k$ekc!23Xh`n&AkQ#i(XR~!E`_p8QUfpG0E z;ono5(9Ab=I3amEfH#qx_L`{7S-F2fzy@&l!@vIpkz2a#uUz8vy&VAra>KiR%1;FI zTe|JPS0y~%-EBDbV>fMY#E||e*@-b-QH5fziTA$*FD4yT&N~) zf=KW^_E*1QWw55W>)phO+Kq@qv%mTcTL<7qcfA`pOwG6;vu)a9ml&JWFC(%m!18xL z-;*NfbNhliX_uT4$oHMzBMU+f!?mlebYb76? zyWR~Fl%zHB*Sld)Y|&*&YAe!vSZYZk$NfFBG*-ZaTLqfzB(-EGgn-+RmQci!o!}p5 zKeDq1Qi5q-5iqjso7R%S7wO+P%;XiV1vnr3rs-QUTo3hcRtp@7d;?=fKdcsEC*((~ z#WE@a>|{S$Etb0xJC*(@7dZt`Dd~sRVtE-eOOuGpuKmqwkrZcA!1^Ld&iKZj)(@*i z@|?+!))!0E1E!b#Xth|P9spbHN2`UqMaoISGx@MuEKv{sTK1#WB8RcOVtuhhJvdP4 zk0Q_WH-vQkuv#nuBUV8B(Q4rU)mN+*Q|ALcray|dom$x2`eC(*!c=~=S|kyge6w04 z6`Fjr5wREK8(U33tQI!3ezRIEQ4dkm_T!doD^y@jSvDW?&ucxF&4(x``(|&-4M}e- zn-5S^_RTtM*?cm~=99^0;7vAzepoG*%?IB_`_VdV*?fQzwjZr8mdz(O0w?i|{0(3Y z`_R7R_%Z8`S_@8i_DyR6JI220jOA^kkgxBS3k2%u3*~>C?1X}0KI@u zhbhPSpy*6+{g*^%x5tWH2FHLhX&&n`6UCRO=dYiWGC;+HXZeYglH+r7kF31&rRMx- zdWZ$5aGM{alx+ho^9nF7at{>X838vRA1GjrDZaxJwOkMyZC(auJ>S+eK(=Gki%T1I zO%mu4n`2@saaaO}pR69_BQblZxypRlbp1U3+&&L?-S{|8_x*kQ{42aRP6h?Bh~P>S z+SOFJ4@KK=aS|28<^<>%u6AAHGkg9DF@r>1lZ~p!)}1iW5S6oR&{eX$-tPtoJW2ck z!GYr;!B+8p_bHfhK+1QZSJh_LUBhfUr!r8<2d=j?V~VCClv|{n)sA26CtQSa*TG4l zsff54k!zxTp1^J$iV7(89;_dego3B~hl_pDHjr}!oTglH0IrqdVijwfga%-v1CfOf zdtaUcNNqEJ*!J}WoBH}F`3|HmqDCEi3_#EUKTmujh({y2j1t+u^BHVp98ePnLr3f zz_AbB>K}ICVzt4fBb7}H!el`<6{#uOcFB2$?-y_hc>!*)P4?pK;HUDs|FUZdU`!1ty-(e(;a~aOJOefZ+H71Kx1NOZrI8 zAV&v=95l}!NNdiB6O`_n`~2BnE7>xj34(Cm3!YMlUc3E}Xh1b#+kmRm!M!+cLyj`Q zAaM=?S%MS?#ySKfz#C?ca8CF%283fa09Qn7$CeJxfrzLM95{|u(7y9_>Jdk`)i_0u&-V zs857$bmD1OPi^(h3-e+uFuUlyK@q(of+_ zEpTeFaRWPntih0LGJurAQEWIHm?@&%c3J$<%2LL%qi;57ip0x8J z1xax4|F8oW6HmsJq{U8yrx?jFCdV~Z16U3Uz>#~Z;*_;T503xa+9nnSuf9BQQj&(Y z9_E+C2*6H)o+Sy!ir#ix2nqPG?duZ{07uz0oPBWAP=JHtiCqUgibzhd!@v)-Ef*pN zKJ387#E*dUle7f4YBivlUEodD&@Rs|rxtb} ziLNXlZ%_y9S`T@vKAf-X#DZjs-*?p$qi|#u9J>^uid0V>0erO1Ue&u{E$HB^<6T0y zIok^!swAA(7J4m|;Jh3`r*OX$fGHhpthE;c1U?+_1#yy9Hl^cmgTyM4CoWE$T`O3E zWHIQtiH3mb9zq8`Z2S6T7byt01q>Od5|WqWSR&CI2w7P|h#L>7G5fs4W8 zN=~*#Qn8|D1D)9+6Qh9`%dDO(8Ya+f$P;EPSO`}5ut~SKoDHA9Oxg=;4_mu0t)FZ9fx3Aa4pf2 zN+v-E3j;XQ5fpQH7&Z?oa3k5cE@k2dgiR(z9!U>4EVSGjeCgTwFaai#gAzm>R8Gi* zscz0gBvy1clIMmLcbo=n%43Ko3~;44OcXIEz<%cBLgP?GrxIV`sUy)Uh|Q#o0CzV4 z#;#>fyTp6M3BDNNP)kxi6LV<`?T0%>it5QSfJjo26z6F7h#&3r2oxmz0*DOc4B*DI z)mqUlI7t`x7wp2%tf(22Q4 z-DbsCNc2ka4%V8}MAUw;ST^%mTdr>D%i^FNaR&m`0QeVZ_cnDQCgK8Z;!1InBVgh| zNnB^`7-Ce{60cn;UI8#pY9I_(lHJFkyRZs*J5L%)pe!)9WB{gyi1D>FY*$)u3S>dh zWzqbNl_<>cNbqBvl7yX9t&*9B@J$fHthk%%$PAH_`WT}L=mFzxK z%Pnf^q&0BT%dzA1LHcRtUGlXPvuUlnsSX_@QYjg%W##Ko9P6BO;qrmxTy36JfJcz7 z)`)g3Z`)<(0U!Wdu@I3Q4)l~xZ6%2EN^!Ud)(x~clBaUc>)6+_xLqkuN;2@xYBXR4 z`Lt}|us%A+PD%@0cnBT=Fauk#@%d{womW~1W=K*x<>VFVQKDMs-BibZ6>U54spK9d zhQ*4zsjd{e7kJK`RVh$x#{aItXI^%mgc2l^9LNMlv~U^n3a(*eUKS_Qy4>dEvmpxc z*x16Y0bgDz-hixk1c3uZC_=f>{2Hp|mExqBM4$vyfFqN;PN!}SvhqrCz=R3cL8$B(6-oweF_62Kg5+9IPVbNh||nvW6si*}CLo;Dm-dkz~rj zRIvsVd8K#?Y$EBf1WxCOCfYjhraE%i^vGS33kUS8ptkpCa08(M?oU`jaxx<+TI=q! zuHk&mpjr~q04E->wAY{+FUL+62PQ8okvD4CZCm#>+{G)!0XC2%>Y}oRyR!Yh2C8^j z9R8J?SrUW88kHdt#u{ScmEvtpB5c?S_+f#W)2Um7L%dd8(aXWZr5>aJE52fPzEYfQ z(Jkpy#LSSKvPk(exOK$B7nll2C<=EFphx`~+yGp|8Yu`$4O+u+Q2R5uA*o@Ykvuv8 zF;sy(MpQjjBI4(qGNsb_>G5k@QqxhL9x! z9~J<)!w6RdkDFS^nSNxWrkT)%hpecpS>SGJLEr{~w;4I1`eF*Rv?rb(lT;vD09_8l zaTK!$On$QFm2k@#u!V~J2PcYI7nV4*u)>bs)B@=gu^tNmWQ)9FiZ=;$xVo2aY5_3{ zw+TU{1p`0ubrKn|UkjvahH;q&v@tDNY{M+A?8lqN(2)0i1RIzGk2~wM(knamrWUxz z3RDe5q;nacva;=or$gxLkpqQT2w;xMf*M-baZi)imHkDQ z7;cv~7t5TSOKT1Rw@@o;SAsmyuy6%Rw&>8pj(ZwFSEN`0SAn_a5(+KsxTkT<%E5Cb z3l46Ub+CkzP-nmWP{7iY&~T79sQ_{Y&dl~hFrM!+OBF!`XuB)1gW!8+^4Mx##aq^a zw1+s{VBv&$7tGHvh8_1b<|k;hAKQVJ&}oDgcHGk>I>MQh%v0GE3;4 z@lVD#WJEMV`y0lv<2_v?cMX`HF!uq1)&}`$&9r^f7$gS{iKnWBT}QG)8^f9r{H7KL zbi`$k9|WX|A4F(j#V`Ms78=~dC*10AZyysFo6y3J_cRhPR}cDbJT3>InnMda^4@KN z&5de$LCu$8Q>RnDgl$IE% z5FIc)NM7eeu^?!GjZS2g6fS_@553Lr*mm7cjrwlkbVGP z&>jXHRd^LRvNdb>O)U^}0@!MO#95^s(r|jO8N_dDfuI)h$sNTnrbWwX`(e#yeoG6; z=@>{s%06-iVtNQI?08S3;KLC(gu;ZQvm{~m4v0ac1n&U6Du;ZSVEWxhLP~(w}W;n%y%#a<})^Th1J~@u34f&B}&p zUm#ARgC#uM+ifKJQ(qP^xOf9I(m?#x8O0_3st~=c5f`U-1Pkn5w1EYUGXAO|O~@u% z0M4SNaH{ood&6wwt$Lc51r8$G7x*V{UluI8c&)N9wnhuSSG<&;UKX&tc&!V)U|aSM zcENp(Hh`zByHd|!iBWu?DbzXifp6cF437$q^QuDEysa>W)|?FXlD@U=9$@Y`ugX7fl`fk zX2aR#Uz!DXC)xpp^9f6{;mlp|d!sEZ_`UI06+1)Va+K5a&-jA)8*RgXOZ$(Z4Hu`N zsR$Pf=m#Hym?9r=+48~g<-?e5K}?ZvK!?Z&&>`|+Q)6(JsIm1&0Yl+$0)`?VR*S)f zB?cEpK#2Wq#$AcdlK{O)ZPuXRrpPyI&_IL|!A;>uLw&?e+rC-11sF*FX0-@zihQ$L z0_LLNrhqXfxGD0X-Immn-Xl)ITO?B?2rDTNLf&$U%p$oHwVZ;mNESkGaYjUYhDRis z|MZ&@F22V0&AMcGMA&idM{CdUh$KUrlruac$u*|mtQNx~BAKN9sL(Nzq)K10S`3ef zxLf_v@Q6}QS$T!iUO%iahDU__XFpmkhDVed9udh}^lyeoB>7aNILEYpSS^M}Bso6x zN2|r~h)|>0k5-G}5lP+&d6V;1KdctRBa%c5`lHn%=)Ur%)na%=so@a``oH`wKvx+a zkpQ^sk5xDrV3BI#dW8F6BB0=GmAK8c^*Foa(Y41ld=Md&`yOgjH+DS^h~S<5LvonF`l*!V{hHD_%< zNn``+3%n3GS? zmyN@-wl3R-XKmdu%w^B;iMJ~!Ag+vT>& zVYENkNII8BxH4ll{W^E@kIvuULF-g8Q?NX5r#9)+KbKZ$QBGC<)piBrjfv1Hl8NS7 zCrKunXQeZlXr6VV3@KfXQhw30a*%RjXjwT%dDgPVh6tt`zi3%wy5v;k7cI+~816(# zE=ky2PDsi?Z~&Q;(w5Y5#3K_UiSp6T3*%ypi7_6=SQz7AjDa!!#n>0)UW|EJkS(Ka zDe)QNoA5Zp!SLSTa6TY4od)&Jy*xjXlteVI&u{(f{nO)%rlxsr`&VqcBrdx9JU)CK zpI@@%6Hu*onse%ZeS5uYABVdqKA+piPoreAsel&3%Y*BDAOKS0DQEvYaxam$ksVLj zyRQ#zKhBAQ&Tfsv;q1#DeV{{!!w<_H^BessBz^+nY{cMJfU8D+V2QV6>2#&TP714c zB=25DAWqFuPi_oi{f~I*6XpR76()+z$`~=}>dQYXXYJZtl|aksba58n=~+zTqN)YB zjbIKa2Wxx?E0D@(W-HpYS&WXpIbS}}H)l>U`sU0nN8ePfs~(>5SN&u1&y!u%c9tp$ ze82<11-%tu4sX( z+m!Tu0%+8XL_>+i-n|k0M5L;1=Yr21RGc>aE52}Z@mh7Y-(6+0hBAdO_HW{0OU&Qv zn_@1u1kUPxb8fc8{IlvTmRapY1iw?F`2F+q)AKoPimmT(n7+Io4!;|_w@*Ti8DE7I z!8^c1AFp15h=zdS1Os^Z(+jBF{pZ7L+dYg2M)1$=#lN_H<-I{ig-76Dcm)2P6>?FU z)0;T}-g3YQFslB`;l#7v;f8f0z zDCVOro8S%$=59epzUZIhE$BopTIhHIE^;Qof94qAG3=sy3`z@&jxpXPn94zzPkmd6t&E?e-7_V033y`G%iKv0w z{JnMt*5u3w4i0)}u3+JP7&!uy{cC*iRiR2}hdD~vGGRUOofv=v1Fa`*2-yeJ3G5+Y zV{q8S(QcRyrrr{tcy|fiEt0&$T|!qBS0Guy#P$Lqt@e$(Uw*7VT2{TD@#>D? zw*U2T_>+GA=COVF^}ohp&PRK(*aOZnZx4Fq>VsUmK)LF(T)af-qoBd5WdP$jgm9h- zoq3z#!aHR+gVi;#GU%v?fyxkI8lV{vTfzi^*ZA?9$`_wSRzOSt+)TKv1=Os2CTNrF znT2CNvHkd0-?^gr@i1oGeeW487h{HM;e9zbV`d78Al%Qy8eNOUOdEeyPb4#IEH?OP zF|K_tVX)`juiCMvhlCkbmfS1RF0r`YcGL$#1&esC^Ys;f)xSWdxWrWB?y=G`MjdYf zsLuVWGIF3i=_$7O8$<_eh8Zvtt)Lx-X7iDN3_TO=Zx;up{>_e5V_G$}4~M9+t%>oi zprdLn#<}9Es^82;A&zqE$|yufHr*9H)P4qp*&Gn&8En)cX=_5whUm&6$v*b?P0uZ1?E@U%oylfAig2(FvHRn7q^Vf_!CGDn6)bjR{H>zg?;hoifHcPO)LrdT^Fbc#3F-OO6X+mTnb%(5|J?Lb4J%(69NW%TUTc9!!x zT4tWNnVpS}2Wk&}Tee-a9jRXXcE*&%3h8}mh5VGjm33-qxeKB#%}aE42E+=XM>w_Q zCk73furY0*hGq8rLNc~o513}CiiNo%6^hak;mQ-8P6;pvON_u#HoeFKB zh@~YzMQAL6bz1z$;v_qJe?Zopq=}A2JJBF%gT3|%!_Idcv^TVR_`>JQ1AQxUFWaU zzrQ$VWnDFd51n%M`1YkR{pEbqUzq$vKRE@n;9Hr?jejx$PDJk2AVdL04eUz*s@Dts zia(g%`S1O1)aC*YWFCy>z-a!9=Dui}0droQ%?P}2?uh1%Xn7PrP|fqcDBSp0)eYiJ z!?W^UmKf3UB8tikzZhlW-ucML?^;$IdwJHfmJSgP%)9nxYZH#xTf)4>&Y9=f32HXH zbLKf(!noEY(RuX1HIFqw82#fgrO_En9_^J*x3J{yxe6S%DZRdBv_)iv(Kf@Q021jp z%6Q>X>OB$un$+zt^6EYCadVS|AvY)9|hLQ5dLrlTIK&v|xt= zF#)nIVb>+l9FjXQYZKhYyl>9TM6}K|$E9=STHT82;^qD&sefu8?s3H(@9-a(l__)& zFwSHIGod&hQ*#?t=|v4v5!KyV?c%JWZemlyb=M7;ATom7O;s~9KG6Z1R54R*{Qdb* zjlR0DD)Com1||Ngf0@ncSEU{0nBsNog(Y%TdXlTsyOR`?-l0KJhKi@a0;hMXV2AZd z@6=FWPcldPq(*0ZnoDrxhQFftKRpFbGQHCr=~`mZLd5%x!0e^{baA_g*1MSTqpwQz zfWHe{mV3i`tB~PbY83VU{`wCLfEzc|YgddNyZ&-^l5gmf9_w~-%zRdKMNM0yH~J!} zL`!KacC9R0)@UiyDVd%~#TMTp+GS>zYKvYmbG2?%UlrD-$s)p>;g+NWUtA!foj1O0 z@o$b7&}GM4!b^b0?crGAE}&z;2g6-J*9~_KcL8G){X`hJQU9(BjH{nugZqj9C=8w| z{)5Y$THuPkvm`F-u*LqBHhz3DPe*CVSa;ZRcbAM)_ph`G1USUITTpA~V$Y6_A&43N zl@1b#f2D)i;$LZt0$602_!yLvCx+2GOC~oh0r>G2bm10TM!bM-QMBLgF6qK;;5&kr z-M^!96}>i}B9iN>D>=Sp7v;;cvy3a)anOD?c`@elTeA;qKT; zx3XdNEo3|4!{3VSm&LIlzLbc!LSu_dsiTOUe2Y)1qexhn4XYnKPdCVwgaGMSHi&`1 zm|2kxt8Ze0lyt9)$rOp&vwU(1nbxdh8&?11d$!@^x7dAg@AZ$xR)2#UK@9mqV;i&- zN${1Uq`PB=H6SJZMQrsK{HZu4pZxVUtp3TjZ^Pa{`2lWN{opf5N&oO|?=SwOj^W$t z<5}!)#a4d_!HKsL^!peF+^qx!|KbhmXvJ2alKxigMqZqP9jzFHxi|+qirC&?LWdkh z?Brj9ha5$0^_TD=M-f~7C4k6L#8!U^A&M6B1SMvFp;B(5zG=!doL zm;yoYkNic9RoI|}Qz#^Eu?=cC642?zw?Pr75KGd^hLd05n54*tli#!tf&=BBF)X4MTvZ1p!N<`kETN#3BEQw%F9;=lLPpoUP(kdILm zj4N6F4GOw|a+PdQ(Fr1!w&Gv?GzjlF1$dW|1Z>udfAs@&7I4r0R?ONUfMf2C1xb8^ zx-Jcp_y&bt8k}J_sO-`pBX3aJ1+*{$Q*#eL_z7%K+yxXe0crEMV%O^u`x8Ab$de`n zBiqK`ie9e*6z4CZ#4n(7{vvw4o&nG~#-a!883dhYVZxb#C0Gh#;V zo6U$(A2=@dqm{#sC!Wx8&kprf(tl_P*JFJQVJx8;t=Evv;`LF600jAm$tO5g{$XIJ zz+XGT?0&J((s-2`_Vf*SgeM^3GD6W6**Mb*p45QckW!iqchf{->wX}mI`LzqsRsJ4 zAdK{VoJ1KAy6#`@-X8D&?;9C?K9gId$;cxNxMMo>u&Fx=`#ho)+^P;tjzq(<*^vv*&Z_&3!dm$P+IgY$bx9GCs zRnOc^{8j&4h_det`zl)X5(ylCRp-KPm%uCew~KLbddG%HpVPU{U1jk-vwMi#UUr?> zrKP17<#n{9=C>HYO#NhGiuLObBk?wMIPV-r+*G5ZeFuWWELgzPqU?&&(YROtNk=J=BleRj8`-#4~=wqX=E>^4P ztIL*+zPdO(MPCgOXs5}KzR!jV>lA%;K8>Pp&L>Rt&BZPnebpi-Zuf~#$}^w%DI<|< zIvjzB&D*gwVA3-{mXp`Lu|H0)`*ADq@7v~zi{`E@hx`c_3tt+4 zb!H#qug=U(^i{MP-a~RRk4I}=98%-2`cG+%K2=>^yjB%j>oSInqzivZ#=gaG+pZd$ zu1Whc$)+I$uKDlj#jGD6kAIo`Yroi{qwNbLMNppotBmLD|0_(DFgWe`~i$yuL@<}4g!@mFW+^B=Xf5nQh#nmX4;C3J8|#d8pCN(orC!ma z?nDdxULEPvclsCWvSV(Ar+5*v4Q*fQp%9Mmoeu8AAX&r)5qL(>e7}6X2Yz?#bK<(& z9*a}ok>FC}8O04&)OYWv%rny}W_+WLc1`q5mWT(bU~2WGVm7tr5lp_gI$p)Pc zS%vi)fgzj-(IL&pSoBRL6eAa9w=SShn4629C&~YkUh0CslwY6QPj6%W!~gv2kH7h! zzx_QOAM%M*rmbX}uFGWVq~k>1m5Pd@4{{XfgY;A%WMAlmoILtq5u)#B?VGmAH2wVe z^!D&@f8IQ)f?G1~wmo25SQQWrLXEau`tQ}yCSz^9lg#-9D->gb-Yxpd{!m_Gxki+mv6n%gxV;+?q2ML~}#vnN4<8f#+ za%A_QIbu!t^l)ayFqK0Fcz?(K*3;cP6pl*wtEL{=4l>e~C|OVe zb$#C#ZEAx0tzc4FY#TTJJ797DHyc@GR^0KTNf! zv?&J;cbVbSnPjcnpNH}B)9YtJ7nV;abTo<@U^{9u($sC0bU|HXS8uISyVgBQJ^&O< z^6@|J9|vdcQ$ybKaby2#@+*>H$x zxQ+GS&yJ|af)(;#gc=W^g*Kc$A;!ZLO(w1=-%{F@Wa9tRSIfcmXZ;jI(~lzfJFky& zvCRb&JoMSW9r)%?{G8Dfiz2u4ay+U|T{BE?k2P#mki zoyH-b5P#J_w#DobuXVo3;;;H=?95pzMq+vvtBf7*zvhi2_tF_oN zW2z18fGiK4w;?dwJnJmY{&LLQyO|G*hXi~qYp|-TJ|UT1KQ%G~>bT&d- zz0H?%I$l7x;SwkvFQ9vMxnJT1 zl%yBG!FU1PZws#;FQ5yzION3(*iM|q#%KYv`7G|K@dCPVFx=jiHokZXjE=XU3%5vt z@dA1VF0x>}fUfis5*;sKhu19m#S7@dE#c7d0=jTZFm$wlowkd&L%e`4+~VyJFQ7Ya z@pgz8(1lyP9pVLa;TDa2ynwF5;_VPGpgV2}e~uThh4Zhpc`z)Y&(RjlS!D@)ju+5{ zTf&~>1$5z-pyzl2UAQIWIbJ{)ZV7mf7tkFi*~wQ>l6_o(-KKJxs+dE!FJhYX6&6vv z^X1Y#1y6glqQ zZS`tvU|ErJ-n{o*X7Go;RBxn3`}NML!b56Qs;tKBpx zW$mVc)v}ugb%)(Fh}d@1fK%jhX|qX;iq_P1B(*{aCNK)?@%6225W<`fbHH zAoH+9qVWNx&%0yv4~NYSO1&dvcDdWUeRo*j53{cwKfyboLE3RxVzaWXTh@+$;!JWf zLUH4k(*gPgIfur|!Mhwty{)L1_4q&a8AUCHy;&teL0MvVP%;D@uTx~t41pY}a-WF`iKkUrQ;6MDT9icW zg4(Wi9TE^Wvt;HkGl$Tc*-g#Z;RDqzrs-pd9gX%)PQ&{CVcZ{fk~@FATdls^xSN^w z^+e+cssOZeSC%uXmLO2y*W3UWJFl3%c2q*z1as14Ckt96g@xro^6< z%mNc(cOupdh}vvVp(*kRW_!v^S8RgV<|B2(r*cIS%2V-&D3A1mC>=lUHuvrpqQ?S% z`4SF%kcApo)V{C?02Ez7spO;hVt9b3&9H_m&*sjpZ&CWI%UYfjEV#^|XZuRx;{oQb=|Mt`0heJ`}eD1fuvt}$1!S8OjMm3Vd?^|)!tx=?R z9{Le(r*$(=WOnQ^^VW}fyS+QS-QK$02MmTFv#dn8W!+B*>@30fc$8vpDo_`*WnhEN zmH|zfEyD{oTjDX|;3<qp`cSjYsyV>F+_T4=2o!Idrra*-fulMfx$2ERvFWZbYage-vbe z@5)6eZ=l5EIk`<*s&vJ^Y7G06wTD;(3`@_^v*&3$k#V5LO^E>K84lD6@3Pl-QT*|5-2>i zX#hWS(7*_oExBDdjEG{PI6b@O?QZ*Uzc2g0h`Z|PzpPgJPpj2mil2tvaLWuLRe8Jl z!_Dhqo}q8u-mUiscfUrR)b(<+xxdH1+-`1eAd=i{xA)+W+qqmuC@Hc5fmB7KneZZ$ zYA#$kbO2iF>0NPq(PP|RhSJ-o6qSSz6%9-Z{F&x`=84~efvK8~OZ;;sv- z5+07yAAJc5;2b)tX%RX%b*QUccUjdUJSJ=Fy6bx=0Nv1aMFlC{pT5~L&}6eESEYW< z!j?e%<>M5iCcYDys3TK!`7y`T<0d;K>C>Qn0Nj%akl z$c2io9{88*3cQ`y+H7v|KHt0jsvTSj?QYh>vf3?up`p-J8>27~b+hWdzBx!%onapC z@nyeS-46Gw)!&ADK@8u2`Sq9IJ@3n|-Jsgt9MDPrHXI~+>U;l9dR2Gs4^dZ6y@RV+ z<6MQ%=ge15{&Sboi{QR~r|MH+^fn)gVnhzj0@`j(hD0oxl{}i$>_F(VUF&wg$5+{) z`uKnSAbZ-w$^a6ysF7AdygwNPrd&-__*w>Zuxn2I@~*(($^WR31>!cEJBh zEVEX&rMBeHTg#*S>bkZ7ike*4H&a(=nRVts2)V1EBfps9>4i%?e>E$&xo_L7z=L== zyxZ_^ofUHZo^sON79>~ekYN}}E)Y4? z4b8BC;0Zwp%#zuhD>~IHT)8^pg7EaJ=X25_?H(+Do4dEG)i3;0-U(nbui$|!nat*F ztZPr?)IUaJagXjpk2@!3$;v7~5>y6~j}WOVqR~DwpW`%xryo)8d}@{|D~bi+gLDlz z%642jC-RMFe9Wein=+fKycGSmk8BG3f&p$9Jl)T6)bo@*uzM$rPg+lcEkB+JMr43q z>2StZE#5r?I=8}4%+jjzemeTcI+df zj#@TzD$l#~?m{Go$2N9ncJmPqq+420OlyR}PaSs@R3&MTpHKcVJxJ^L-*H=M+NwbM z(hO>t7Qrmpved54CrGd(IHkV)n5W9Cj5=d$CLUVAA?CvP?s!AQ_vADn+KrpTax=W$ zqdxfn#($iVbZ(fCSXAXTk_KW@DB6De&)YR5wAmF^U*%%~BYB0y9LJVoTL&EXzPZGAGmHXDqvp;Z-K9qUkFBu$e+fFX}AtHa|y_})u0s;`*(?iqq3(89_M$V!BegdTYZIa&%^pA%rKD;nn|hn)#b1zcZu`HI2K>G2fJC9NS^ptB zTp$@&C{k24&4Pq)!3V^ijLSXKd_F$@=O#XE?r%g_gv?hN=uO|@0L$6=RKR>T5(EN0 z>gnSlq?~4J(4vYkz5qHC{FPa;R}ilyjdj8m|N&B3k@8hPAD$3T<)9lyZa`u<=UVE za=RNhyr-_UuOWuc9n!{?Jp@H$ZNdehFgtZ^U;g~vm+?eaGCiDE@%hwkb$bu>=djyI zQmVf_+=yoI<=&DN1poPG1sdLE#auxA92Pj4^QV54;vAu_j&U-+FE{q zspV(4f4Dgm*|NDCZq{(0+upgm!-h($0^;;TJ0cGWKA>&hKkOX7&+@}8k~ow~z~9+| z6#fG+AmGTqPGnaDb2ZjeRW!w%kMM!792|z>$=7u7Gy|iN+L9{FkJv<>E%%jIkz>gy zKe4n`*LOpPB1^?dQnHVkqkW={m(zhO9ZV16f{4xggso@z;p#idYfQC0YW{Iwn5gcc z5h<}FP@V-^EY(J*AF(1lq7+X-shxZ7K+1XhFx~)&XureU(33!sH1@zKz{eAk=RZP2 zaew6_%O85qb=M$8BeJk|^H|l;$)30;WN%>ZVn>X!nE@t}fASB^O?;D2z4z|2`**66ewtjfYL=&Qe_7*7jcPYQHw!vZup&HXF2HbX8&#t7mDA3BazCfuXBc(`X!xeyGfJ$XEZ0$Ab{DP@buM@P%a(<(t?K?6g{ zKi0PoFgmh|&)*&n-h5K$3*xjOK4oCbre678g++EM#|L;TJuK3>dGoNKXP(_Z9M(%& ztZ&439p*Erj-cQ!Tt7EHp{yEUj1ihjN9c3cjtCpe0M|<;xxsO> z^F%}a@(6ba-GyL-cCJx=6GgDF4v$R)FT8k?x!lDD;HX2?V~_Rs9T;(l*S#X76W!`_ zi@+7`B_ezPvH>fHi^i??RZ}8koD*lYx*7u)d1)~X*8<(gJJ-Rc2*TgD&_FK7npP(f z_0O!M^-zWG;9Qa6UNxo-WO^Qi$B-|bgm!N#bYD=utE)loV7kjeg0%Z(kYsnjlWcv? zKqd=-b>@n)^;^FTkJ`ONZRU4C?|4gn2gN8Vsg52?Uj|0)&c#nNOh?c_gKSo=6$FXL z0K|Uj;I%tL`Fd2!8b!)L&}9v1*6x?VusgyKR^Nc-YQel0vuparGkUOKV)|pz*#}6z ztJSjG-a?4Q=Rfdw4Z^%KRi&Fi50Tr#xqispQMeD13Nqi1*)$Ij6f;+6u&y*i4pa5m z<_+xEa3~AxzS%Ue+Gb0T5!q`+!JWYNJo-E_ARk*jENH5z5_p!ll2{gMKXuK~r&acC z2aP*q9ViL&!u#fY`f1DaHx2tVl>Hf$bs0RUIwe!!6F%{N`{~`o-ESU`w1{|b@QR#U znjDu#cvR7&i;hSi*5cLS;Mf6T1&5Zq{osq{xx4r7W_#~et6%?+0(wt1CLqD9)i-W@ zczZ&TTWAYG(3T3-tvcuQ4MS!9H2(I_UB!QSe!8ce3U2muxZ>qR^{Dl7y~k!S44KOi zZWil~8eDS*vc)lBf;~f!mh7e~` zVz3w;!2VD|LFzAj_YUtIJ?6zSmkDc!7st$|>4;RheEkgKzd3%4OS79^F={&e#JDtj z0ea5qz#P-wnPXErJ*#GxdPkJYRn4x>5@!jIQ^!$bSsUb2bJ5~%0;PUBjHndf2IZPP z1Lam250dwQ*Figjd}`+_Py=tF5aMGPkGe=MV_#UfEgZK@NRJ1$b; z1C=o{r2K$~CrSOECIx?T?zBUq9#o`uBP;~{JgY<)K-7)M&<4kcwuNGUaPYM*;r}nDnK1H>U8=>=~#7io$^1 zfwUEPF!>;f2NVwm6(ycEyf0ISP{k&ne$cRD1n)n=@zuZ{JSXt4!cgFoFB<416o+Vk$8_Y9!Bsx!vP5YgHIj?_@Ddj-fd8<3Q$7>e9!6(v=|Jnq;3JpAtKx&MmrB!=L0 zqHtfs_6>yy3W1LqG=uGci1FD+uc$iax`9SmWSbhXCo_D?J1+?=mqdbq$Hn;vJ~OKFOW|K`l;N(9I-(64qKfM;*!IZq$GzM6okGRrr*}%Rvc2Q z7S-e7!w&03Rv@C!({q_x=EuyM8GZoCbgK*s@hgJ=Tin~<&tO0+gd$V=<;=%HY?9|NMsN z1-BB_91IgWRf^hS6VifBG!l3wRP#0#cC<|ueXb|^KsWJTHO z6r?SIj+=KGm>shv`L)2`nau;KGFzrEHpunnm_$N>c{Q6yHq>rPBkg$AsOD^9Kh!!O@BZn%#bVvl+|o|NZS(AO-Od^XOrv|FT;B<9Sv>sQb$up zk+{}-!f-w6wHw$)VIBGVg>qAu@TYK8A;x7mTd!r&Fox_SX*_P z{|q?uBalg+fU(rP^%0ZU7)yy6-@zjx>d2#9x&$gq@Zot6g+%!)Z*_qX?Sy8J76!EfH+V=a%UgUbdCtiyt51j`sg{W1j9!&Z&R z2R@^K4m$8veGgWrY>@UNgHv=~=kRrI#sX!x=KMs|u$u;?Z8i-U(`*@#rP(qfOS5S} z?Pg2jP+kTBfrRqf%XsS~u`(l)M_8GWSFo2@7lgTk8NlUwRnW-|!>9z?5o}9;M>Mfu z%)iR5KD8ymt@RG3rmy7>X;JeBq4MBi;4THtRyK@as?@#rIw0!rAK=U5p{Oq0h`@#s z)#bAhQToB((LBKzPHHzzzZZ}-k9N&b16ymhOn(*d3>1+-Sia6A&Ip8wBjVoqKM-LLL1JtRcOofy5&LrB2a%Sq*)miJ2ry7t# z(1#JBznBk4xd?6}=*ChfR`u00&bZx0^1<^9N0z~nEN{o6@8ORJhsqJOpe^9JGgN@w zsynuyXY0_ps7T-OFhCygKRCikJ$;5 ztGSo>^6aL3BOZSSG+=fU2n5;LIIeNjt=o6!z-E^oR=rql=VEU~#We zxRfdW6BUOpDLR_lgsKDcy(52`vmXotP5Szjjle%EF z7n}ny@ifRYmH4Yb(D*3yLse|i#{OSL zuB3VwgnLBVC74#AkE=#E^xoT7E}fe4UOJ92M%|UjqgQk?g3qP*KM;8SiT{4Ve>7S( z8+cIe#CO{*Gs5tY6A50x2?=n21IGL{`tIe~G0#A@4&0A91i55nE6CR2&Dee9A+k?kG3-9F zfA&c~2=W)~6BrG99w7qk6R?HdN4CK}=|@jihJDgOfXIV=0;Mw7rl`XU4e3*n`aI)w zMF_u2V8we1d3J8LZ&xT7QVs<|H&7f9YKkmoQK-~hCXJxKy8mJO_U&UF!+*igqUvbf z-7u=jvoFS~pP;RFNN|rV*n=%gd`5$8J&`VOj!T&>sP;ii)Kh`iIk(r03xPLx9 zWh~f5OA&@z@TBFuBsL1K88&X@SVZG4967S*AdInvb?;5s1yVBqT0-wR#D*(V*6y1;;$+vq$q zwFY;P`pDo%p4^mp`x&3>PaYTS#Xlm*(zCDSS`lP<1%jlr(3>~q75GUmQ+lMMspu48 zUJ&DXWc2jw_Y7r8L?T_&pS-+8>2bx2_iR7%tgDzxj zUE38eLrq3hF(~swjzC;ZPj#Z^ok!)6-8B8#LY{^*wJCU_Abe5tFVR6<0RwkoB@+za&9sk7*+(lNB^%O2?>)1R|? zXwS#)(pIM7=V-i-3PYwrT4Zfd+*vKzxnW4b% zO%+^qeFfpvA=2SiSL%%+1ja}4uBuDsiXa7JjSW|H!EAyykn!b{eIc34clK@BHz^8~ zeW3tAUr4g@$-d7a z&(PE?T?HQi`Yi_52FBZJK!&bKlGG!U(nP-BXWS)T5?0Gy%7swUh1LPK7#zvlW z{E!AEROG#RQ(OTgQD12;lFAzyJsn1(iqjmO3ca*#dYwvf#YHxOVwej7?w9K;qC&vz z5;b6UQ$de1disK*^4A{yic!;{6S)j@%~5M%t^{<{_ep=DUKLlYufP^wABsNd&ji^Q zQePBOH27^?0rcsl068I2SE8vTz&D5w;F%UK{fLn-B6UI}n2@cPS5P)EAKE2-TXgV} zS*}=^KF||=pb3q=qVW?YpV>uNDBTSCDll4qtkgD1kMd)R$E$K%l!e$+OU>{&!ooMf zEe3hzT4X6yKMnO;d^E!~n%vDnWI@Bjh7v*U>B69hA`m^_}LU*F4 zH38;0TQtm=T@;WpOFG8znpX5le`8cd$N@zCin%mz5LV6V6;q}2Nl`~{E(X$YD%OhW zx$IHX;X$O{Qw_5@wgxlOD@LS{P*()DzT~Y?*8o298rcH=AA+>dN3l1)q$5_U0oXa6 z*il8nKIx}P|5En3f}v2Qf@qa+5dvj$u16*rU((N&N@7f3TtV5WqF|r&w?M@?`^XjW zOZvGU&G^?axzwq1p7d7;&4^!HIzOly6xGzJmP>+xP9kkmAFC=p(--TdBogGPyEGr8 z*oUA~l%1vt7^)*Z*InB4P$v^(0PGG_-vm$YtIBFCVe(_gD9K0~E| z)HxL-f0d| z=1A0=li`n}<5(n3h*}SjkOHN%B^OeMqL9e%KFn^1Ki<3D9>J?`Hiw`2)6e?LoaZ~Y zpb*r0f5T!E?TDa4m%DC83WMC2wurJ1vTC79nS;}-Llx8!X}ORKv4L<56T^UD2%@G@2~|3*aXMk}}%|ZrW_gL!=;?wq^yn<8=uXDx4~45K0xiLU77On+^s#@s-Ws z#yre5l7+QxfhxicV%GCAt22kpRarT#qJq?J8W4otH1Kw2)97YmHjVzOX49ydwVSGp zcO+M4`$$dgrdJ$8;05ea11y?N$>kFa&89+fB;v~x4YNI+Sks1%MBN^huO~c9vwh(0 z&6epq3lgO{=1EdBuNSO(Ci_p!d3##;1p!mTkRwFSb){>3Q8%X2`OGRiB8(swn0pQ= z)@&)H6*%^agHH$SYer4q8#Rb&FddzP>~l!Rn^YX7Eg*(k+6zcWLttG}5kS=AnG2vI zGHqK?0Y$O(#I)OimMBL=RYVUaw*yTN88(SVW@2Kw7eI5bf~`sdLHJ?55{(1-GLqMowLr{xsR_A}>lwM5Q61fQwD3-wm(F z4YgZP5)oB<`k_YnG?I+WBl0Xym21kW(6q6qf{VXHvt!gDnN4FDzTGrXMYAdNV5w`3 zuxySRlM>iXiQp*tk@WNADGmjkXOEG7Q_<(%9yL5gvnlNz#Ef>+K>h5dJQ~I4%DfQ7 zM2}2iQ9gNa;uVYUJUWPLA>Y{1I{fMFsz>soG$R#)z=EYV+aUx^Ct5(y5Pfh3N;W93^#E zksmbot?koaJvk~cNU6J4MiWr{$XBnoUWkWc0x8nq4BjvYQ6grQKBYjIxk`{LC&9@7Ya*7Sn7B1%@sp zda#*&A}3)tm1~rJo>*I~$KhR|&?o44%y~$3I8Qntd(S7#lMZW2e!c9e?nuY1PDkgf zD;}!%>pMx?VQy5h!AUrS*+VZl_YRRK0SabM0cUs?5k}=t3Kaa3elha$*(Lp66l5@6 zI@X9QOTS8zFj^eacN4`9^YEfHWj9TKu8}jhM-_qkNfu2dYr&{nRD1XD2Zt1}>%C*C z+%@gJZkIRu1;1;9y(CCNmYoh&Xr{94v!$HARZ8~xXOV0D{IdukeEwO|U&0kgGfKH8 zU|jRA(&?l+LtL>pVS>|NIJLZ#7t)tRA%={nSfj+>gP$BqRnel*!SCeeuQ?VSg3F1j z5c}YDHm(Sm1T#l1g58<31%0Y?=5S{b;qp5%8(1BD52gh9&Q%A|QGQXe4cZ@k=lH=< z5WjpT4LwE<;?qSY8{0T>W~fk=4^_t-l(QdE@XeKyA-!n(qD37A)EyL0L(jsRO`{j3 z-4sUzWgmtX*W*XDo~kl)0MBxsxMZ7MqLRUE8vRbqreIx^6hC1h%&t+SH=D-jb+ak? zytG3kmzvg;Y_f11ffKM766mkpG-#>qra>&Ro9at`qDub64h2s=7V1wN$%K7`NVQO^ zJj%u9LCBGzf_Y@2%^seG4&~6JsA+Z;LL!r00Vskfy~!jM*Qot~xC|H>sD#2pbYU=; z8JPgPX&}F5(`Xd8n{x3{7_&R1W8z3X?NQTTY1Fveqo%)7a5$-#?j1eTuR}SLzz*5V z7Dznv6--?miGGx1%(=)OL{7zQ-^$toqmsHR<%+I=9A%(%GrB~b`2RoLk8nay~Tr?<|&}KEt$hp2*8Wc6nN@Q6-DHmZk4Lr5oG&};kX;6omO(Qg# zO{1V=H$5o^_4$mmg46?7V6G`VakC{=6a4TL2lHHUPe&8Be}Cq5Dj}s`nPRN)Ud{1U zWa4ub(>bwM>e{pyAGV5_L3$EQL)(@YhF*&ZEIl2#W zJh6D#T>@m;O;u1iv3S^B0;RQ^3doA4IK4}ZRWnDA9!6$UII(&7H=D-VEM`-B+{pIQ zVFi}R)P>OfT}BT)v$-IIC8dt8#!&Ldnw&~24}JObcVGVcv=#<1I_hO?_NeUl;UvRC z*7b--L7mLbWvIQa)yC6-PxL}k@kCzyYo>2en7zzU@w-Otj3U$QSm~hlr}z_jdXjoA z>8lUq$%cw#pb*tvC~1gqRP_Ua_Ffm$#~^TXR&wxf-t>$Cmp=tAD3QG$v!b$NPI(FSkM18EG05!IM>2i5)Z^q$r6CNGskP?t!3 zoINv-L_>=;7~J%E!PY`#uYBhS@J_+^5Q8hqCwgJC2Sp#5Bs?>-iy}5P7e7*p znmxT@P3^_fm57&jZuV8p8oC79Z+7A6oaTx{KOSLJk=gT5S|E`JSdp9nl&)B)$}#DS zAWuoIMHWu*d zrCzEIAjGq)P(*AEM~P2PE}=}%8vPXGcVAo@{&6vi{=4n&b~qf|u4jR|HF$M+4-Bx~ z;j|nWV?>T;TJc_mYbHNK!S1SfQm`A9X}8mAwLk0-guYt+!as%Kml0bOPO62|FQ;)S zTjrw8g?X>Fn3R^yqo{CAsZyMFUG<|wCbfQSr5rqtDM(Zh>ic$C00nJbXDAsvBbd6X z%G{MGM^r6Z=Be%&4f_1@pH%ka692W^99S-v zgO8cS-wh5HQ#AE5bW7LfBLEte!#D*K(=}=%x@I3wrLwwpDDDa`$fcP;IUR=wzybJ( zhJ^zD7Wi}-rLn3cBjTQm3 zX@bkqpXZLD_Q& zeUcyXDB5qjEV`ktt8T6wDyO2DYJ-Frb3V@UP>ZftvV@&WhRW1FfpIiPr~E^@8N^Pr zkJ2+<0G=oIuG~RjelDE=Eyn>)bCd=|+0nM07wAF>+1^j0{f|-VcZ~+*Wmb1 zN;W<-(k7k!yhxj{6fW94$pAcN%K!*w%M($-y2wCO%|QuW9wG&{(t(AYo`pym=g4FW zf%~wYwy1u4w}03pIZ9Css3|%3r6jPQlp*BldX5lJk6e`3r{S-pWlGlcH7l>hS1Qi{ zHXOxqNb#)p`gji{T@<36{dFxl& zb?0et*<3m&SKZEP*9~;koE8$#>+H!cE07SO9x5d7n&5~}2ulZc)ARdGquk6tCp7gvijMo@6;T zkDAWC?4#B&bPfWm-8uA0#|$xs#T=fFd|aDA8NZ~%do=f$^TgF`=pqM*@vM8 zTz%wP%}zcH4%Y!NN+lpsemBRDS^={uSk%-7P%EHY4brqZeso5)o2H{1S|fES>4@iO zW5KC=+X=p05gTJ%wNpCqd*>TG*(-358b!e_febZDhE!|4y+3SF$$j-B|NQcY zU*QDWyXt%sR6A+sH=Ix!E^ZFP58CH>3JLH8$ z64*5xhzc21;fiUjr!vdRe&{phrcXsWmBt{hKogga9ke|-Y4m~=hfi80E@<)4CP={Y z9kLQWAvWQYeLu2rA;w8e-+-2%(3FkQUd-*qlL;A@&u;MrWrpe{KC|3U5$G8;#;HV1 z30C6Mpn<^WlPgQxj>^IR2ew1mTr$i-K}2ZQuzk=GX`vJg*0G4@SUP3^Gcb5RfFG(-iq*)sA^X463G z%$8m?NDQNv>7W$EeTjY!pSTTts(OWYsy;X&&H?|b_UvGL@GO%#y$%s0`RooyT$ntA zqRqg@*fS7gM*kwa1CeWt=(9Tkk-a2dT=b!~JE$T%{r#$XIQmnYGiX|& zn4Hk=z>ABeLF^8EaWOHY-GLVuRWx=7UR+ev*d2IrG2^=3ffpCU0_+aFxR@f{?0_2p z@J0V~y8~ZbR5#llcyZAO-R{7Pi+N$~4!pRS7uN2;i;Ef5?GC)Sm`C02z>ABy!0ZmZ zI9BhZ?ceO+U5+@5m zdIzsSmz&a|O2*I>Gm2(Ra6=duczQLk6`_=dWFV&H;1y>4Z_c#F11wN^+0VsNS3@zY z)|dzOiovh)9((N$!X&o$81S68h*N3r<}kN=}(@zS6$u}5Fxjt zozfvfMSW#Nu7HUsSDU96rBSDvAcl7Rw=5UqBVZMSU@q z@7+>PBUJ=!q{zws5e>!h81Y5!77{^wR2}L;@)xYy{~P5;{mlzF;o#BpsIkDe!2g(+K-wji##7eW z>~#%?1FV(Ex5St8ymF7nsDzKm2hsRe7lHsApV?G*A0A*}t+KWmi@eYA{QJd6;o^cz z{Bv`^bBDu+?sm94Z1(#h_gMS*_w~&db&7$m5X{?G&Q*xeE!sxILW!*V{`IRjKYWX>SvD38G?=b|#<45aiG{&N?23GA`}OjG^2Y34hx}}aygeP_*nO%Ih}zmE~koW5O^A&#B?l%7!#3?CnkKRAh4nH40V9#UIWHmfs+hRuWOeV(;KvTdZ*@H6f z(JaremUw};^$H({VE}0v9STlQ{e-G<>M47~Ph$lJsOoYz77LEJ>?`DO$Sa)OR26vv z1}(W|c+cjTd?SHSn9Ye>NPX<4fmGN{gH&lZRhI3uctl^Ziu9|1b^?#fbAO-Q&05YF zl%e+Ywf36pI%WqkPn6W<&70bjlsYbvYw1wdp$>CelvIk=agXELXu0!*ffdTO&z)Ii!z)4`mY=(J;`DI>Az@jkCW zCeb6)++TE;x0}kP@TAi*ptpUG}-+h^49YiH_Ii)}zCa*;Ir0 zAy}V<_<`@-DAXtP?sllZ(jp)zN5&2W>Zw335*6GFsDV-^gKK>kpVfy76GxdO zXf5!IIP2n*Eb0FtEhl;6kWLvZ^qwj_8F=-`FI@8@RU>;r$(X>Ll7S9yra_hBrR$M> zW?J&9uO%X|K~Q2b*K?IGom8jxFk&|iugY#39+TZP+EUE5Qej9SC(G*f08eFwSFq(> zKOnSVoN{DPE6Wb>`gw+h-a?cLffKOLM>P^xoKo_IQab|zjFlO(zY9a)Y614@N*aZ^{o?#+NNqs#yXTe87%Vu6YRL0UFkQloI zC2#WMWWwwYM8wf!+3uj4+jQVn^nPL^ww}0ZTu#itRtJ^dqsOwj2LS*mDbf*?dcViQ z==Kb}xX9wz9e8mu+|KU6i;Eu1b_czGQgR{3vmc9?Rw) z)cGNLEZZG;aVIuw3;2|;h#t%K47|ALv21tX#hsY3%_Zr@rQfthsh!wH%^ApQMUQ23 z59-VwJ(lebM>Z%Gx8nH&_@c+MJp*4{^jNk#@ZzG!vfY6f7d@8k4o4m@dDDDxu_m%T z11~PtL^eBUXjrI;j3YL4*-9Hub7n}!?_C+$*P<^o3|1nsN!dUT?!bLzF`*?zO46{t znA>4&@}eB-d4?D>j%D8WNM4ua!{)u) zug0=jW>hU%;LqEYuGWRIOOP;h4zrUIeclx4Y+@%sv-nbbKp6WBYHJi~Uf{Oe3`pHF z_D}{-O9vz5+!x}mo!m4C2KK0AvD4erWCox=$@XT>5yR^3rph<-Bv15*=GiDuMEE%K zZ%I8fb-q!L5JhFrnAndYlO{l5B|a&a=SO*No+;tW!K+Jz6P~tu1qC@bvFqc@&2j`? zPRQ7T6n=e$(uHjc<90T*{Z!=B*oa{VLQCM8%=SEWu@JssUNMge_lyaT)5>?fLVZt1 zOkxhh6^Jz#T8I1#Nu73BzjNUKkvAwqO~xWeZN{Z4J?ilwQI4)E8>CBewd)pCHmUoi zg&#^+&TxS*Tcl5w70CzIbMjQpj$D2?Mzc9l4mVC}LJHA+@mo`@0X8H>OLHwf-ZlcqXmV#?~c^bcce_Bh9ERa3&Z$ZHTO+(*~ z9c+|SwPZ*(GtTAlpi-Ojwg^C1?40-D4fgsh_=^w*Y*_IxHwKpN<&6>E*qz6sK!~M; zGvm)XT!_|xc{ujuVRW%=B64bD1i z=c(>8R3TLWy!!ahQWfbBWnBhyZ5GsEsn4@^Pv=rAZNibi*T& z?|g+&RKE;g@o=+ctWaSp&kHD#vtdSzQ#LpF`|RopIEBwh5Idjd@${@-d8VjOF#*xt zQ#En!b<#?cVUGV||84-6mAPp^pjVeS0LOBS+$zt6&k4RINJ26k9(Hau!BGTBxWT$j z9f)Y-+Y1c8s%+0VSM`FrJ(bIm4NyIcxc_iy73x0Z3r@%7APqC}s}%54bFS&ZEyAHP zvXo}az)_kld8t5M{tC?YxH!<_KmyJ7KwK|d3{*7(Wgbey=c}0&z;V@_LuLw`kY)K%Btf<+Z5E5h*>`EnXJf@dd zub`zpFYS^oaH@J%FONr%4_-~;iLd}VE98gIJ4jW)%L=BPx950${l&}e^a&jw(#!3R zJHYy&bbYyotpqH21>B@AK`Gs~0J!}Ug`|@~7*oaL8^x;iW90OALU?G;Ifyn$KOXC+m@iB=2 z+W5z&5xZ<7x5O|0R<`^i`#%PwYXube8)n`Eim6MdiPJhExM}@lG0Yn`$=wWb&A>8U^MgXm$ z+2M(+m>+_pUhbnZyoeTHAG6|RHbdkU05ahQ+j((Byh>?z1pAlUDci^M#9Mu_UB;1A zgN9f8Vmr~dVGF8J%(4HMTXGM9nSHq(Zkaj{Y)3bL)WU5yUPaDUjYM}%YD9abImZ+ON!)MZoI&Seoao&XH;3FNQ9D{b#4x1QY1%?dU$lom%KDr_0)wLXrZL)+PAW82L` zj&g?8NsJuBzx(^)ZZrLcl8bpc>=DyL)LIqPf48w%7h$x<0BbE)dL>#yV|5DACnh8s6u2Z%DaEB0M5b#GK#y!hL?r*kY zf|v`?a%7b4sxs?f=umo)JR8_O&rAiJWv-A=z?&iyNN(6Oth~hB8=H4G_bb;UzuP=G zc);R+zMd3Yu^U9X@xuZB5ha)y)Y<7L_+?aZNH|e#GcX^eBFnpn+xnBcbE=bi&q^4Y zf}BT>iWtL(?ZW{TG59BoS0s|?IddpjQKLHNh#YFe8K~4V%4SXo8f;N&tALWPfz7Q0 za3Oy<_$_Z}!*dXuo(CGUPt;-9O?l;Fw*w2qX~buh?2LR;Z7J+JzO!aa%?r}cyoKEY zkoo(1Le!~SO9Z@NrM`yej03P2V?8Tp3jzQn_Na4*&O0}+f&I{Ny}7-=LGK)4=s8ZS zABGYoWtEWyXMdsh?Ze^NdnsU2M}g30?mHOyJTn`3AM-S*XCc>THw~oAZkm2`;z0uR z%}WuF3w-Bwh-`}Q`mYory+s{}TkY!j)Yr>iVsOPT#OIM`F;~jB47LlXTFHHs@y))_ z!l2tzU#>HPC&Z7~qEmFihu;xl^c+B+-38*D z!H)z%+Y%)Y7m2oOyDkUbfjh}ERa%{$kZm^Ai#+pX!s3Ea)^FP!NVObb5Ry9(7y^@k zIlbcm0S4~N7pMck9_J??7tfHF%p+t64(#)Uth%m+U%&`AlX6Dt%lw4uTwgm()D1A? zKxZ(`keHPcpCkeW39Fe&(g*P4??8Vo(u}kvWNgV0GB=7m17DB)9|hQ|*>!ncAiBHn z#8nZ&+YPwCI%~ZnOyDl;_Cd@rn<~W7j{%}(*?G|tU&8&GV=!R$%^UOy6295Tiz?_7 zp0eFXmc)625NP)Cf+OY$*xK$B=2008or64OcUJ8-`l#9*U!p0>?CoV^>2$^U$C=VE zfPoA=%!o|QrK4tiIT6Yi^><;fQ^Qd_~ZdJuC}KZf%w|GM9-T-1=cp zl}uZMX{(XC4aSMK>U2lqVT4Rx0mRJ7BhIv&1|YMW5*&KPH89`_Y-9>3S^B{U3npL| zaIHPBPIc_)|E3d*oG+tYaW=aCXub2V(OiaF=5o~nBaIy=R=>#nNO`IY591_|_xk+# zT{FW3Sk22IS($n*O00En!&A$tLpyzHs{Glx{lg7j*U$V@9@m#Y{Pg9QKjXiz<7<3m zw~_L6`otX6xHEF)L%G;ZbCdIlo#yHBs-^t_u>Drvsr>nZRw*Q%&oh1XlCKc&7>3OX zUYLEGL+vq^KAE8EOFF8tUNuWXE=WqCk)33uZ{9zk<0ChC(Q{x+?F- zRa~rm9ZRPhbfs7}9S`d}Psqm^NY)d(J>-?52T8n@z!8rb3zEAt-hN zw_=Y?jH!mG5Z918n{ot^T{UM@<^kMl@(g4`m9M2VoAxfjl7J3qdY5F^CG)ZKsG!cm z&@mX<+_UJL(INf1l@^6cl&MFhl<0{+lC>+PRp&NHb63H!2zyh*;+d8dSmp(mP#=}R zY0zXeMYc5fAHoDWWbQ+imKsQILPEb8JcY}=OUjY9RmBt9_B=&UqV+Ph{Fv0jDMag| zvn1Oz3oJMgRlqyuNk;zGZkm2S5l7mi2IkOg3T)<~-)>3E>R%6c~Y(aVnv3-J+i1Q1eN(F@>5Ztc`k(esxOxbX6z zz+_-J2-Lzwu&D4<{q@Hm{|DSao^^-~t*UN7n0c8G!VP$iM;ju##&bJ-tZTBEY>%=8$Rrc6D>} z{uYEQFA>MoKx2@Bmu-47PXF~atdzJWvM-8KU>nnb*d6%1 zVj2*;10NQcqU0r!PmC&cdj{S&l8YqIz>7l}$K(#YICz7lc2GSw9LJJ7D6$La)ZDb{ z)}tB0?w}VJm=3!G*?eSTN#28^(Da*DZGA-2_L6vUK+?%e;>E!sFSUaTN$}lE?x2Jw z{ic;20^5;1gA%m#H?77DxLqXAz!wJ(jpPn|ad75H?!b!!jZE&qivu}L?VyP;!Mi1Q zP_mtV)0$p0s+&z{)!3Fk{ifCK1Wj`C9{A#Vo>eZsEYSHrQN8jl+M1>-x!`MQ~MKrAV$936K zAmZE&HS#vFz34HpFn-tNX&j7Vkf0X9@;tLZc=M_Qet*fiH#qB}uj#uaM;Rk^_&3B= zzjUz5+HuW1QSx~4Rl2Gvdg!eu(W(w2=|j&uBfK1eG(fA{H=8|-b01_2 zr8@ASgcMlEcA1uD>iSl*66>)G?tH>8XVlS$V?5>ApYrRE{#EofNLI0*cAI-GNbwH2 z%!&qrBlK9^2xHxIDQ5jHKi7=p$B(Xa4DX~C6466lhZIK$QkhW7sLoJ~2G{H=7`Hpu zG;~!Ya`B*Sci`QsY+C-NR_p$Mk#l+V{XF*-KKSmwwagloB0m%o)^LOt-JJV-*7ssA^!7>>2pl zqG`kKz?%jQPrU~yd1XoI?^z{#a0baUDEp9p)1FyMziE~1LD*84q}*N5q9%9aZN#Ls z=4~in6?L!o~0# zu2kv|3Twl0#P%<4hWtdy%ooLpAloA9Xqbn#MJha40L25QUJCHl@XzSW0f~e_Heqp4 z-hO+(@0N$VN!ZBdySpC|ZdYX!7~!=<-bF`?_pJD~+P~Y}K619mkhu)bWN@E{{#u+O$KQXw?A%fQ^Q#}kp`vZ!Z_@Ox zFB?}?kQc&s;3EW&`zNwW@QoW0LWx+#$*opzj$fZL+vg1aYQyJVS&GC~{Ga@KvJNtNNM9y_maG4lEin%noWbiOOfY14%e+dB8&4UZJ)e-USo*oU9Cokcxyq|^-H``(MPZ|kCkbMnxIg!D*g_8wuiAXxmTywO%_(`IMefMVA zui@T@dzNC9&CnGN(Tz*qYhzK0mEGjP_!4}irx6~Qy>!xqUZZT2ZswN*YHm)rnd7xQ zQOEG`SF6**r&b10={WtSSZW8KVC2iphq+ZB&?vCjD<*RNQ&t>72EKxb^nzD2e6A%y ziypJWNuUn)(gPo5HWkAL6k-9X+8u&P!)}V_jjg1KZeH=T4I}}?!)uiH| zP<2^a!1GD}V0+|oJu;Z~T6ApHH{{+`Us)`1u9mSO0~4aw!?@icFT*?_J-!5SR5Jq8 zkBJIECQzSQ-n+J|{`1@W+oF)q_1+!y$Mvm4o!+-nWV0 zR7d%W%1vPX#~FdBZI&a&`-s}TpJ!O*mK6uTCT$Y(5g>^KoN*?gXJk3&K>#|W#+_%> z+GPM=i_FqfkK`PECqBh+Mw(nc3hnZFxqSCu7V+Ox86GK|G(7!j}h zcj)&h7Ic{>z{m)13*-ernrilfJdnCDHHbu?XLBc1isKz5Pmta;;454gCIu%?<0mXb$q2+kg1Y8 za78f&-@F>{cAowK!~_FXD_{_xIvWXdu)C%%)$5&kBp>6?6}-W*An5DPUgNWbl&`nZ zco{YCA-haS$oA8)+q>`Y4&Ux}+uaM#_1udNFSJB@pdp{&NLSV#7LV74avDfJG&%nFdtIRn2uzdy)XbJd+CdLzHV-e~Y#D&kY#DWXc2lyL0aKanBad!2 z1-VN-vuKnuM~xDh-83-HcGK{H&887K*iElEfq>TSQ3FLbn*uwfUO_Yso1;cOh}|@O zThY{Gjtaz-ysaw^EBz@(JG@Hh7G`nd!c8Q@N=BVE0 zB}9(&j^sQ2y^*MST|Q;q#9(nu=XL+=rFuRMxbQ9xq_yJj1U^E!5B~Bjmw`5F#tKRM zHzxBTnNv|`-U&yv8K)oY_WEP z;(l{LKl$5m*kY*f{WoEzE1%UCf-;KwjL3l0w+*5!C_9CxQMTiZ;M}GdA!8NOfOJ1D zD;khvBoLeCNzyC%7jHI=@{-vU0thq)opQZ;7*G!CR#vO85zwm+MvwfAQg&T?OUgT` z2s6U!fGS7}!f+vIrfws$$@Vr*EJs*>B`Yk7U+!-<2QW!)cQ@RKspY5B`#@drxhaRa z%yXy?N0ns*wXmlQ#+^#yo?BFcdbgeT#d-ce{F}_0H*kv@?j6)8k_r4?pB~9^z6?j;-Xgn5Q{W^}ad7UT#B@l+JI}cq4Zz}F9;4dcBOT?V zaiGJ8(FSQ*p+W}1Q9T}QATO__-pr2ofh=%938FKG;Q}>jwRbwmK&hV!UD4IZygC>O zo`DFzizY{ZBYSm3#?KsXSe?%& z!{qB&TV0}XUyanE(5)5lnxHemrT$NMH^VKxgRXc+9bx43(Q6{5yfjYc^V)p47yAJ0 zQ<NegYPmyqXh(mOeyLy2ly~JL-0fi-zb&=;4 zHMI5>rxO{t4PIVp4^!|c3!|a7Dp3G$XzQX!@~u|!-xd5ILX|Ghmiu#=KisX!%;Gfi zVl2BB9P3h{8g55>34JfkbBG>nW>e_JF0bs-IUwy=R<%ec>QG!@$h-o}+}sI3+je9m zzyh7AYn0(cnlmuzm)Dn93Q>D^zrNY*Nv&K})X050E(4e36)Ke zMiat;nrI+mT|E%o;E-{(D>H~672;JCu+#B1f`_i2(*b0~^S{ingU$uTw=qzw$NARX zxt*9WcW>pf14oY)T!V_bUQnF*6_>IgeQDRDP@?3rbAvxia;EgK2h&`y8R#XfcYWl& z>m$=$udiT<==8!7>5b2CP`Z;fuh$TXQ>h;VT-iNp%gr|x{Xy-f>EdUMgtbS#VuR^G z7^8#j1*9Wl^-LB&XgGvLw=kS}yQZF1z@a^YLmTT^n2TVJf%Dj!OLW&0JT1QBIp2J& zmm2B$kzS=h0bc~ZlOBEYVHGypb<{rD`}4A9yN;@ByHomo(-BPX!Hc)J5&wwVb@aow z=S-LAkhLN8X)?f=%ew+F5$r8GF**|yA*2!17&&ZiHpUFwP19dVmwto@M!byTOHYpP zhr_$|?eJlA>+QX}TYHo*%-sat*VuH(*p|Z{HEJ>u(In!HrUQ_8?4g5*r^vvYuNf#T zd7_W?2JuBk(|0vJ^@W}egIs1$GbEhbJd!77GV+fA=H64fA+U`J11 zdxmrvmrR%dmvjt3udHWu*Xf&5o3wta#hNPo3;Jzfj}S{E-`Us40dr(kB;5$4Kh>5Oal?%Tq6jD?nZyDz4y=)G88lh1g5t ziN#zYb_YU3%oSpHpiw2}3b8xTGbOrfn;rD2#MDc62ilint`NHe$?FwFTzx}gt`K_$ z-b0seicyaf2;g{9SCDby<#$?0@FXZgs zRFtb(5fvu%-?$q|56qU_k5ugB-*gnk4kt+^-VOVA<8J%=-3t23I!DR^c+5h5xzxUt z29SP`f{GCWYtzE}aw&3Tl&Y!*zWzcO;pPfa7R4+)nlf8r`=BPt&AEB*D^M(R3I!_J zz3yEPP;a4Ng{ukR0jpyTjY-ku$ow11Tb*pWtDysK%Bn|MkRD>;>A{{gAv z)SLABRL2Mw$Wdzw&Z+%~EZ8b|QyHRJzyVnN!T@}j`r7od;jLY0juCY}1p8@M&Vj{W=!A!Q z0%7g6z=+s2sM}iQNWtv-tXQgPLYz@0H3;IfGF$RladaG5IDzoa%>MdD6rBW7!tBKp z_Q*@Ijv^htI~?VOlb|>h(v@79`SjVxLstJYSak#Eo7MRQ0}~w4N2#le4E7mvy5^`G z1bcba6^am=KcOOBuoIa}(w7k6z-%8-zS%NbdCjKjCm1b+=AhAPYd2NA`gwD#6QDmg zY7`CuuRAdL_SPRiNFYIv+xUA-iee8$`l)QhnbWi<{q_(<5s$o`h$w=rNMDS6ta7B9 zDO-nP0I0C4>NwXqNcjZgUJa>zREt`G=w(109P=@| zwndD_(3dFZ2um$=DmhYA#o{JrOWp#3>d}%q1c$62zs7KJ8*@kN9Yfam{{Gz&H~vl94ZaN+`%Vy z)sZuYMk(|9;mo`0WL~e79bI(rMRl0?qAE;$5k0}1H~6A^mCf@UcvLixhC}Z)3{-5` z#r-g=Enk#3g%)18hdFyACd@iViNONZUkBHr_=56HI8mkG_&llSf=i6!7P*eJFy2%w zu7J9ODB}>{ndL3gjlv0SSbA^14VboWP-v+_Am{=^EP}~~Mgo)O3QB7Pn-`M$TV_`- zg8Ms#1&s#^5aC~#IcECoWEn-60AvvoJ*@Feydsusi;6{a_JEblmim5pp~BihARvrO zfhq*n@&!mjOnm3se5gWjs4>SUu6ibo9Dg@bN3>sDcrjemqe}~7iP(fkfwE~rK4%m! zL0Q-d5qqs9cR*iFOj*-g{W zG#U%+QL(wls53wCXL2LRk6BcRvA3aaDH|N#i-%E*&X!pNAzti33Ta5k*ucC<=R{Z zC{XIC@gD6_xjA{>rzsoEZeVd!7eh-L4VLDpG*KlsO+O8d5QyGI<}!#ALPZt43lj;Y zo`pV@s9rahq8dz~Ho;HnAgh6&rzuXN?%AAE-|)Ha+3v$gpU9d&t3}c#TyBkql(37VwPnod`D)kF^kht%}VF)oCu0y64c!kvr{y=#;S1n_i zFHo>FF|TlGwd5-YFXMM%wkL6aHhdU|cqZS@J5Dv*W?yBgpLhz z(m->MOb9gsSdpB$7`?O^Z^Z7P)I1!t-9hg>Fcx+P-9w;8W(RdoI%R(&^0qsZcLqlA zfMa&>(uv9_DxClxKwG#^VHfe8TM%{;qHCa)=Fl2F7GJR0LFB_1EM2MFQT!Y8tlM)E z`h)!}c^+cHU}{V5Mp6~6a;g0khoW?k98ezXcADE$Tne==JBlFz{nh*+6_@$9{t_F_ zOQ)GcwG_})wad)`6%nTnCY=F63m=+!H@w~6)j$3CFX)ev@(6L{aJxsLpsHw50Em8^ zX7`@mfBi9UFa+FKk#7p#XD8JH%$g|^4s5xtgqA$j}@5g!Uni`t3ly!tbkp2rRS=y-`k@y9vT!8zW z=4uNpRkd^|7~^^o0xCrOPcZR~OFKf3<4T0QNrglYYIf5ggV;?2nlYP3?Y7-CeOr-0 z+M@=HZ8r_L+HM+50cKMW=j1C$UqBQx>;(iOXEzN<-fl|Dabo?tfFQbG|MlY$NA%s; z4Ovz-QXLHD=MXMx&zOGZAf>5i9%-z(0N~B!QPVFSELrlX={FhWYD*XZ|}cbGRo~#|Z(-4Yc`Xo3|icZfpxg4Edgm_d##koyf4;f~PYQHI$(f`HvLoUYw8 zz=_#3U^la6`t<3uhnqKN54hcI8NkA98I^`+(mBlj&)~;%WckQ@ zhYYEUWXVOSUFu6@7#ek^_IlGn44VDq1q9S2!8~57lnUcOtAX zII{GkQ=Zp5U6X58y_#qgVKP)OCg-clGVzqa@8n)z)F5BUeLphBa4xOL_lRGvF6f{@B9E!nL6IK=_xVWQ&M_h3TzK?6yYNCfluv2l7hmRZ`x^5JiIiP8 zz}IJjTRkd(>v;?0K);{fizo634HB+iTCo<*46t-z^)VH`R6eK|(X0Kj_e~Yg;IQ3+E z^~4g9#M9#$0A1sbo5m{DHyz_r#NnW1Q;XQ@RcY?Tt7Z$;#Z?+NEDL=c~b3joPo6(^pw~RZn($RnOOA(p;?` zuSbdi-q#~VM%}*t=`cR`W4gZ}Xmk%&Lo%nXx+eR6m2`IYr~_-%(mU;M)G3;D(xhwl*Sv%Yb6kAK*~#XkJ< z8w$h>zpd}x?)Kr}!q5A613UvnqCrr|o-=bq|2y)|I-QZf>a3EFbFEdk9`1fe);a8h zzi|u4zs&B@U$K~*o9%S`SKaM@+-~d89Vsodz1z)h{lEL|9h^cCcqFOzj>+Z58O0o1 zg!m#TshVeGctMw5Gu3|i^LJljODt*-$5^dq)JFWq;g`*DgX$$aN$C6Yd9@ODc&4pn z;O$VE{McJcpgl~It_`J=P|^mK(UBYsDa(*t@7CQ;_a9_MzWl=JD&!7UD?}^*j4!8! z7oIj^3z@jQcMdnT-EVwR^csbCP%*88(*|;I=IZ)!dSW%ps@Kfa+w4Ew9R`W+LGd+Y zK$|Bx(d12*BV91o*lM|Up8slfTF?I1FTeistMdb*u)IQbO&rp0dygZRuAyA?1LarRJDEJtl5)wR)0|m~HeD_21+Wi_P78T>QK~XkyBygpc7=&#pwK zy;*W6bDcekXAKCDgX7Co<%mf`IZi~MH%Nb1l^H_#5t5|qY}&R%SaQ=rozZkH3c(`| z`fiIv0oD+C_whsY))4lA=f;6+9O&tRzXEu>6R<7EqD1oY7J88~gEv3n?v{7YWxt-8E4Za~V=*D=0sPAP8Dv~Ct*&n$ZrE#m=QvFAN?X45 zGg!@$0HN!VUH};(b7(8S)tf{0Ed)_^MTG$CrUDouBIlD~onDU&cn-$}EfyT^x&pPD zmH~yY{?|&YC z|EHUT^abqRg3i0$d%T@_yY}DLU@O*IL{x4cC6|XjAIA=k(eR(-$kb#4NKh&8HzeTj zr9#C?a~_fPy(tmh+tl5kLz;ocu?HpWC{rj0zho$bkfF%oG@!KIpTr_Gr|THETS<@B zXYJCXL?_OroAW{OR=tx9jqU#7{vLYXnn<>7SyEzidw&y|mnXak{|T04{>f2RtAAiD zxzjZ$_L>x1C|-WD7_7s=?+2J_M7h@%#hLUC|2NhF|N49?5wn#KB?9IYPI&^r;I(Xj z-}xU)-gNo*)UT}pMB^>6M2&>muCfPc#d zZm$(MeT2}IlkOc^nK`W&|HV{m9p0EAzesa4XgR_ztSv{<4)|T`GnxnhHoA%=v zW%PAl^4=MnRjgPn)GaO^B~K3T?zrurZm;yS`wzpf%i&ggeo{9@!{TG&R9v(x@r{>G zoj)x9-?mfd@gEGQPJ1|YmXFJ?96in_PgXmDph@#3W7E(cFZS2|CbyF^W0v)GF`)V2 z*R0(!cK^3p-?29g`S_oIzC(<7YVa7xJ4>$u!oz=l zj`TLifrm$bU?(ySnW_==sXKj!{wP|`cq^RApA{2)tnjaNu-JrzCwkwOK3g}gM5h=Q zAHH6HoRBf})-&YzFULM#bn5u*^b3DlzI;16K86{(kxu`;JHM{NzgD51;it2{L_O#1 zU61p;22#p-G2{GP%OvRs;$|ENoJ}AoJKm= zAxK%;dFb0=hEc1jL6vznC=<9$r^muTRuy=^(n`JD65F&49s4j@KW?Ht&DO0ZjPTP!^mWp`;gc zt^He%Ls6>?(sjh-XcPt-^I>89cpRr1$aga7e}#2XEw)I}8HIyL2z5M)-g-V~ZwCix z8Kl~(X5GFnPKV0Bp7~U_Yh*j8Y^?Fv`(r@x=IgVVdRhTbwU5_uE4ONEj7b5EKK7R@~L0L^p$uF@~G;5m0>ulq0tzJHLUb+7N zEv~*9Bs>qO zRs7E3^dTC!3MDT3a{kBs6X*QuVb|9rT4yiXavm!#c-z0q38wI`=c@=GxskSAH9#WN z^YN`3xkj53S54%GMO|j39=GmTWcvej(uj|G(3xHyqvOfq9`FN>C~irvKf4d@O4H4;9(V$J)ijT>Mjq^!-(l zp1z+vrtHP!xSiKyxca~5=U6KgI=V^`25C_NfX;J$6yN$cK0iXqyRDyQpyx00C}A)2 z0~%G(@mTpjz#;SU*AHX|KK=4;4IA044j6{r2(q(q>Nrc9{jXVlSarl0GKqDbl0}p8 ze>$AU*Rxuk6JBuFzkCZWL=D&!gz4CY>Gei9{Mo(nw(4Aby{D4xxJ=FI#JKm5@Hm>_ zVJk>k!dmB7-{DvbfQsX?s^{N-`}koZ-S@b#S_yGaUP!E}8_%GT)1~^IqyF2U?|GSp z*4$*DzS7))2zr%EEpPg%==)B=ahU<+4&V8&6FF34$FOUjGJ;Qa0Ta0~LwbsWNDQUs zSWj>B9WA_+qz#z*Uw=CeMjw|3U7Rb)XxWbgnbvkDBvE%|SFHWd=gf8{@k3LBGZ{d7 z(V~?fV!|K({TUej{O{i&SA07ntjCo%2App;dQzU2m@3y1N_0DpyI;)ow}=}5{Ey2p z%O^j7UhWDA%Qc@?&{bLJ8qEIq9+TpK!-2iZnXtfvQxu*+w;KrXWBL8Bb0&1nP-lN)!);LhU?2Uk>~cy_?Kl$JTsy0r%9Z##aI;M64{|IV6qE9$E#Vqk(W$IcX*`72s zga*f4--co$Kb_;#Dt>5A${vSja;4=%Q5>N&@y!GS44ywFLkw`B`MCb$n_04Uk#6qi z6{ZHjJ#lV^xdTXoTOH<1sx`HlD(5|zugq$A5qhO1_NJ(s;AH5fS3^sk;HmL*!}=@h zYI`H(U&QZ;y$Kg+V6QM~8kAIzCvbdks-Y%mTyx$G$g44R6%TkWSz86!VMZTg>MEW> zeS(D)_^qe(2?G~DD3#fT8P)*3U#;qkiBrsl9&(!CrmsHqbLyUIgWUgEuWe5wuCG$( z#)ir#N%p)eWzFVe2`7GTnn4|B!g(YLU9ENMy2&h-wJBy&F>beR1BnnQ%soR;j zY3dYD%zIiOUVZ~@wM?mdO615Fwx_j9D;vz_ux_q0n)&+S(}%C`--W`Mo2j3=X=HhT zUX?LAUC(T$2H+N&8;hhmu)GMmxE}Hv-sFS#`LiSK7f;9Ca@BHiL2m`!)|&+bs?@D z;an8CzDhtm;<|7HgKcFFC0>H%9?zDYz@}!xc0WM3mK6ga5S8g|LE4@$fB)8TbcZy3 zO%S*ir7Tsri`&$jrWxT;MWfDl8pq3-x2n+foH`w1-f+T%Kt1@DmJXr1Iy?g(F!RR~ z$UlH~{^9FyABVpj&ZjfC>G!XA{TIPLP^S9H+SdvVH4Mn{_CEheeGo6O>6d;Hb0DTR z#n@*7j&RwRM~}-VzTYbTYmv>I;Bo1}7><7w{T^``kQxMP%S)c}r_K9s7mK+ZUR+Yk zrd16e^Ht8GlQL|B2YZ;-=ouO)6{v`y*bK8{{CqEdcMTm;o8b}mg|)E&nVKNmOycKy`X7N!4r+W6-!^SBp)Y{M*`WH65T-on3xh$h^l za&g&W=gEE)7D8%w9QgCX2DTHhLc<;Jw&%yhaZznPCJsQ{Q$j$jSX30z**+Ci368Y% zC%;f1XYp3+w?F=6^ZLEIotYbRYgva=tbLx(!`k|O^S8hJW%E@%~Wrt zr{;@W;BIVrx$Ig|ZVl&j>g!=D ze*5+%(%HV66;+4@%jJ-m1nWB`ioSER+}ZB_2S4@%t!av!hX=_Q|N1jC*fRXxitwJ=kc5p zz176S(knd~4M@*e8|7PFZW!0|}BRL3}q2j$tX!#^(%FQXMnVd?BN z96#7#nUHP$J(q=Ub$43}<+&VltBJ>uBJ7y&?5_WKec@vuz*@@a0B`motFy5u`=x)* zDe+rl+182uOXwx_p>yQh5CS0$ke39#z6`&;TLsG((b7MtVKm1B_XL)@y0!h^0H(eS2Tg%Mk@&+YQGb3yydHl;BzHQ&(r6qj+_~G=Z4_DIZQt-bUGj65ya)pUA zJK=}dS@F_IvTaU_mvqdG=HIcN!U0$fP~=u+ZC)?(j`i`8{O^6xxO<&i9A=J;N0VG) z%;<9ge#|A$kcAq>@$nO#U_dn-6;)JJh8%9@_;k**<2E`#oK7kYzkmDi5zv6H1*=Ygm8)>$Ad`9i2a$t6{a3oAK+cbleWynH#oaZeOS8a%co7-X}JJ7!eNuixh4!{;XvgS3C>c)LzsuZ+rPj^3w^ zx8sLTfqi{?W)w%L&(+L5BUJm1pMU=F`RAVxrJA$o=Xu+mr}0p2K-T_zP>cH8&wmcH zefqtpfBIj@)E;(i*n=Uk)7@U8QW_Y}03EhDWi0#02jW>(_MySslCppI(|@}@4{ig% z4+p?AS=nRuG}J7-zExz}#o=~556)B9n4a~+FDTZQ$23si{k^GzA;}>FZY0ezj%_nl zGe3AG#i!rtFoQ?TCiSR8?NQ}OmcIsOS@ZHFTXJ0L!rkulF}@zD!@qx9VFhIQW=cy= za@GEVvg2Ws9?MS0|Cx8E;@aV(JU%3O2Uq^kk*yFN_BCz&Q*} z{rmhJ{-ri>4s}xh{v2(k{{2G~o!r0=0AWA;hQ;1*_z?W24&gz)H@ShmbCB;{1`q1N z$wN55Ad(w6=OB_B*t-`WULMIk`2JT2u||75^uL2pzcaA*`}ot%RHXj0@YZ>s59K1D z912k3Q~1=L0@~Nc3jf{b51+>2>uu&(+JMTIP)4tmFV?3;dx}cW!bYz>pdW#s)5f%t z46FqE6|E>d;ZwYSl7M~vbw|x6#9;Scdg}=CG%FrvD(P!~T6)cK>4iApFYlHQzZE?l z^%TP5RSQSux_|oc^_v&fuOa4oMpaDvIGt=aQ2JPwi*Wl?+$U%JHlXw$@-Nc{1@za~ zO@WbAker#WYN;2cUGaS=?S8}NIWu`KD!bT58i9nZsQ6x%vM)Uc>S_4>Ymj;vS=V`* z7qs)&N)7k;Mh`{5%YVEL9M*RqLVkIk>S~}bI}MQPI&$#`2W-#vbK$4o>oHXN>-i}1 zTTh>V`^!-b=kU+xEjrdagtuRZZ`1oj9^0=>3zLhn#nqvenxA0BCu;u9H^hTl_VZW% zp@4T?VqjR2@iokX=raR@Babs7H8&KqN}O68Dw)Fk2}T{C;;UdB=ywy}hc}VNJxuHQ z;db#Ls0h}F7lGGi#f!M7W;O;L?ZZD0n0VL$zkdGm+k0+@%k;Y}#tDG9^kj zbP_JfP3`{O0q*#p!;jo?$1iA8Xr(jB$hw`%;}bhSeXxtyTX?3*0mU+{kJ?{Xr_+Bw zizcV-X9>e%m`BV3N(OmlK-bB$CU4yhPC9Oj%^$}2TJNa_K{C}Zc=QwEwk{8e=@K47R ztT|q#^Itw4&eMwz_`uouPV3KrE8_yOOUi}9!9fBft4<)07gYk&C^VAIe3W6ly`jXl3Wp5?ku zeUN&&M2>{NJ%l(RTXn{h{Cxl}KX3AQCq0`hR!P{nbW(>AuqQj7az$}WnTIp&-_z)? z*7x9CZ}?;ML9>Zn&+$h4clYI=EKbYi;Ce89`Ec+;N`Bqo5gf8_Km7Z1`YyeJQ|UChfxUl!N_r&!{yBe` z-oO!dmj3srDtdAQr@T?}-=DHR$$x)NAKqv{(&mgHLuUE-VLTQK{&4ieJ75`}9Fq?> z+5__L0S;c~4B+KZK$oE$LUnT63NOCDMfC2FO|K76l3M9u`E$`6xe5ovKT5Rzqu|(g zexa}=844^@C?(>Y=Xzjwx{q(?JpM|`35ih)f$$tDCiBE0-+7E$n&H!5-hcj=SRh+aGdHrD{H8o8r1u6__tq=OGWLf3(jT-ha@4wu+ZXb ztCm*|WbiT6Eb^NXb#q{0{l&S8ZPZQ+;e`n)lO5I8RdY@U-&oTdm)+i7U7Rx7H+m3u z)sruB3@Wc`br%od7eB@caSZ{yl9WZA;7DJU#}Mqic^^C7vWsp@mhta@Wvh8 zZUEOl^Mw)Ru>^IpwfYkNPrtnT{Q1`x{+V}Q-+yN0_U`Dn3G5!cIp4iIa^HB<1wXkj zKRwVz9^J6={O~8N%8=U%?sHtSj{i&WlY2M* za(xF=x;{9Snu0H)uRp+$2FBn2fhST1+nQs(Mh(-9ROLztno=s2z2?YH4UVJdBlK}v zj{ol65u27H91IY7#Cf~{PMp>*Z16yA>`uO@U#s^6P-F36lN$avdzXHF*%a0#Vbl5a zxI9c}^Z6JzJ%d5618ILY2k;t!pLzNM!6dagI;H0M*+NyO$!|zow*Z4vfWPB^pBU)z ziJZQx)lLCt3O;Z8aQO5gky9E}#p-i9e#Q*X^4t4xtbMJ*7nM*ul;l06>s)Oc2p^I& zcoQ6s8QxCe*jfuf^8iA@1Yp)#B41=q!>0ZDq4I|M&JM24D~y4X@=)8h8=E*+jnZ2< zS76gyI2Rz(TR4}l(pxy!anoCPsN~*i!cI9S_AHAJpPQf-7=QxrJDXC9Yo)%9yWO2K zz{j_5Fsu9CDf{dlX_fS@Z1x^jO;#TvQ`>fU{oC|QDVg&gA)fv(6IOMC1)%h>kn{X_ zOuQe!xvO7(|MoS{4p;NI~&Uz7v6%NAl6E^W(ShuiIAi8B=;| z4!5;%E(NEzaE61Xw{WiIrnhjegr>KUzqGSM3~|my-GcCJ&GWR(RDyI%5sa4e?34)) z7fOgL9vGv?6ZK|{k#F{MH*MRZ)M)31n zo{Mt6g=pn?Ut}!-QfMe?Gos(~kr0?Cw}x^-)lw;{fwWvtY4+6C3N@&;HRBOk}DH2N`&m1H09p;!~ZUa ztcD{X)yFJwZ+nxn=D7B>BILCBGRL+D^?TfCr|;YIY%1nfw!Eb>c_Q#`U(4mQ_Na+q zgf~qMJNR>KADv^rfB6*NRmY=C z^|&Ol6NEpyHVakcxE9YbG6j~PkJGXSZ_!~-i14jz`P@p-2a`S+_&>K;oF~*ubSpv7 z#;b&o2``rXWSbq`io;u|RpiT94`2Xk^HO$0)(k@*n1FdRMy`PKyp-ObYA?c#Vp*#q zaYQKFG_qmDF@dp`PvK+iyv*$1J5L!t#K;6yWM7&|Z2B#PrM@p0AKIUV`U2aOxcPn3 z4njB9FO4z@$YTVu`4qTl$Bm<0I(x!pDtgBpOF}yWZJ4Ves{}0qm&jB7u|FvAhw~iT zDJZl@?)1lYygTb=5IGq21HK2g?q&r1G0It zpEjlT%LaWSJ#q+FO_66wzkFUFj-`^(S}u4Zx}OVvB760??dXNk(N5w08< zxu_o7fmdk?&M*RYLp&+%Y+eSB?Z`3G(i<8QCDrO?i(3Pa?T9{RUbXJ~tPTp1sqM)8 zgE%anO2evrkbInUl5_B0O*iype&@)*<8fT3MD*-6yABu@L-MsYFn$X@>Z-s*2T!t@ z3EvAC)IB{R5O9egdrz$!p-07$q^)n zoMnyuMcS~Iq>mfg^K1m?2VR|JPSp4;UAehq*R6?$y8@?<=wt9n-udFs6&|?$hN_5Z zI{~PY`&L1y`h;H7eNSdAa;aaBv<_ihEd=XB_2I;2OzvAvw$|x{7bzz6HTHc|D~+3b zN0}Fl4dZiXYmJkJ?|1KDSC)!A`mX1#>AiS-gCO-sNpR=tRTv{)1R9va=sgOi$gt#k zFMy!CG<#4AVcZa%QM$@2(;$YxuY}F{l8xieufWHaHXy33%R$<8=RWP3-4<=%G-Ffb z6khgy1zy{tj20iun6Y(tw#JoLCWqc~g}u;5<~^>zX;{5-Fs;J7gCzDbb=?{efcPvg zl$K@pgV8|DEALrrE7?SAgQ=S|Mr_W24DD40y{us6Yw8AlCMgp8_;}vlM3mn1K}Da0 zMbjofiX`C}}wcT^iV1wpcyiA9~oK54GMr5ep* ztu-oBQ~-y_fcv^NQUVeHV>1nW9361`*4c#XHAn;Wz$20ik&nRqR;HYwxjmoPeL2v< zj{Oq1S|m5M$icYgIdh-s4_mXHxB95~F0x$L(I)G6`@ib{;|oDcIXVc6ec7m|}y@spkr+!o78%yrkOab?N32@K|$`crp@Z!K&@oh&S% zL1N-0%dxAEJ;@ndOcA}9D7uz#>&tK-Sc}oI<6m;%=E(E=#(JckO{2$6D$oi7g?DHX z?9JnL1y{&i&38C^hB}}trFEreu#oQXt>F(Fsx6Hd1GhJp5pnU>jd`5Bh&m=j9qA=L z&v%%|sex1#7|LO|7@}k8TYV%=)nrG3>7}1zV~HCr&LXdgA=ETNR-B!acI_EQj>t)v zqR!bOk?;R9E-S9U?EwLTM}3Dqvno5 zm8;SlY9;SV@F5U=32DYjsgv!%$JkO@VgSigAbn*^@038C63{gwX6!L=F-HOIz;C_H z=cePI6M3s&HbfJ}B&*`GvZ$8y1<9`%N2<@1U4$;NQNcxzhBmz1`DN8>UGqRn{%Yj) zMfNyDt?YaqTMEAD5%=waWJYECOXbEs5-uC+;au{A0tj`1_MLM--GDq$%!Rtj$GG0FHbl*b*DW;v#MoxIoonV z_kc^Dqote3+HgSwRj*iQr8i_ylBX@jTFQX&|++JZt*2|8&AK+q;PLraO zruTAA9$HA|njzl7-NLFNa`&IHmc&=NCQZbH*obiSitElpD|*q$R0O>MFv-Xd|ImsG zFF=_Wzih{Nazx&|pwF$8q^AfM&?(?=xTGRkE61}M;3#gW12Q&kUi4zA!+t1&6T(?0 zY-?0~9+5D(gF{<5!Ls2ynbbwk3kFpI8Zn7CJCN_lsN>uhF_5aLw6$b7)L7!Ycjnn-O-EEg2iw$XDw_U#KOscP1O` z0R{n`))ypGukmUWHA7h(NPQ9L&~slfo@^yR0iZSim3Y=k_)Re3Zg7t{b>!WX9QFyhSBc!f+)ezH;`h1FcKNdKkr}814xyX5(AuQ+eDrl&)X{$sXTjWe%mlZ z8yWxHXs?pc6(%U5k8qKZr@-^}fX^W#JJwb(?YwpOevfLAiDXb$z@*cyj|?1d^lv4? zu_ zNWz1$?Yr1~@U!nrk0Z3l91eYviFjQ9o^T2dxd^iSB)qV1Vz20{rUvhJrGC!|1@OpS z_M|DVe|}RS;l63vN7EB72_|*3|SwT7{i~N>PdNuMb^=uay9ds-r1Cb|9sRGHr z3xKD*spVaFe8IV3k^!;Yt!+nGZO;HMTI zZ?p$X&B1=11-HSadvAM|hWv*hSrQEIaQ8W>a;Bo`l{Gncm*86$g-v_5&jGxFe3ZFt zgC&byCC}%t_a*?^FG+Y(1Bxvg+-R@L!8K9J3S?GL`Mu+v(Jp8K@bfN=_#my65Tgqi zFeQYWQ%U)#iR{%m($50~lCZr4jigTOnSE{r;@@Lzgdelas#x6lLo1^<3#zZBz|<-> zO?PgkAy>7kk<)pu>LQjU@zBcZs^|&FaWt0~jXZ81k%R!8i;A%F^&s_}PD7%kfo(ix zmLUnr*suNAAHHb9B~--PgB5r?ZY@8y_=B9xqZT$@{cz3c3j+ zQz;&&SQV+`vSzTCWx3GCffXZTrpIv!-Ds|{g9zs6O_jXgp`dV+3Y}7Ag!N7x7i7^~ z(v-k)f>Mjcusn`y=?i4zSzrq3rWTvpAGJJ>6yzrINs>Ov-%Gkf&3nK`2q#dJJU>C= zkfg|Ld-zOGy=Onrtr?4RE3(jxMQhp_uz+1Ga_z~3G>1wecH)VP+f>A+7@syZ zj}>i^fF|h*Sb(@0deT%yv=_>;mPvIU#UA!gnnE!K-f2axM5#2pqgTxoY+O~-5HIL) zM1~$udL@<`Y68%cBdG)n-O;NL31fLmUN!R2ebST=0=Za8)v4gDi#!jWG&SbZ ztS#@66=M{3ZO395g-5vwZ)wKxB8ZHVp7u)ia^TrLa#(UnMP3L`nwp%y7L=F*Q_&{c zF~A9ivh5e8MGj7RwP)IANM~sl==P8QRvGy+VfOw2s zau0WS0AhIqB6n==@}eDj;Umo!Kx^S@EJp9K9XzdG>^x%ysrJU!#4g(5rJ~pbv{9|9 zyOFo)MLUd~0Cb3Y!*2lk#_hewc1mO$0*7n65{YbMPvOUQ#LU7~_+CZG;EbNypQiR0 zm?%iou#;_09+&#L3|$AV^i_(%gwQkx zH}$7_|M@HR*&vBVek{271qm`Tco@hvRRkB^M#RkRmfUaEh%g)+khY#dH(ScZ^fVdW zy!a2&TAGy%<(MhsHuLB2(mKaxTi@a|3XhzJ@RalFGqFSfGlZ?@!|q{1Vkvxwl9jWv=}OJA3dH19tS2ZIYB)P$(P zDvE-Q$+lYOp)aQfZ2qP#m>82WlU<8g*{23jv#`9RtjsG-lpS&HOP z#D+LE(4#7tKWw#TA@v$D1V&_^Er=jo+@U)N`jE(1{E+S6;i3tO^exhZcz82)=I|vR znxHT_$hLWp(LAQ)l+cSpR+GwV0se3%RJS^-dig{a=tZA^JQ?FGa!shx?2G#@jkTf}sJJFg4X6D7D}pc#(N7I7QZ z=O*YJ5YU?GysnHDHX;)b18Kf~Z;}otsurpJ!=p zbaH=-l6HpBzg7F}YAi)ZIE`6}y$Xb|QA_)(4H{N(FQYggpchCuWj;K_No6!t#`!g% zhNZQEOa$Kuz>1BqF~xT^mLQpq)-UA|fWLXf3I6zPJ>%8AiL2#7J-ghNfw}I7i>&ELc<-6ebR)QlYcv3hJGf8cL z1Xd1FNksY0n0xJUEPzk~J#0}1G-QV&u9e3&kZtHGVS6!mp>esb(sA`&JgtyJ<@ne} z$s8rE4_5(=X)ZW{)39trsb2L1(i@h+v!#?{F{YI7!X<;&C%L|g=J2`^nSIp{T4%B! z5a_ckm~2=|KY}%Zs){_C>K_PiQX2(uCyoOIl)~o5;^Ea;fc%9pS%)5yx8p{w%&Rs) z8p&7z2}n`nNJQi)9@i-pPTRYllxZcVqs}oFFvojNfdgJIJSLaY%QRxYv=`6XtO#QO zo**MgmTUWmxoiYzlui+Yg$`0`WBK4Ps~3%cqpHFpulmB^)DcVMvJo6j{P#{0k$iDX z2y)R#p_qjz7gABAMiYm_5{xNj5YOl^b7D@!i=GG@M$bbR7J3h_#iXx83xF&sVIkHB zB^$`?jr8Nk&(lAj(_nT#d1)H6h+q8}k+yi!3{3$v?gG$ZU3DoU&V1ZGxFK{`h@i1O zfs&6H(M21un1N7(Gfn4aqw?j|NdR#qeL7+UJEloTZ=c!6eh^A)sm(1U_j7k=(pXT8 zOr?;OTWDWxtOZ?-g_<_W4|RCiNt-Y!vI-{=q7su=gi1o2Df2Oz2z5wxV63q*Z7ihh zDQScR8+9d-UP?b)cHxOjX(BMsH{!()bNcWq>)7>?8tEC>h$c3I#h*5T4PD~S@wBzl z2n=r@$wMy?(PmoMKxt6;5|{~1ppF1&wmG}%fVhc>5Kl=5I7s6sL8jI)sW)!#!^L69 z*&OS=1!5HVZ#5V=Oy^}Ih=`bZoN6r*8H}W!kVypgVq#hZPmzuMv_nrGYE|b$6%dzU z-8flgw8|ph0MA=e4q(&Tc!c*$RQ~o{KRflwcgC#-s4Uz)6rQ(F(RH8N>2R6=FA*FZ zHrC#6&Qo7xxQaCbQXPC3B2K64KG7+d8@3A|6ZAx4Hsy6o96S`faRSta$$m$?tFK$a zniOl4u*;wntPs;@96V3W6O2$Q83I0HdDBaNTJKOE&d_&=w}*2q;`Q;YB@a`FdSHb> zL~UdhomRoqK9S658X7rpV+}xb)QmrEiL3+cjF&HJNS~ctTa&6e(%YaM-U4VvfdUir z?Vk3jE5PYxiyW{H%BZTs)wcsw33>$3B?>xm>HDje2C{Zu2176dpadLs7Car@5E#r9 z3J0(rH^Gj1B9x6!&KHI{m0N8`OH;5fhoz|Lj7y+I?YpO=L&XulRY?5-XjwWdnsz3;hxm(?0Y<_9f?M+!B_@x!VXqK5W*9CIt7iV3iRA z*BVY?`;K^Q!e1ZAt1u-K)4qfz7)7ka0#$7CLXJLSJT$>~ zu*>BcC|r!PQYjxbNZL^KcK<1gdvPSph05EcLIDB1Fj0=l6g&)soS33@AUAVnT4EB7 z7fr0JXRL5xxq3xJ-sGVP09Ykgh&N1r*x{6q>U|{PQKKG!`@=dWOsDf%{%4sy*AUe< zLL8s&5m`BS5*$U4LSb#n(&971IZvt#oYE5pvfwhQlLVL+7XL<-|EJR# ztgM5)L4lP^M?Ga}Q8a;3$k^5k1qELT17V@0VC2X+2rO*`_B|blM6uL&#=BLyhBo2$ zUNjHcNtdBl2y{dcq7&36wL#d4s*=hEV0be|tk1`OKxm*m1RHw!FEL+AKjiPIwt-10 zlG?EmyY;ajbP1UKO+p_CKxycdeki?B>Q|j5g(%jDhyD<$(0QyLR+Jhm~qA1la=pc_GgGU*IrpN^2nR1v}s zCLrQaf9!{vH{1-`faH@1C~3dYzzFu~q}0jpcN_WohhzP*AB(E0oQK>;(=5mpDf=am z$L;y9BS)x$owPmxLVcUVXoDR?2XK2o zE;5Q3DtwYLV<($m)pvU%4=Gw17NGSU*+|k&gqzR=1c76H>@mB9V@1T)f9OT6sFFeO zs#i^L77-`VLlZp&!N^!-#)ehriReXsjj_aQQsV_3EXM(iG-6JkH?<&KN#rB$s2nd5 zOZG|SDwBEShTv`6!D_`+YMwSD)FvtTt+CX+{9;td>O)LQn9X ziM^rj=28}PEvR3>r-{u}HUyboB|>6cO-wcF$)M=sP+TBb%0Ai)G<6jdlK|D}iO9Iv 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 literal 5311432 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 Rp4zFBxCdbZr_^0-%a8}vBGr^PsT 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 o(lKt+Cse)=_4yT@QR~ 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:@fluNE&a({|A84(`5`H~?xL{R1C2)G<>kg@m%nMS-quq+tlhli{sngP z#jM-Tsr2$}Sda=ahGnm1@A^viuDe+mt-QcCws0>X_CNrgkiCSoX3|)L+Y{pM*Dac@ zk7`32vaVrEh;HIua-#`d)izk`m1}l7Qf^ZS-GzM3Lzm54|5h>_M~9Pt(d0+(kWIoxrpJQwIz_QE|$NlO7{IhRxC> zbF-TFoZX%h&A9xT-`no?iMY4+-~E7g(VlFGcKK_HXRLd!@+@+l*D%@X-ZcTK0pJ zY1&Ss>qgD3xeVI-_L{K;omr&WRim`or%C-@Xz~Cwp>OV@Z{7h-*tfsH;GSi8Xf`}h zM?cNB8*ZIr*RPzzp8XugI2-=4@r$uJx7T2|&9UJ#p7^^*dq1Wb>1z0Fs@;-)!n0dq z7bQzg&0vkfXu7Ato1-!J4KVjDGa37T+(0?l$Jh_>MzRonx%MkPM%RZ*nM2MpT6ALR z9n@LJ(^<#U-R=|Tjukkxsln(P0Jb04Ex?YR8+K4&mjk;P*z173{oJtM+Ej16(^#Y5 z6xf6G1@h4SGW^Hd^BMdy!3U2D>;SO+z-|F{^xUwI2rT{EwHVmzfW7_Puv-+qz=nZs z0k-qpup^u5tzzPdG|9d~spls{tRDJ>^^rl=2Jg|)JN*BUta_N}pF(4l%>UlJScm*RsmwVv_W<{Qit@ww7#jm8hz^fh)F{XDnSHvS*> z-akI7>Q4N=ckbMo%p`%p%@0I=47o|b@I%}wg4XU%woDMJ`_)#o?Y6tx0o~f|TDQgh zw$<*8HxmS*t2<58?zUS3nIHtT?11zaukXY%fGFQby3*QOw^~43t-ESP0Wo>rpL6dd zGe8uz&+hZQp6?&LhTL=RIp?19`TgrGS!+8>zHQqNtY@y3_%t}DmZ0vm?A7e8>uc=( zf32}MJyc_F{E4))cJ`%(@0~tS>F{f3>9c`8J@nc16JUA~eOA(EFZR@+ZuhUBVsHJ| zDfR;oO|g4^65%~;ynC5vr7NRIpAGcsQGF)aTYmzq@~#?#v1E?^^^@#P|2oOu_|POf zOZ)T`V+6gmtfUWX&90wdZ~WH@taXCj{}XV4Z&2UDH?{25`IZUx1GM)%G|}GhlZnRk zwzI9Ho^{l-)>_s<9jP!gT%=fRSKIS>X{3hvpjxfJb`ko`qXQgk$xxxGf`p!BqfqfcVcIGqJ zPT~(;>_Pb}b7nqT=TqJPk2k!iwr60JHcFnNcs-5@;ffI$yPQ51jI)oq?&4jZXTKM) zH|%3QPe?oGRl!=;HW)L|9Ui#PZ*Tpc-yvQTUmrHk>IruC*P6ZI70vGP>GR{lb&!-edRo`Vya^^p;k=R^Bgt?{Gc!gIah_UvE9*-SrGqci&Sjwvbcw$Ckc! zoXms$vfgfi2Q^&{AG)>9o|UR2CYHENz1ErD7BaHnXBPbITckUE#FEeF8-t5J9}PYO zE!v1Iypua8_Hy6A�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 z z!i%O7n)|cv#F)Sv6}cL=|KVc29Q*?PgVQ#8f;Yp?Mb5>eXWZGooOPOxI0V<(d3cgo zVxN;&UWYST!Xnl`*)~7`P0PdZ^E;wGLyxjU&$A2WK;95fqyMz;L*HX~@KcFCQlZc&O zLG1JvVyAVe|Bbkx%G(NdmQ{~5rm{k57NrII9q2)6Az^&>yMPY1yuZy?a~{YY^yk%o z+4qrmpzmtme=~YNN|VlO9(o6H`d$O}g2waqc}`RYwJX5mF5nF09C`&CVhFI04I=6( zbGUDPoiDGac}nC0HshVWpxHE@(gd{~F<+zM9WgG(S8X+wRi5?}l~<1Y2)--k4nvqn zycP3H<9+a5eR5gA2jA64ZI<5BfS7nXXTT;)x%dF5_!ci+Qw9GOb5NMCqO!ra)I;{B zfkqqf8>)|>56*<)tB|un{4TEmzbL&|uEt*#d{_;>`M?*nZN+CDKKFP@P()o#!C%m% zv3k*xUfw840`bZDYX`A>P5Cy&O)>0j!ntQfMsB0T&c`TkEHajtgVs@8QJ3>HkBj^* zk296zd%*W~kcGRSL>v&};2$Dq%`yLvue-LGo~y>>WF_Qe1=b7{3Wa>RzgPzz8q22; zQ+OCTfI5ty`i5(Z`4-?}1!x1^ksAEAETW%IQTPP@QrvqGtV!$XJ**`?zlXKBPwz1r z*p-X(_hRo-9(fn&TI5}*{?oG>_Ymk4eTQ7(6MaVGVEFpJ;2l1Jub3&}%tcA^K^LIA za~hh%+rX^Npc6X9I1q z#!t@o50=6{_|N`feC4(xy|NK=67ON{0Ee>;hG5;^%p$xGu5Xj{(ni#ce-E)8?p0u| zW!X81_xwX?JS0y#h?vliISqf2;e%Y49mKo`em8*=dAjbUGKBi(xPQ++D&w4dcM;Y_ z2CycE!@YK|UK;Yst+=-u_f{5h@``Ulwl;&l&(qk1N1TG1#ni^V4t>J)YMfD59^xU- zxW{?<2?2}+_b1^VTR-=@N3RQc`02NL^yzp{?`qE~FV@rvn?0+9=RuSALE^xJn--0pcoXoGvL5{)ykY|;D8+?(?xQBP#0vc@D=aF;QdRFB= zxxF`b>0#D^s*89 z^b<#9bxe){Xf_38VDr)`Tm_^ld9>+i#-nG_<`0 zZLdn-7Ha`8UbOY1Z5i60n6j;2QD4kY*j!9=^-``EIb^IM5CdKbctWu;a?a8_j27S} zyJquqf)p;od3MwnL@tqCv&xyBSWM4j0>3oIuPeZ>5e|OUf?p!|C4yff_$5MC1<0xZ zp82Sp>NrcPb^`FnHzS|g1;w|Co-IH&;hM3?hjV{$?ghp02@NBaMY|EBZv>t|hFi7( z=NpKA_tp{m%0(meHHa(j7NMWT&`-q4>qOWPd|JWp93R#J&w>6T&i(9LEN+)qY=NEI zi1(ytW!m{7BS$5jZ@lrDyc+jfH`3p8^11^FZ7}X+TMybaP4+-$)fvzavD0TrF-F2QmC!L-BYN;hFph{nV(Z&6?)tWf-8aI*^uCUxZ);eJzWYOe zKgnYKy+4KizMVpU-%O#uN(%iw1RnLMzp3@1BqD2AljL3=_8lR4_-hu+!>uXg;mH*8 z@I(rEKz=p}&tJ(%9%w9NG5=vw5Ax6*3o-1mo=YJQDP!`OZTBMXfJJZI**L+HBMp<2|xIz|lru$Z;R_#%f5d zH`-r%(i=SY0OCXJe+%UxcabAkj`t&X;g`z-e&jCvbPj>WBhnJvFQ<8nsP4*TJK;Z3 z-(2Gj#DGmI%U}Imf6|XN9B1Ml{5Eavh~S;;XnqI2EZR{&mbJ5fM%TsCxmgyMXf)@f zo(lg9eT^I;2}Qt#`JCOBT+1WRVCQELTi`r7n$x2B8JT>O!~6N+zxs8I8UCvu{%a2W z*Br!JIe5QZ>cir1-~1LfW^H~}+Nt{(UneBkDVrYOOR!Tm|G%4Tr?fQ*cIq`6CzAQ# z+u{6{%yq&ZALjmPKE`QFG-|if+7if0%r{4j+MO?i-)(p`$S;c{0`VDp3a@+BrNFR<9(T|8#fBUS9*54uK>-^{}N8q+oF!DL+{ z?)m8sBPS=@Iqcs*jGg;@$nPx7_p&(cUp>T+-T5V3e&3DiGi<8&jE ztI)6x+(qt=;T~NJsP-*)$Hu7ba*pvRouXc4ZCRo2q#sux&WK6I= zOvVJ&IvghSQ@qlWy*yJdOy-$(dos^dBbjH~-;#MoT3qmKKjyY_F}IZqpD7n}Td3!Q zSQ<4jXbf#M(%ct5aWS;S*7;~&njeeA&rA3-{Uh|XGwt}9Abu{U@iQkNe)h6hnfZFw zBCKT=Sl(kFeD&!* z>i`?GdSO(ydiI-2upgB9WbX0+HjVn82Vi3)bR9r~o*spMQwqMTSVu=`s-5P_&$am# zaMA*N>zl1$GOkTHtgW#1qdd`8sLe^X!tSrMkG7&8uuUD6z1T*!Cu5uHPsTQa{ho2y zHizbU)N_)t%^K+f+xmfLq$_)QX0;{rjJ%V~GwYwpJR?(+d8U2lf@d*YO7wRkxjEb4 zc`;^}(&gru+>lFRHYwBGoQ?M%L@`cJ^mk%ojkBGRb+=@*dkiK2iuNC8^ZG${)#tKT zcFB@t*;W6TEW4yVS$5UjWZAXoTw{;E)aSzom=%dBNOMfbdh-34o@vL%^eof0WK7Sr zM^orQOve)OAQJyDAJ9s`1Mn_6{;}~uHu@U>*m!V%be#HO@!-BF9_YQmgL|U=$KgSY z4&7L@EE@kcxaXCHJ=uNC9WokN%{`4VkynwqMcZG0EH>6Cc01=5ZJQ520ORb-+#(yN z+7un<;dzC)=QZYUT;`rv>aEfK<9O9K>@KnMa#@Mp%h-JUqy+4?=`k+>yV*5$ZZdXj z_a@vP5b-V8n-%bTgk#eAEdd}hWA^{0LI!x&9fzmul@ zW6QL6vscH|)?^*i{x4a_)W0X|m{yUjV}z~+IGq2HLdTHf-b=Ao+vQ%z)HjZhJUo-d z@(@lT509mgheuP$gOEZVp2e62D3+u!C7@sq{V6AcTtAFeQxj8FwK%;S~H7x-L3fX-1^$9q@u3`Ou zlJ7-2l5s%0DKi`(QGerZ_j09v&_8me#^(NemVK<5dzRU*b6x4xeQdt^x)d^-La(q! zgXL++Rqp$?7CQSr+VJaW8*iWS#@4SHS&TQIrofx2De&gR1iVpMeE#zUys`CbdT;P1 zF^8*Sy^$JObD@rl;Z8J%8`)&7+qWBdXG69H#s$`yZT}C?U=t{ zxI^;YV*{BI?LUfXN1LvFG2SD)=Mr*}!VV$sXLB0rJ28FeDeh-_Y4ttsXF6e}iu+TH z5&FRVTdmyv7`6HFdKy>1lsjFP@ES24f%nuNpo8e+# zlZ_$%{;@mc&J>l-n; zJ#TSwFWKEMA88tYrvyBlM4O)~kG`!Q;-_s8tM{d~{@ zm}tlNC%UJFHPuNA(77LUnT*L^UACS})@72PtjiY8V~X<+Co_BY&17BHMjuX>`-f*1 zm%TjG5^Dh1_`5fmXQ<1O#53!pWS*&6QUd_FPv(bdTij!g=CTF=ax^xc?Q!3?^`;Zg zjy7yR+Q!>I*h3!9O6-}#{NDK~?8Vw-?6KA)V-I;R8GE#cT-b{gaUbSSnJ!z6z0kL$ zIscwbOB3*cU9%F`{oDTJ?-KA~8Cy?q__O{u$5M{{J51`PA{ThO>{@dXpMgn9iQ1 z%|6l=ApJ7;==`@XFc zQ}o>*cz#S4<9Xtqe})4jHwB(2?)fia`GIew!1GbyQIFVgwD~xx^>z?@Ct$--$gh6D1ncGO#RP3x3V-2=WK7VuCd7bD#x0y-9d{;x zZEs%A4orZ(e3s$jo33oSjiFc<*vGZxjK<_~cbI^=I_86^x4Xv#^)Z)yM`QK}-1n_* za@TikFWar|X{(OyAKI$FO)dk4CzCOT7~oNl zeh2J$=JniPW3lQrN%h?4v-)P|;Mr;GxgUl0Glee^jRnZnu5?>t>j$n)p*Jb|-itFe z8E&5CzHf4sv+vIbossu^jnYE>s(YNX{@iDrv-$O1CrwlPzR@^dJ+Bx1qH6#W{7UrQ zHw0HLVt~Z(%(`iO;hVH@YbR-Kx;_4Sog>LRIRap#;A>OJw}Fu z7S1DZF-BXaf6+f2&1vz>LaU=S3$(qM0Gi6l|pywWA0wzjkPCRnK6LJNBB zo6sn}TU1`uBKdvKnc2-wW|s^k?XMyC4?baco}D>!&hvbqm-9X6+-ey!_8mdp-xh!W z!aipD;{L|$)WDovm$`o?X2Rcr;Q`ZirC}K3fpsqc zqd(5hg9p~V00_&+Z@1t98za3QW7HppzlZZv-8ethjq_98I6u{c^HV)?FzUhish(t` z8|OPN=Ct+(E{U^LB|rY*{1?7W;N;3pE;+EvrL}buxvmA@H4?3TCXs75u`?m%nie8g z?;`xv1|o+y5qUMvv7|WmU@QJAM1B}&Mut2@ZWV}(vqkkuGSbZ6QJtZMW|b%XO;T(bz1CEoTp40#_?g$w=0j1J z7UEodIL*l$*5Nr%;MqHfhBI0Da1`gVavWa;o38(6h1`y7tvk@h-=n>+kyx2n#)o_r zTD?e;E6*k=@d=!pQjhkJCURhH1>Yv(Y#Q_p&gqnJ)-ydzh2E#zEgoG!l$`fa9yEN??=eAiN&eaBpUk_2%y$v9?_$)Z@eag%2fuh!ySS-T@)A$%2Og0R&yuvT zPm(+Y=g$zFf1MUE{sJG~K1vHWjnb-SjpD0)qvX1@ORnAJl55^}$<-V`!~IE&$F|}m z#tePpDe}AboW(mmjiFRYruO7 zt*$k~W|u5>y4Hxh(MOwbJ&o(I-G+TG*^TRNT=(F*XSYiWq&+xO$)f=SaHf(6XDYdI zrjlE$iMoODUh`a~lb;J=xTe2sn+usk=R)-Pcz(gTkX&EeyGQn%%)BY;5)NuT3@_Dr zxqkMf_CGN2Cm;WR5d5INXZZR-b(uXb);sNfke>OQ6Bn~_)r;(YP}u{W>dy~m<03iV znaM_u``4^~Wn#F#`A_zew=;(Giv`=b2+g7J3m`(qA)#jyI)6L|kr-+K?W{Aj4PcW`n9(l{)! z@eH=U<~$2F>NF=MU$bB%`%b^bj*aAJc5GBN*nnef%-Y*xH_m%xbwAYW8(msh0E^iyX;^9LXmKqdw$FJ_&gdJs(qAiZj3aoR297_u>6@(yt zbR5#iYdG95>N3vByn?RZ^dYA6X=pQIIv-*>FJd|`VmdG0&u_+bdHl)>lUt#G&-qyB zI|gSg^ueF=H~L>0#`s~K^EdkA^gQ@so%26HsP5fn!H;>Y9(ECQt3UiW`CP$hU&xj# zC@fc?wYU?@6)0}aW4QH4=eVVuiRUh+j`}z-tO@zO>S7pWjF+G9y3eI`wYvCi$Sb|)@@u?nU9#_S*Bak; z7vI&1Ysf>lAy3_Q&?WoVy4Ls~cgZ8RyVi_&9=HX6Vd&c&=-U{p4`K8F9I%Yjf>91w z#sSM{Z0stGVOT4pv)I@f7l1um{qEq5i&~s#T=L*7e4a|%sQ>vmdf9vaJhMIB9Z%+tn!)d!f3 z>BIBfKNbV4)^q=i{;;0=$G%h3mKd1nweGk3Fy(g`qyBtY)@H5s0dvn>L%-h4>Q|;d z(09*VqYdZe>Q?e(_RKZx|EY{_Y1aC{K>h6_Hh;@%b1I!*bmVXI_L0u;?S5x{q=pBl zkJOHQeKhRyX2Tv<49mDT!1xgtTk_^dS?u~fOWe!8Q{eY=YKn$0e9Dd)WCirfF=k}* zW;bGyh13od#8CzF=01L2Y0Bs@;vB|L!{00(_1;@I@2!5$`Mp{GZ;5S(pl#&oi%bnc zM_%k;PJoTG@;}n+2@A7%9(a*IdSAE zqNAMYZ?UGn_mu086nr923#BU(Rxa>jW7YTg*}k#b+F3^3m!R%jLF>L8@CR}U)IFFS!M@t~E`d7m z-f|i%e3jLF#hjY2aldy_^9BEe)qE*efJ4ofGitswY0cM;yWb$sTl~geT1!Q}48onX<$_X6jD+n34Pc?qjx^;$e6_ZovS>q~ol`XC^?uUG4Kyg(z#_z4ofJ4RRH=D;>z>bMb8c(Qg~c(}UAS@~?f{cxvPy#GG$d zrZ~z!jPaU%YW4;6%a|uQ?F96zeUS9acK%-h8!+bz73@Xepl-PomL>PpP7=r3k$LCdN0<>H{Vtt#58nr&5n zk=s^D#C!DRzO%NHPcXY32=|?}mHa+mTThvoz?cJccFu&+AKA447_ZD6;2_|F@}I*J z7YMB@kT2PBLHV&A7svy4Tu}DgaY29NL~x-uH^5w_p$~1&V?^?B#y)cNA&WV^_eS0^ zhs`&C)A_v>y7u2ez5u_@<}V$d|7YOCz|a3P?7?>a->HEO=u>07kb^pyuV8(lEO9no z!18%)zWKY(@2$q2-5Yt%3U=>*&H9Ps<&I1jlvf5EO)ntja3`3}Y`zdvIbrhde^4J-L_|H06Q;koZWi=C9; z=Ftc1zW>aI75ICbK3MntXEsd6pPW8`LuL5O*H1tn%Ktu?u6{6#@nKUQeRwqwKEUVO z^x@1r`0&BW=>vTHLKcUVJBmXXKIzvCP8_1Y)mN{ET1-0B+M8Ru=*@W$Lo*+t>~xL^ zgsuT7nDbccA|_Xh>6!9YR?iA?wG1D4ZdS)mmaD~ZQvFq?omzn!PH#WVF=KM|!E76k z7n8GglGC&8JlQ!X1J8evX=f%sJvDS|o~c{vI_J8TcmMyBU!%eNs*XK>eQaH@Df#L*JupEF&Kn6jl_qgUp~O{%o!HHtkUnuLW^H!-|1NI*ViwT$LxMt zRiR(U&9#Q0j%D)dLy2=CySwlYV`(w{vkQgT77_x(U&v$sr8HVSl_77n1_7K z5hfY;|6=C;8GOdyf!P|A!V;Z~br1 z?v0pRW&Z8itPeh39>Z)?y>7sH48vgcZD(x+w~6^+{l8A&{a^2U@1cebL#@4oEe(p@!u{t-bkU zvK5*AAe^1|#c)*LJ>b};jA41KZ~T$JjaWm?=GatcdjJ~o*TDAxWNlOje-A)rH~R2A z_mBB-llw|H?e~9vFttV|x4T;cK(xBNm%A`s2$Mn`PgT8|^l${M2Hzgyo~(!Wi{e3(R8= z&<7(wUFlqBRm1|un!4o4@|;+k)dhLkMn_v zMvU+Y=VM3c9)J$!%}`rmSf)&NesATHzV{w#{XEp#n_n;HWzG^Pa*jLX{=vZ=Qr%Yv z(8j^=XC=efpLON&XCLPAXGbmmYz3{0DfM~$8QuH;B>Wj_!bW`aXXlteJbm?H2-?_S z=KvHsqlM}K$a(chhU^!Kzp`n%78{tm*Jk*9{`nCUF$z1==$WQ%>w^v(7$BggDx zrfzdEW_jXM#f)*tlg=?m|K(7}oZ*R)WO$wfVAxxO#op#n8zk0q0N8i>?Ro6YdJce* z|J~D{y$wMf%YzSkCMNl|BYZgUH}osp|Id;G4Yj`bzxGz(JnAcPZnYa{rsH2b_7(Da zdXlbrIIr4GV#hv_}Zft*6RUwP%2+=^@MTj=jOdEH@) zOu@X$$ce9Tu4{zu0WhR>ZNT{(!!6|_!#9>9uiCL)nPQ2h47?9mupPRJ{Ov|dEM?#q zJ@@ap`P)##hy3=I$v2gWCtz=ZzV?>?-r4o}&i4Lexit3Z9%yaW7(d(Ie`w>$ue&tt z3%P%vb(cHY{2{GfpGxa4?J)p715#(U^4a6)N$;7zYz$P}`G2Q|&7k&Y)M#EiPG9t% z<7DXL8+~o&)aZ*xvG$nF$EBS21^Hv&zQ~Us8EjI2=ltHvvw7}4K)cs}p5N|Ox)!IP z-Q%4GRv$6^RmZUO>5sDdh;{FOqd!{hK3%u&{m*k-8eVbjdOF| zI5*dWb8|g%FzUg1-<~AS%+=Z!b6R@?m&DoMk{|zY?hD^0aB}4)mmJvT(%L$ST-So{ z8j03E6KC*l!fyne!`p&$cy|$gY6FqOn-Dh(*q;*|wFg`AS3!*2O8Afmu{C7d@oyde zZ4gMzEfzulikla*^AIYvP?LncLOpWP+LG8(JUg^qlH6rDH<#vJO1l=CRi5-WNwH=0 zT2py)We8`{pvGfdZ{|^Rp1`wr5DjOD^WiAY{^dBn3h{LPH!I|J zTx;EdHvS&%eT~G*#4iP?i&P7vZ{Q~->`OrR zBBl4~c8fEM)B3YQF2|{CD-n9 z$u)1giv!zk^G?GKyoeLEO8@S1RG0dacSgny=no zu2nac%YnDuavdkiwIfBmPdVNP-*1<+$|ec#Bj9~RIXqI7gO>|(t#4G)1AVT0f0P{X zmCKdB@}viP9elrB4&!%KoSUysi&}MDlyM(%FDscu%Q=WPx!uOH`QGp`iyIwz*j}l7F@5xwZLwd zT=}9)tBiSK%p2l_9Zo@v8?8bFBu6uCZv)iQw z(jJ_pu%3NK zX6DJ?mRqoXFRMSz#kd_ef6E_ppw>lLJQH>lbFgQTPvKdX`UCEL@-YW{Pxb8lF^BRO zJgZ>LF$81EfyGFyuk^~{Yd7licDvC>+U-Uyv)Ii-ww~i^yWJ?2CuKJ@KitdidAxnC zd-FqPH!9utudm(Mb5A$8_RJ>rH=Ns~o-h9&*m*Ms{v7T1ycxrO-_M>mvyh(Sr=Dp$ zZ^pRak-gD#X|6FFy0GFjyr=qB<3cE%)f0}l6#x{Na>ub_KF_z)NQ@LoQ|MLxtu zUc^OS#6@1br{9c=vSZRa9tvmH46vtz0}iv{&;J+Cv*_o*eXR1!{61E1#Ob$>#vzC= zgAl8bRl_n?SpR~s+WQjdi(G&Jqh5W`ItEkjYj~n9;K^@Cux8Mmg4ziB3;vK9@ zG5ps%gJZW!yszB?{|06UXHZ>GuOGg4piHvZfzcmVTI_&*r_8n6f%;>M9qgpJF1dbq z*ufmr4wSQ<+ku`QupO{I*5~B0gFLo+z^orA&d!-I#_to(?hXIV=34YGoxuBV8l?B9 zd&~BXzXkyZNY(Jg0sT*Q93T~T9MH=xI53aq+2jj$98kljAPx+Ij_H_#C?BiU3uF0) z;8?BUtg+JQ1c}V=AX0^!Oa5Rn7umlJpWEpi4QlDT$7uDPWB7&_$7l@)#}t&Urn2`z zwh^+eklkEZHcVx&fb2}jei5=?FDx6RvgME!ARC12S$So(aAO5u)mcH?E%}8pbRIx* zM+GSXjsng1Sj?qvwdZ`pNBpJCTAh4iOmgA^aUG3JzhOMCa9hqatFy&4=h9UpY-KU3*tFqIMVLCnY@3^`Cfc;K@ zwfnoncg*y&EMsQ$$4!=B4WG4#q4G7R)g@Wy&h&SfF$d7zM+LB7xLig*gSYzVZqZmEWe+Z z2T$p`|NeYn7OSjtpsI16H^VH2%i3Dz+^W9kc^mN+_5{Y<&p^)eX0|{kW^6&T&Vgpz z+B-Lxnd?{2$+q!$^JuJ{sy0Y?Fe=kd=zeCNHcuN#1`oPV01pO#??1yozdMZW%ewcU z(I0=wV_$po*jG&+`*O1PUmkr3n6ZHVYezcE>|6Ql;OMOKa$lVto_{zl$G+=x{+|(lK4u@Y{?Grzm}UK= zHU3l(e`{hii!we^>o@+)UNj|(kW#=cW7uw$9J*kTvP_*4G>asB1sjG1!Q z@EtSqx_!(P**<2Z(lTZW&83xpw~v_~aWH0CEbGlr!NFiQtT;Odz|fDuKL^0jPiYwI zgY_H$qd%f*Oyt)KT?evNmnOZGkPTI1X9;=4L=4Qm6pVeR0y zgD%;>*0sj}xJw?f-L+=K^G1wf^i2r5G^S6y@fO~b12>-2f>93Kcn;in%KdjyPW({Q zqoLMb^z*>h`55}~WWVct41D=ncAbwx*HS1mZ0mfC`#m=J>wE%c9a2r7Ks?!*#|HD` z#7>42*jL+Wtg8MZ&%FmWkIwo|ZylC?ZXwOr)PJ?dJ$lj}_o&~u`#Jp&c0Z@IVvLUK z=U_j1^r6g*d-NZkfId8sM<4Rs8*69wvN?|v&^5g|&%FnxYh)PD|1(|dGyiY&hjsp+ zeb;CHpZUQ)^Z%=z&HoQU-!cd~re8IT@vOvxXNEpCSn!N}r`G4ev%4*L#&k@%sy{p% zf;yJPNNWv^ATA~*R?-@h$(P8fq0xO_vNbejmwGS%Ur@0pRd4LBh4aU*!s5b{J4R6KVo^&K<39;-;!w=UpAEcb|~vYZ+!>6 zE}g|9`yItO#`u+H#t*SmhBq(>enL4keEkI3VD}Tsi*`Rj!28QN=kW|Wc1o??Pv{3R zMkf*XVs4*df?ArzgyYpq*z?uT4Y*#y^h$j-k6vYcL$A()kHR=~`hPobqcUf3+Nivc zr;UT4`)b#))ctvEKL0y*-B&l;bze!@bzePd*L~7;a=M@4Vktj%u2*`^;OLe9_}@pb z$m-#%SNfH9y(0J6^-5oE*DLazU9Z%iIMAy>zyiH-_>P(SG0T`8pn0|aHOrW>@6@l_ z$4p0UGKbs4e2UWOV9fIPm`weL{KPpHkk31!aC#J{q~Ih z_@rI0$YplDQhs33D>g>@7y8qyA($Tw47*sLl5>Zzj$xg#O~**JUB~pWMaKdx|5|9* zG4-7ObgW?Q`cZmM-Rmf)GxVA6|KE46G7l~yU))LWtzPCF7u8jRgNtgFvo`AH-tENM zIg`fwPw9K_p=Q5Bt-bkm7wck~?vg(_*InZ7J9fDDAYhsD#_+{5vc`^O${*}lMt*O{ zGDWsynf^M)$ZJBvFxb>L(!my+SBa(OQ1Bu|D*$#6m0o6#*Trw*K7 zcjuX069wzV9jxtR?bI7`+nHOhcFZ*~@M}+|ooL(O)Z`AZSoG(^(gx-m2SW7K>4)8G8K2%pZdTUqBE7nMVUgNrQxcM#X2rfm3^)y~@pj_yGB3RT&d z(DRfWv=RFR>}Bb~ z|0R!qv7Q0I#z^h=41l5LUxr$H^W$H}9}@6%9dHZTSn4$Qw_w64(idiar-YpM1)=)@ zSo#9}JP6pMlnme4mUP*%NBPha+ZuR;GXQhuo6DI0skg+ohQ1b`Tx@_jw@2AMg%i*R zPab{9Q>zMO{N+AJ{*t|$K5*{8(H}PM|EXcWSWm%X5c0J1K2-<4_Mi2s`m*D3UrlvN z2M66T-tKdDZ#9Eo&d!=(?I!uo{~HYa8lHOqD2%sk-2-4RjiVLo9suk+V%-D4z%T0_ z0Bnr(bbt7DYS=Gw2m^07I=2n-s59FDcZl6veaQK}m34jZJ=FSnsI@nLjEdUj3W}L3 z_S|=hnd;qr$8NxJ*-mQ5`qzhLT*h!soo0#4jQ)sO;xhJ~dYwHk)7M+#vV{y2zuq6N z<<|$S`!)1orXzh|&r)y7qYruFvUw)wRB3V^LnylkT*ol_Bj&7)kDB!$^#bQ@Bs&JD zjpXV)Z5&v8$>w zbDh=qAMf5){(!lTY$xjnJ=+gC`~k~4GGh$D12pGNPIeuc5pQI3e=TS^4>3<%1UzK@ zpg7CTjQc<9ydQMzNu_7>;qBahfWBeR2<#n_yPl5qgMNN;pyxuecIv;*v@^FK=>8BE zouFsShv=E=^bE$C*mI*1?dn8c0%BcA;A2H1_Q)v18Sx!LQVft-c?b5Un8|DS4d0Hl z%-x53Ou@LXdOzAzX122o?ZkPron`c%TBuPn&Z+M-&Z#%v|7Uoga^sBp#@;jP z*){S6u8lUYjZUtdOZV;|&BpjXriFwe)86tn(zb>KH= zuztt0i+P!iQ!$=hjAzptaIa4#JUu(5_cO-2pXYcn9^eSkwm66f4E-FHwNtlsy{A+D zOl}*;eC=;N*Au=aS0||s#8eSy%|P$&?!sT_-Ks9=T|LISkKT=STexUr-aU%@X$!Sb zJ>l2TzDhu+=~&?ZxqU*~vA6x8mNll%&_pBa6Pn&x9@b(^h4k^{sWYhaSlF!F=ukam%p7Zp6$(8j?$E5`J zt}*Q6PHie|F(?QpcE8R-_rw11je^mhPJs^#BKl2ab`$Cp4V@O;e0Zi?5*z7w=HJ@} zW7bzssBOl6*kv0Rr~1=f?zYSunEG?+-$Q@8C%F$6(3el(z4plAku`EKUISlRBL}8T zlk3i$D%VD*$~Biym8-9vDu-{GitAHxeX1O2nJU+9s!BFtOa(WQnxMCS=u~|Lr`5YT zz9GzM+s@(&o-Kv5ocONYMCUMjf;83arir43q{9cPo#0^ z8<$+U$%XxJ@LhU5ALb_D%-{)f5Z{M4x#a3JyH^tDSV@bi&Wo@O1^ZQ{19U&A*rX2Z z_Y@bJcaEj?ImAfYg{=uyO*V;MVE9V>TSspJUkzZCWf za_tn3ubm|%=dR>txanES6=jhnz_8`pj%^itj!AbO`s>z??|70+M}KB({bksLDsj8y zQ?NJHE<(>=PJJiAMG`;2SdJ!q12Cf@gt0vvwwfTRm%2#u2W~pHTx9+plDesbM7rK2 z$@)V*(g-h!0P9kR&gLQ?w2_$KFGNHo8d=6c za*;*2pSW5{i6K5EK1nfwW0)|n3hzeF?;a<90Ds|tgw=*6yaxYu~x3qFMunfDKAZL_b`}dQ`k&kk*a*vP%21VS@lE|%FNW=pyx_AuXFYyrV zk}ASqJcA^gmyp!U9xl1c%i&&JGCR{*z1o*-It_MmF6I-Us12tMOT7$jOYOpuj zRGb?=6*@STpTvl=j?7@W9AucyH|rFWl`m2Z zfNoXDL0~cV^OJ!uRxBn*vRI5g|D0g4)EA2@fyIHrz~Z@F>V074QXjDRjA-Q0TG&Fp z9g7q1_oUuGo9iEom2N8*f8N02Nn%Ye7IVO2K+ zUO7Nqy=stg^~yoS)uueS`YJGn;VNuKHE|W(^|tN!K7*^k$&*&Ka&MoBP4l z$~oQJl=mC-hUk4 ze;nR_9Nzylyw61X{#qE%ZEx_<*bnuMzruFhG^Rw{?%gVK9DHXPz7vw74*l4Q_%-c{ zxVONkx?z8tV0&qj>^jsFNo=LxadP!0VJm!7G9i8lzap?$veAeolXoRypt~YQm;6(%K zXz&H0ZID~sgWn2rjr$mUHuhNEatwIjlIz^ZV&x+GbIv)`m&50y{ZTQJXrs?TOwq{k z^^HB!e36rjT92W>k@q3DhD_`}HV$X;mnJ?)imOrg_&FVyh&K175BV#*K1>$j`;~}q z5d&k4-P+tXe4qGGyK??9{;K+8*=v=X+%!g}aT?-2$c2vaSBl59D_??KSFcVY(dQE!(f)S_?GLZoN|{uYtzVXJcZUJv@)Ba@bL$$bWV z+Q{`<8n|*vPaJL-ai_I(tQJ2UyoEu~4;aib6tg9z92Z6qeEdMBO zd?)hlxm-m2qNCg*^5qVa^m$06{xz0g;65J2aftszTDSVF#W!ANd7+?rJ4cv=aHna=aUdcT~9MIV``pmHD&-*Zf%;J&vRn z)fhev^^yf;Wz%S%(E5*D)8dYZ>xs0)hdAsf@AlJQ*XQZ4P`1BT)0|EH`Vj4}m=Oc) zye?0FjXBBwx*|`1`TF$Nwa4wR5zw!1(Q%&XOuvx38v14AuP3ix^?mf~uD<#;$LO!J zPfMebzb=}dqhI9P*8V~+Vd__5TU4WnRbkJl7u?)IGP(@A%jom0ZX#Y{=x1M>CEv65 zsdDMi>{IFCV58s`1&!> zClBgcRh-r^qi|iTx}}`2N3LA|6ms2{k^3TVFLV}rn94Rob_rx3g6!79vOy|)6=W}l z?Ddent)Q${KL$A|mG?lliq&k;W)gX+jhzQiu~}=Qek12x_&`fJ!}R+o-jS=JA0@Cw zv6*3%Qj^t>jqt}CteBqkEeED2U~@M)vpI_C{=vd@`dnbT08CFbQ9HmGW-whJYuMbJ z$##s=XIu4yV!FRCrsvZKf6^WG@q50+X?q%=2O`Hm8%7-rb%i~Mi)!FEE0B2Z*-ujQ zw-El>ZP@dDQ#qB>_Oz48eAIWIT?{{q{ze>u`>=W%|7-(|Crr7pDd%S6$mC4F%i@l} zrgAM5cO#y{->4h0lreTJ=21Ro9Xk~{(sBGT#mnzdyliwfc7ukO7`Kc+_EUfS35u6F zV@EzT@lv+iHkoc6yA4^q%xl~A6Y*}vu-)mf-3yLqyI3FcC)n6Cu$wnwV;>f@F^nH% zAAsy~$Zmuz>Xn7;JV<3f582BgdlO`DFDzS0WhX+m7_!qLdqH8@Kud|_nKI0<32S(O zOAMcl_-U_P%hB2Zi#P4qMB`105hoCD7U##N2#q)WG~QetjVvkiql(z0UYgK^}7C*tds4gajz-d!So&Wh_~ zQ)Vo+weZOstv*@0tLYs%xX&H=7IZN&%MrGx;Flv^);ue6FvLZ^-U_`Jp!cd0S=37M z=2_ywp2)!juGK^D@l2}s#T3_n)<^HvpO|Bbc^r)8AtTS~o+RR&@!TA19nM~fyXia* zUk}^{hVu=@oLt)C&&)x|lQ#Js<8^HdWF6vl4V86>*VROP z&uzgRsRc_WtB$Dg&<0 zdq&&ioY6+?%OQ3iZQk31_9|XUR1iPmH$eew6@?EB*{CT?7UEgm5n(x=EgaUuGY``~ zp|zjLM-ii;pHhh}^w}iVxQ9fx>_Kg;@i1TAd6=(Cqeg+a?W2g_t2lSc^Bzep!T+Zs zUapG^{OM6atKPmq}{IG0eST&I`4n)Z+gok*yV6YRO+n>anZvJ)N6-g+%V` z=2GW;gGBh>aVf9FMLhWK91j<{)62<$*2Czp!*a0mupI6@B3JJ|EY}=7EZ4qxSgu2R zP`3qMOn_dANpYmFc?GRAkeex9@Ed)I-!aFPQwUu-h%V zCDDHfx?XPNFyz6ckMfcH2eq2n2Q%-VT826C5smMkXw4u}{{TnlyKVJ?Wlrl+^xchm z6l#?2NKuC?C1z>{#MNxP|E1ky*_`*~mKb=f_>E-KED{mV<4}V-7!j|)xFvd$hxU|e z)1#i`0~5hH5)UU2PX~t9A5Ogt9fu91MCkn%^1P@Ufo*~DS3 zy6dn8J4ksjKfLv2!dG){s&f(VD|9a1&7U3@G}r+z!wxE82Lkkd##m0P7NO_$M^blu z7J592i)bi#13TCQJ9r6p zARdux55W#b9|6_@E6p08(VsJ7CE}-fT7wUD8Z}J6c(Y+AQ%pNiKgR52IyfP<;71J! zJ5g#3J5kThwUgKcab7_?LB7W~pjI3b4@$T0FO`eBj%naif~$5gx$SUIKNr{c9(mO#t3)<4}mLmF_o*roP)TZ@ekadW6-e2)LH9Yo*k%Yce`F20}d@bJTrtt%$|_8Gi9E-v*lZ1Kb{cGUYMSS3Id`n_4lc6w z4%n>#yPbI?@{4mg$y)-S7=s^+aavvH5&m@Qx7wq?2_=>2h^7|bfq!4Z*fvK~KYfTq zv@7xdhZLy;{ES6&QL}gm{wxNWZPCb*bE2tp@cE94XvC9|8I3y0!@!zr;Kx20O}YP9 ziFmJp9KKr&Iq_jd4#2PB9poVVS@?^G*f~v52IasIDNMdSvZU#4Vz{f&S$L`N6f|RHS)%HT@eGSaaPyz4?~k2a--~{u?-$qe=$HQi zzCx$D5-l6^>B}-PU#xK@hw=Hf20m1b))e=C>c1q$t7&r~_C$Ug6`K{dUh!3oogNWr zEJ*l>*p7S`^=w}PTrC~*eEE5#l5mjnNcmW~fP4RDgBEH!hWSE_^>)my%>`eljF|WD zMqKbWCFbWF%+ICf=j+Yid(F>ZGOvSg#(qEFyzVzYe-U%U?}1B%IwH*> z?nVAE#RECRKf)8#y*aP2ycouW>O|7n!?<`JR z*TlFju~mqD!6R+nD^Oh=!-Mkzzayp+PcS=5V$Fn1U{4ti8|AvOyia`~xpW+nTd!u% zlIGVV7F>5M_ZfVv`HZoxInPi>W}hK$HlMMgz%!I)NhrrNXkFf)$>}oBU&#m4=pO;? z1<(Fz)Yb$Myx5so8^kzPV_^RrZGUWR2jpe~d%6&VsQB9noqGat0_RGK;LjTJ58)Y@ zv*&;>@U!e4m3yd+wB8@J%S z;1S1N@`gsl7~;({D0gJUp}#WwE)u;nC~rg2sl9M!va34s(b(1foqh z;%K~!E437J^!~fvVSJHgCii$b}Q5EW8~8VwsCC;l7k8}AO=3Af;Rtwe*LXEm!(oR7K0f0JO>JmN1t zINK9Rtan95phhW&n z5maCK`n!6lPEc+razt0ex0y)up+80IkMTiZK*$Fh1O`y-U^t`f%JR9g7%<0*0Zb2A zed#Jgmna7O`lw-Z1p6%0XDWo^n;ibx(byyreU$H6>JIy}`e0i2S*R0GyrK8O{S8c8 zk98&^P}}*$VgB^Aiw}MZF)?Du@Lj0+{Q7Xpvjp7nLmaIQr4mme{(T8Gp_ed@zk%M~ zL$t~fsPBB@NXqjKF0y0`M{7g0CX}iFXf>bWwAxZmlkY-)`|BgAlFuMF{XSx7$YR4 z5g}JbjVSdPtr3kvE{weRJ>2_-v8*nX`sod*6@7+8BHtjXcdjF`AGs<}o8#ol7ETV{ z3qF4wT&-I$FL^l!TZV1FjlWYc|Gge@_RkP!{~B@j>xi@efH?bah_lBZ;p^kTO9iqc zj>O(;12&8RUP8|T>k(h=AjqM?=i}&{i`c9({|=r3hxIz}cfr|a&Kz~IJZx#BVe5C9 zw!X};b*wKyzu)J~kJC9vHea0KXmGH#F664z7QqFw@qiYY_6}Z?jR&+6{v6L{{=C=T z@jjwy?`IqKu47&XbzS5LsYOo`w$@;j7_iuTg3deAy3;l9W^9zL=U{$C|F$F^5Run* zQ4GKwjw{s&d}v4h_K0wpZ%3Z?5bBPnr@2VSTgcVGm4fe&HG)^a75}s?3S^IH4{}0b(qCUivO$Anv4zX3It!_k!X86|b+4bfQRVdxtE zZGnE>{X6=dB0)ZN>+hhGzlHo&Xv;UE5$|V_173xE@Hy0O=>MNnYq}-*uY#`KRXRapvbuz|gNi^+i zlw8XZz6Ld^X@)P&ji05WrIz?v%EZsquhRIrdLJ%aP5cZlr$oRaW1n zv9r|VN9;V8OHtptl={{c(a0g{TieXoImfpqj`pOE!p`82Ba7y9DL?hCOHl_gW9J0o zEavm{V}`9M@U5re{!zm1lR(ScBMF&thrG|3NmEj`-HW*9BoWrr)8l zH1%;iX)H}*S-(>#mZtAv=-(?WmJTA8#ea)j`+ch*Ry^UxJ#(6 zk7hc~)|{|ssDH`$Hu|o7`z&BG0l#rHNp2Z!)N)rpepG&N`_UwFU&PKN>4vUDhR3=n zIk*-0{T%e*Dd0J{Mu9Z^Z5)^#75J&ZZdwa)w28{*M_GRPJ;;54e3HhFh(%!&)v$^1nIc=;D#kN$_ik-w9PQi5#a6Yt zfn^x)?Otsb2ffFd%CQ|KNntzYdVGRCR#N_ewHLS+bv2)H47RRg?`Z0uT3l?sm`>w* zeSS8s&yJJwKgb`zmw@fnw~#d)&G+slGPjw~=hJ7eA+6A%k_4l}rpyb=(P5S)849eFQ6D&4mxup@G zcB0QG@mh_X~4rYN+h}kOdZOTMJpNcPPZ?siv}5 zLv|KqZ-neO3(JOCdm-zC>{Q5}TUa*O!p2K-$6?nLTPO}GKV+E1#!x*ciSeZQEc=e( z0%t3DC*puG-Oyx}IG@VDrbE!`6 zfKIQ2PCr3)8u179p}>uBnwM+weccn#=^fDL-{ap**bDqJTNlT4I`4TPz#I`e?J;%x z7r+h$*r5PB6ktab*b$Y3(I{$BQ8{pJ6t$>}aQz}&zeuibxd^qWi;_O*JJyo((;5Wi z#}(Q%w}2Q!p*9fv?iPV>YvQq<1wL2+PT*g#74Nb+ldEH$2F-8qel_^M7T4?WFYtB9 ze-XYLf5Z4&BVg^WfW9xI>jqrFfm@(6B6LQC&WO+%v7pY>fY;S^HDqT&_D0Blv#@M6 zl|2ozKFCgm?74+yDG#mdc>y{uK*t5>IO0~sx8NgE9-@WgNqJ~p_d~V`vTGsxcwSll zvZu#r;ipfF%x@>j;-WGcoHXD_5Nn@Hk_oIIFz{p|@`PZL;z?P@r-3IyiYH0o>C-5l zB>g+Qu@dUXz)!w)VZnA&MUq8*ai)kg2Uxy+J96G}eAgdg<4?oJ-++xD zEo|d8EdjpkN040x*$t5Wd12XVD*JDcy%e%vf$Vn*%Z91!1jrUawidGI7nTiD*+0U@ zpN5UU0UJMB*v2badm+0FvZx1cLrhd?yaKGfki8VLUxDm*3d`2D0GlU3wg|GdkUhV! zY;6nbjdVQYlNrvatakVrDS_CVjV-|%TY4QhL%&m5JpDO3mfc_3_!q<$BK>`HfcjqY z-QM4+ZviWUzzY1=T7$gH-l&kev^R8!AzK64^Q^KfQNM1-+`>y;jFXMHg~k);GtQl3UoYp_*92f4^1NkO zS5Z`5HI?7ifU!k@BH_Uvco=X;)wSKw>fj4&#g3KDBoO~s_2SFPb`Sv2%`M;tTv`(S< zBv0Rg;SxCud_(L%fc*kTPXHI?N0}PnOzAGzTyCx+;@)(>0aoLG;a#o%-XP!564V+t z1+|Oc4)K@l3u%|^3h`CxpzL{DkjCCgQrC~=c>R0h|>)J`P)p7D_Pvi+&gHrB(f zxG-5vYq-nCXo0B9TqAd(*0p>@@=!hYiorTj*e9@+WcMQoc7cb1^?rW39|3Bw42Kye ze~WK3YaoftTuZ>3ABt$dfzOyHDn}jThlIzoj2v{MpSFQ-D|TsZm$|g|XIy;ya#!~q zqm{_k(Z~_!C=qd9R2n^(q{Ox8KkSKc>wNUdww}mGb&Tnr9?IQ_ENZ89=$RDL`Kf7I zZ*pl>i20Bw#>%=H__i+apc23o?5P2HzPby0HZ1O;9J^#9LDyW))Pk3eqjL+mn5 z0jxl7l)(xWaU`%}gFx|u)e>{@LRwa2!3(LW4_+h?1Jpa1H^|wuBm&NAc5bi`UeNx@ z)DrXIg}9+FUc7DKg*wvMujKOvUW~#V7n>K%scrPZi=-cWVrBXneT@FQfMLj$EkPdm zpo-w$F%M`?iq9 zkI|j5Rp5vB#SC_!CVI`!sorTJ=+Hxn)2RMMP)kjU&_CE5>bgwFl5W(K(GQXbH5rxd zg|mU`9O4heThF@@^STl9x)Jlb3;K8#o81rDCdjUZ?Bj)HS!{MSWM@J4M#z4%uq=zs zPJ^ruvQr^@Zedv#n>~+se!GbFifFGjo~Q9Zm|_#=UotU)B}Subc4C^j`P{DFPC zC@+>b_d{X$GZuMoFaCTai$9{VA4;BDPp? z;GPfQBYCYVaauCb-#9Cc#yBg$E?^^Yg|AK^k2G|H>IKz_mx-6w%!B;&bWjU(A>NEH zV~wJ~SEWN(PZfke2+7sEf^tnuP_Bi&)a?t#+^-6$8LyJq4?Ot01AEK7s(|l^n)nVS z=??(^z*j+yCstJaCB#wiG4O*_hmj-7HPGi;JOyF zZnVvV`w)`EKUyD4ide7hKSPv?%g}b@LTEqcX(;a-Jd0g)e*nzoMm=)P6pviH4{N*L z#x)MPG>1Bu?v{nieX$>}n~C@0d8ca;Y0l|%Eh5c1ovuY>YoDC0MU>gvr!lCv8EX+W ztV7Ias~YMElz%7{rQI~|M8D+ZoFg*&|Iv*8^V8yd?E9_fYc%g{L*9w_qr0plEG@_X zm-o#rVLvRE(3`sjTEqGi^15e`*S(3n?!&@)9m_2rfb4R}ZiMWUg=JZ8`FY4*2HBe+ zdwXG7mRn*?T30b-r$hFF!mdz7<=alHy?5%Z>9UIwpSpoL7t49sJa+UZ(Ty4$tjz^9Nyobdb9=e`f_v3`b!U>@)cG1j;rbu@x8 zA!IAtYo)74@;pbV4~hM1zbm%b&1$mrGxlV`9%j^*lq>rB9q>`^&-k3A8++g$_{l2x z5v)gf3G>63AqFevwQ7!wTv)+LdE8sn(T`6!6_|xNDSZ=`fki6|8JD1&s%c65=p&GqzlKA$ailh zS{?3r_iv-AzkoNPy@mV4!MFHTH1&(m;y#$q{_dZ-*rbwka4!wv*5-_xq1t`p1o)c?rF zT!nHz`dnrU%9Ol0AD+oSgnWmk<9UzG zvu4&oS-381mh=20&;^WBs^oXj4~!4iVc57X823o&TO2P#C$J8rFV`jMKOn|_R5IyA z_%5_A5%KaITN^_8E-91mvdT5iI#zFDtT0~dFkTxlUXM)VX)ccOnVl3UkE&1ZU1R3n z#WeRu9W4Q$q%)tT@#`)_&Z3Hu1m=nTbZ++h39gsW z>m0{^Uu<4ye{sDC*NfQwjo} zY|bm^pPQ+~d<>nRq4P3ye#V@ep_sj3?+ee-T%oy))u-XxGO>r+h&Cg?Oe2RX!(Ne? zuX-5sRqHSh8bbaMj)pYUr-1<>c>}(G1an=hF^}~i>d5e$TGu#%-{u#zZ8ZY_)OkY2 zANKXNawYZ4pM&gd$bK2J-zqE{q_RJR>{7_CgDm>49X=Yfu)GSKh9v$WKPo{CfqnnL5gym! z)#z{9kVCjp7hl~)x-S(4%6~u}hBI;PPvByUR;-x*Ldp6eC zFuj0&R3Xo-iX)da_8gSM`%2{C+t`N?dlA-cLcRi>Lf%5(19f8T^X4Ccy-EFYuqDj5 zEyaB3rZBxX-|qLz0s5Vv@_Jcbs&&pDk>`C`yXbo-Sk zg*WM*2j0Z90&1n;H>T;jj8f#WG%qbNY(eFc$ZcmVx*8ZJew)_plENG=_C^=>RH!#& z2s#I+bj3!A_P=^+-$BCdwOGT7;}Ya z8}>2|OC#bmmzzxEtfYusj`=RN1HYSs{yHDBQ_$8au*(4KFMz%|AN_J3^7ZqukJ)+n zE%Jrv$C5O*L!HFn!IA@7rWUfQ)z4$j32pEKmq~0z7xswfMw<4&J1Ma7z}(3QGxl6x zLBBgG+zHIYoNy4BgTLV*d`lGjs~GdbY%GfIbAh{p_eYI{lVNA5%s4A1b`fsDKD3*#A8i`f%<=cqIbi6Y@qCOE_EilvzlUE%Xygh zcUDuZrLxDVDdz6&R0G+n6Q~;nT1Gjp8$l-=*Ntkati!qy-OB*`SoK#oVmUK(7X9W$ zE!K-#tQWP|g83-)hSrWfsKt6vi}j!u>nW7G%9T|1e#kaKb}eKdFDx6NvR6ZP7G!UP z>^BR`vUzE`ipbHN3n zxS#n>xe}OxHbcKc>GRQs3xGKnpbZxQTSnoX%7HEAXan}FNne2L7vlPbSnI^|>$mg# zQ?tClm~ynW92i4u7O>&?C>l#9-Iya-Apy_GTzo${>A^MBu_ZV48EHBf>uR1e0@rn{ zf1zz6B3tjn-b+W`A4d&QcgM;*=z78w@WyT6YLxEPiuw5>{1*7VxAdo9D$8E`B=zPCx*hfBx}8q$QBU2?&^+0LZ5UCMO_p(wqRpp2pL2ET4O)}|I$pe8kjU;B)~U0S`-;4USK$26~Ie1~iJw#!b8 zyR_jMaF;gm$a&xsT2K?1g7`d&*c{xYYH*j<7F)SX;ETlEzH|7tXU5@dvDtmO2wE_Q zyEKP#msD`sIXia=`^NO;E=d{gQth=|imp=@!GCtlML^9T`^iu)0$Zb8kcY4_4-a8w ze%=zZ74;R9w@0_M$d|CxU-y<|7j2-n1Y9xDF=Jp^8>V(NG`ScWNNyHSIE0OMlvZi+S{&q3`qgc@uZ zoSX1+S9jywvm;yQV(q|+vly47q2-^J4~Fqy9dXJFA{kx~hxH?AlNS`_W0SgO_RkAa zW@@dM8N49(ad<(@4#|JXlotfvWIkR{a=AM{FQ^WC2Y^e+?9t(QMiI&ls(-VWOPJX= zprB2z?Z+lJDl`U$t?|u<|N2kECiRiVzD}Pv?6Eu#Hwe5KYLjLROF0Mc8vG!$zo$hh zALe|fQ>P3+=$^k({nJA6EI$bTn4@zSy&R!9jkjC|M~LGYM`#Y)H{i>f(I=CU=OLHg zerj-pa{X=296O6eSFn8yzL%|s{jl{qhL6Zunhkth-|Z6b)+jC-`#WEk!wp(S*V-{& zkcp2rUQiL{Mi?)MVll(VxB0e94SX!b3!=}SLvu!Qo52gJweo_no)Ghr3B+1`I6;NR zmHdk_uK74Yai#~koFENcAFUuK=-!j(1l?UU=lGnUdv@A5L71;Q9w#VS)Rz-)M zh-rANAq;CY|H^QI#&wh>1;hy814(`PK!_cT^R)CUu_q>Kp~xc+(DVG1Tj*F|-F%3} z0>*Rp_2v=y9n)!jmg7A?DPP6uUZRw*;&hKv%2#o^S2g9UINbxA@>S}=W2y&_so^G0 zYsk-I(y;#_8ym`3sWNe9$JlRQFnB8*VnwWJWqPOIR%m|0!do%)F)%RRO6lSgnv*cz=d|4SS#Y2< z-XCv;+Ey-ag??tdl>;BZ_Vj8yZ{>wYth|+L9^tWf6638@Q@%nmcq`x-WO*xTledyK zcq^6QDpW5AZzY|>Tj6+vx5DuzZ^c!Rw^E$pt$^>4<*nd(Hr@)yTX`#ZUjMumSAO0K z-Y?5rnF~%0*4!VLw=y?s@K*3U%3BF+#QK~kasJdZ*b@jmh-&a4YQTf21#hK}@>Zf) z?+f4jD9xMnsiuTdX-aDr! zbc44dv2l2k(0I>SFRWh0*Ib6rsu)RZ%+FgvJYx7UAEiA@P0otnwOK*M?ua?x*yJp$r&lgSwSpMIWq-0E2vk{>nG1yG1^y%v$A|5{Qr|CX9Z(0 z9r@MXpZwmi8n_-xklPms5=nLcMD{MlsFzrDg@5S7i_UJZSq^EHTf5T96i zE2u|CQICw%+Hs&SZzb1%{vUq@oY{W@{z|flz&;7)s;&GL$_LRx;IAyE>pH<-*&zy4 zRz|EWfopM6{FO_b^H*5xTX`?I3V%obiV?4@WbXz3ii9~4xw551>$(x#4e(c1bqTRM zi|CvkI3+p!6&9bXd-C#EUd!RHuyb;i`(tGyI4yLp1~Er=Z$ZS43gfSgr2Lg6`qbE4 z5L}H=4u5574u54r9{!3E|1|NT_zCk@OiuD6*<8I4cg4s@9;S1#;1Uf@?uugM|G9A@ z`s~EHD+~h_%-Q5{SN0NGn~$TW2Hp?%_vNk_&;K+3&&XY2eXP%OT%sit+mzVAlzASNQc! zyyk?vvXF9Dl&LiSW84++B&EfayMmek`25XhQ0@x(V-nZ1+!fX?G6nNuIoy>`!7p)r zxGTl@E#NMlkiOt66|Hs~!$46D&?VmH}-a9kd$xXtd#gIFhgcu@p zK&-8HrjnrGMk{LHzO~{ASlhlzE86zgCF9KmL5k1|q}slgFd+&ql@3d{_id(TKyj(G zENT~}EVg}H3zp5Lncwq0cM_67k{iv`YWZV6cV_OHGxwhRobSFop8kAB`tvW+pGT)Z zC(@tKN`LN*g(*#c{<+S10yXh2G<=Z@5s!yhr7<5xO}qd*zKPjvzOvKPQVdjZa0 zfb$m^rOk-{S^r^c5yjrBCAymhsfLxT-Sf50hy`v?%{A?)4U1eK^2wLBv&|*QschVm zGJMF(^tZ#uqrex5SIq{g zdCNZJ2OsV`Ke!Y&wB&M(ZNS(TjNQ=p*qY`nk-Q3Hr(o=j7<*gaW2xs+vIt`pjP+sc z#8ZwnTepqW7iHOTF6e!P*xBRx_ zM@&`%@$*r9PC|EAg|$#YE-SvTN_Y^ThI6&35fv4pJSoh&$oY8I$ZJg?9$NlamZ5CV z(ib)$K2t%h#>Y}5o5eT1g8Zaoun$F3l%u1o(Ny?84Y6n?s3D*giV8fN2Wr{gGmpJR zF`niF$k{#k66%wNK5Ulr4;%hwALaiFKR@5}hbaE>e6s@o?MsX{{M$!E4;T&KG~!ef zpeK+?Di0wJZV$c#cB+wsc2bNSzOMwf2y2A7Zh2>BY2rcwted{jg<>qf&>Wk%KvYF8 zFsnirh_m?x=Glpli0a5k%<9lb#5n#Db6n!X*drgETMs?p2x0JGKIG6L!g(qA2)831 z5;=!nj`%{3_`?43OMQ?XkoWi`Lp&ryJY?Uwon_4!>##;zDUEelBdw;n4A+Zm@ZuWA z;u`v?kyhPY1{#T8))7PE^D(I(KY?e6njVn#zr6-A4I$JyM(#B9E29*z8jk*1JjYx! z1^EOD=mb7j;)PyTGLO>Bv`i00}$8&DhuqR3P!V%A&YWgJc{7dNw4Ae9$ zA_*K+({UfgLEw0pavgD0C>{dGBC1bJaQ`O z7!gLUJTGGM$Q2_`o>yY>7*Wvcjef7hNaEb%sSgi}4go)V2|r z)67Svom2-&&(5{u7rNC+HcCVA1CButhGuvCYa4k${clI{M7`q|s8@P`Vi!+ZPt@(BzM&{K|B#^qT6+09s=#9dq*A#`mo!)Fc>3WYr2Qce^LyC7#q<#ds++h zr$HU_>+oz4H;dRJ>?Nx2A*wj~`F;QICipq(A4`5tHG_Kca_qG(UXFbRT8w@$;N{@w zUA!E&kb|Ewhej?K4|;h|hqduc7RcQgv=+aW(kFd@SsQaa@vm=WdiJfTPnw%IdFITS zmNs+dS<+NGc|o&kUrYI zuBiW!bAOkC~I0KK%%{uwQlc%{L8&jzMos9```*Tne8*L)}xU*WWBL0e`IA5AwUu}h*JhYdgznADUzs0a-_>FoH7-Ra?-+~`8iF=0)yQGm>CHS1y z&-7i3@%<)d?OMzOb9SLV@Xw^b*jl+5K1TF1L!LWi3GC12vVWWBgI+Y~$rJ=lG2-xx z=(9Dswz_)gtn_oa9{Ux%F*2HB-_vvoHA7~UBX_-A)Xge4>*kgBne%{LHc>kaV>!l- z!Pp6XkCm|m+kIwj0`<-IAfD}zug`g9eUW7t8|kWr*5_DRUt|WxhA?&(=AGB~ys(WD z4c=Rj`=D4mZ4_zA4d^o1vC z)*EG@#igjz;+y4;|G$m!N!{*<7RRYBT@o~*du->MM2oXQi?0VQeh7OUJ%(mtP8Bq= z7WQB4LrZ-#6?k(tzMJ2T79)HbqXGW7*W#Jld>EAogJ!@^Ka+A7>i!b>KtmEo-dV2EB3- z<+dW8F^go&Ua|)1UsBdUe{WmPH7i1HI}Wz~d!&n@?jmY%3_HI&FSVp@yn{_1emQCk zZG~39Z%;u%a|!azKOFCEX|>xyTPw7wqxe;?%3 z<*4n2n%D>Pe*i4G#8~KBRT1c0h{J7dN8X(Ry>1F*O#cwYCI6*+d0&;Ol2d&<>H#lCY10Bg<}Z zEs3Xnuq#c3U1{nWHrSS)>SbG6MYg5-4;u<>NJF47Q~RY)kW` zT`A^AC4T+mQddY)ew7VN0b>v+fkOrJQVOTk6zjth-S&SJs^jx#M4- z2_567Z$p<^gFLcYyO(AT^*mn%UFMM!x(xN}>C$EXkwVW+{10>-^gOriN~o9HU6*N- zzNoKv(`7y-b(t#CWiIX1WqR3^kP8P}6ZL)XE(gB@n^MEj=tI(`lsauwg5AogO{tV@ zN^Mhm*p%dV>=UPLN*T8K^=DJEpG&9QZrhY3ePX|VU)z*Gd-oP)pRg%;Y@1T|{-<3w zr2?`kvGepS27f(#Sf{WlS&Qxb#4Z}V2sGF?&u#c4u?O(ygJuk#07n=(-bhIQnKP{wC~6k`Ax2>2S0g9nOJGNz&n9x$e$M z+mz4)r1%UbsuQs9-)+<3Li8lfnudJg%eV8=8WG0tqOM6cljc>@d?L93RzaiVU_vD^z?3f8Ymx1b*OL#2w|L9$^qVBR=Qkx{yQndDs|*;fuij-mcltKyjmouG@+>AT}gY zBkj*GDlYR8JR9^D(G|phH{=%SJO9e{?|y*#&$C+!t{gEr`bj2&#q}2A!}T1z5R2E; zCUew&mhR_LVtFx^1&3junYp{|71WbcOuMR{VBSXc%7cjn1%bGevwqCQTiV3 z^=J}nr*QKjg@>6}(P#dN>t~Eiuk}*i_gb@7d#&rgNpXPi9m5yTfQ1RLQ2L2#_ zpZcX@rw{p4&3OI|w!LBv>>1P-=%IF(`A~xkx-|a(H{2R|cKZL@zS{l&Eqc}z+aaGd zyWjr*wlC{B^#5(RKbFQrj{V<_7;Dp$yFe?7&9x1vJrgN5e6x!6>>z4D1zC8BH_Pxh zBWLNy-1_b%>Hn?2O*}G1ocM2y%?aYaJ8>3VY5#Zdi|7Z88o|@?f3K&)=yk70@wvDb zdiEOhxKg>kI1BxFvlUUEYttS7WspI?1#IWS--*2htV!G>_QfnuAigDn_?J+w;eQym zr=MX@J&pbMTijO;x9-kP>AA?W9kKjPF)o1~JW~|V!(yXyMzK*fp%{ICv-F)m!+l(u zzK`H%&9#cs{XX;__tCb{z7IB6&+fdBw|d>jB#!l!{deSjtbzP2>E|V~mYv=Jzisr% zzVD-T9eR%Zgc+;1q2}w0%vzKs@5A!aeKfoYET9kVvSOoVR&m-VrNAep8l}sI!!M;` zeM;o|AifkdSWVLn4Rk{@veuV?b|8i<W_>Pw2+pCfgasH_Bcepy7l$&8QiJb0M;y zQD025r+JK`kQcm>8^z6(V~!YIq7(JPuG3yWoA3;}i+Iv@#FOqrJn7-S<4J3p(G#%< zH4YWjIP{^$;l#dc9F{hp2|j_bQ!w^MjJ>Vzv1K%NImR|%YzxM2=zFY>#_qt_c8uMJ zv4{H}>u)~O92Y{&O51eI|9GN`P-zEs-h6QXu|F=BX%5yMlA7@p!j=>?4Qt7#J)^5s+wy+!)pwGq6YDw$PI~T7I>wU<7~WUgPxybmh*E2 z#z2m%0ZrEs6AD@n-$C_uh4!C?-<|kP(1W@cC5Vv=hC7f@Fl2IW!3jB+UHM_h^t7zG z#<9LoN@E@B3pLHv-~-O}g=!jq3VmVGDfES^=4xPcD)JA;N!nr4w?nX3fF2@#$j(2& zvrOk7RIW#F)Wn(H^AGez4cUnAKNHXCOvG%BHhbnDOog5>+K_nwv^OH74bS$`dV_)* z^9@=3<{#XzAx9PY2ObUa4SnVxTnx-y41CEtwE|d!yfsx+0Dl#csrX-DZhH-`uLd#T zHNYh>7CFbLJXB*;?ZJ1@bE^Lbc9T6-VHA`Yr< z9mf8o@3Ewx*8T^^PQ%!nG4`u{k0sr-b`-{DVQdw~p5OOa@CH18LA+aH&F0^a<9Q%n z3AqGI*B}l&0)4ZYhh5nPVl0Q89a5}GBU#+LF{pcAPw5*+GHa68gZOMaR(NGj$$jdE}s&`BTCxd_DEp%hthG%kVW#xoYO5%xkkn*??nB}?s3YyAZJKf z1pN^yPI)ChcgiAHr)80=)3V6?v@BBcc4QGRV!Shr4U$DNDDTkoIh8Du-;C#T=$y1X zxWbl2A~n)hP*1W*+j)bKMM?)Di(sr{Sp;Jp%OV)-SQZ&gwP?eNw@}ue^{B8j)z?EW zh95r{IU)(vB9`@LEu)mfUUAvUIU>2}m5pB8)`BB{qn_FNVmm(BS`1%O%^vLELoEIk z^6z}eksm4EqX+I0*bLG=v&om_=^mdPwd0d1hoj4<-x;4g2|oS#X`epDC! z)fXZzPV3}r!j}M@Qh>2i{Jy=L?XW#K2Ueoe%o5YMjUi^@FyRLXQVO zj-+cm^HR{Zvrd*1Nr#WrNPZC{-K%Y`xCGykY*MrqvZ+H}S=xNDV_sR)T<4fqR?}FA zyt0bM_RlL#tV<`IlXgtVEd#BQs1Bjd)YH&c7jxmil$-t>iYF?9%p>deqaQ2cNS|gn z&u||0D$ro6>+i#Ps{dcQ9qSny2fjSj!dmNYn?C~^>3H(s)1o#sj&KlmsRh{E<4*88 z*aamncJ#?m<80x(AI|7O%o{tHfC7M4jKa zA?7Sn1KL@J=TZZG13D`71wZtNvgR`EqcX#vD8oLZ^Q6O~Mrdd}Y?_bWaM?R0-#vD^0j zpzeF;UI?x{c`tY=ukV+-td9g6JM2eIZRO;{`>U*(gt}!i*GzuL{&M2G&T(yj?)t5? zrPFWg|Ac+=?)do_`T5uzqWs^?&nI(!+FtGC*F)>)3x0w8e2#s5@JSi40fifT`}vlR zJmI&1->1{hw~G9H!4BJRv2-~3U!V{4^z+&D{!iE^1N-?H?Wy36U4FiT@+;_iy8HU# z8b%(UCkNTv;w%g@{v-kJ&W~Z;O-iw}-@b!JS%h%`XXT4uZ zuQ$`BU$x%$^_7l+9uAs%-hl_Va$p z{{ObGbo%=A-o8HMrPwr?Z8PBO6Q}a^<)wXnGvVtyqs!MfzfWJE{O|hR_J0Sz)aC0_ z-z{I?n6$5N%&B~RH;cY}eeyooQ}%tZoBHk6UOJ`E zvJYRM{!j7sO@M!or+t0&-l4BgVz#aI-^15e|L^1Lv-4W(yYsk=`})R9eG@*_g0E-X zm*m9PC+jxXe^%PpI(>b1E$2G|v%CBH#=J9M-;mnZ;Oomck9?PXefD$t4D<#WZzg?x zw@UjOdf0D=pDppe^!4dK9i*R6t`oZqwA{I$&&D@;R%hDJw-kLt9mY+(%YMFe4k&zl z%i$AjKn$TB6L>1Wtl9d^NDF>H`J3LpKAXPnKJDuxzf7OLzB4lC>-)^VkFW1~88@St z<=uRJ@bejnEj;b(Yr74)?R(4DXVc}Er7Qw{QPv)@>HFVK`}*ERU!VP4cG+ShkI z$s+8lgOEkwXIlojCE_IR2xI>>e0^l6La#~N-^2GUEGND)aLmIm!1Y*S$V`lJC!c9yb6-L+|@5kba6;^sL{J@9#PC{k17Qe1G=+ zTrGWnaxc{HI(aXg!uPjI`tQbd`T3;1Uit&8yS^hopB%@|?&15B-?fc}@9!<6W*F?Y zh~ukThWaIAgyElnJh2dRb!MPn^epsSnuj_k$kV7=M)^X>?^w?#FQgo>k@b{&gkDOJ zCxfVkP5Yt#Kf{_@Y2kazOFr{S@R?8Ia%_)r>^~5j;3t1Z=a|WhXwFgfz2>_noTrvi zKADw8^UcJ3GcjN9acm}PzLo0mM|F;wd^gQ^M(_DPj_VsuzJ%^R{gcPBD{*~i(*E!C z`%hj>^PSmyzRPfZBP@y$px%h3D{y@)aDBbUvFW(J67rvPj+y)|n(qU>=ero!SA^Up zX64d+8!_KT%-4GytHbpbQeI`}m`?vqul2hK*C+eDU>xFn@G4!-HW#Bld^Bkw?g#!q zAKzR~pKI~#@wswh`g2k-swh5a3b)7CPLTEEORo~?-+xfX4f$?Nf37XZ?}4G)M0&n| z;P=2*L+AKO_`M7Nucm+R$L|%x*OLBRTZ!K*MrDgK8P^9{=zOE9MM3O`5Wa{&?1wv_A*bf(CKezxs5&OXr`@s?W!GLRJF4YeQE-m0Ly$6yR!239dct6`A z-YXsA-R}_ZhC{rMaftWP4)K1bL%ff4i1*=5sNbcpx;{ooz(PW{pM+BXJC z-zN?Z@3oVA;yrm@#_+zB}~k_f7ra{lop^ebDj@`tS@&o$HeVIeN-{TPPiyh*9kwd&M=m+niA;$YfgT(ukUU;v|Fy6gGiuYTkzB+F} zyvuRymI3i@&-eKO@ovv|^MH7_=bJkq-tGBj4~Tbrz8eO_yFK6a1LEDD@6!X~-Jb7L z1LEDD@7jLwj@;D#-j81c!L9aftV7hj<^`58f{uV!U55NW5R!3-2G#Fy0@^0N!j1d-A{l{-zsx;r+%8<9&1n@ZRVU?+p&|9vKkt*ULDEZw`oeIj;U|1LEDD z@2dmi-Jb7`0r76nH-A99+w*;KK)l=Y-8vxN?fJgY58h`FG2Z9)!aHg#_Um80sTbaF z&M@BpHl%pB*Y}zM@oqn_nFHe8p6}xh@qVR4ykF)J@6#RP{bGlBuXBj^iyY!T@p&aEEv= za)|drhj`EL2k-Ox$NQk|kzX1l-f!!L_uDg!_hlKt`|A$ze#{}>4?D#BYYy@LH-~ut zt3$m1*&*Kl=n(Jw9pZhjL%hG-58m$>V!VH)C*Erh4pq#QWn8@!sYT@Bix%?>}{j_a8gN`zD8Y-{27M>-)hw`oImTzv-L3@ZNWP zq>RT*)_39Ej?cU^!*~y50Po**i1&LP;(et$ z5bwTz@P1GKcprp+)u!*u28s7?_rm+~4CB2u19;DKi1!?ac=tNQyW1h&6^D379ftw( zn{4`-a)|eTIK=xK4)K26A>NPlgZC9fjQ6IVc&{Bue*aD{yx*5Gyk9T%)jKkP_m>>v z{dW%W{-Q&?KkpFlJ00Tv*ADUioI|`n>k#ixImG*u4)MOFAH08ei1Gg4gT(v&z3{#& z!+56}&qJ5LYSX*N9OC^^hj@R;A>P+I#Cxklytg>Sd$U8lf8QbAzvmF|_c_FSQ$Kib z9%8)528s8UUU+ZKFy2RI0Pm3j@g7Y3{|Cy~mgC_6A1Ghjp6{yz;@zI_jsfv*&o_TS zyxa4AaX`G=^W8ci-tGCmFd*LT`93!w-tGBr>Id%+3^Cr<_Qd;u`s%t~cz-ynW| z;@w_f%Kz`bK7swbDF46z`ULiTl>gsc&Ge-CwQm)eLnhi1*(+#QSgh!TXQ<$NQk|kw5K;_W|XZpY_7~|7HyDS4#WLr!#M!B5bqE7gZG~gG2RnB@jjqD z^NU`1Z_hB^Ycha$%KvwQcgp{Ff_KXQcY=4y|966S%KvwQcgp{Ff_KXQcY^n*L%iSV z5byN^;(fgIcYnPfyeEek?^}D}z3+H2+rRomFT8KdFy2!`ig$Z`DgVEJyvuQn^8fqC zyFDM}|M!n~dp^ql?;r2>e3bv+Ki=*6DF45Iyxa3p{(t{?x97WhK)l=YePTeo+w;wE zi1*9;!TVGF<9*Qb`!hZ9KA=4FY%jb&mtnj=mjS#}{=XBvQ~tjbyi@+a6TDOYzZ1Mu z{=XBvQ~tjbyi@+a6TDYA#JkTS-pd@~{j7fQzP*3E4_bczbx*txD9`NZh4)<<#(Q%H z@J{*vPVi3o|4#5u`TtJvPWk^%@J{*vPVi3o|4#5u`TtJve%vA6k2u8p-yP!pU_W@@ z-9O$3P2XSWh4+EvnHPKE{kIvzdr<1DU(5jBDgWOI-YNgz3EnCH-wEC+|KADTDgWOI z-YNgz3EnCH-wEEIbcpvY4)NaZ5bue8@cz3Y#`{Y>@jjqD^Kvh|{~^P8zbFHEr~H2> zc&Ge-CwQm)ec&Ge-CwQm)e ze3bv+Ki=*6DF45Iyxa3p{(t{?x99uZfOxm(yJi05@xDI;c&Ge-CwQm)ec&Ge-CwQm)ec&Ge-CwQm)ec+Yi+_bi8a_c+A6+Be>l$A=j2Z}!6bK=JP# zz3|R5jQ0f@z&qvtJHb2U|2x4u<^MauJLUg7!8_&uJHb2U|2x4u<^Mau`|lm%{WlKr z{(?ii@9GEd=#?`>`P#NTuJy$GK>BK}wXqh3s+wq%5;(?*zez7b;T#1VGy;Uu$GYFr<_fXC5}-u{(x~y7u8_-M-;s>fzyij`h>nC(iBmP z_3#|b3!kY9J*pO1Q8&{yH*0F^K;Npi*K~Efb_-)AC!b@7ZeeXjVoh|UsEn3{6^~0) zCdz2^zOs;i}#r+(Pvn;6@B{qr4W*^^vUF65S{J|_?_5%If9M7ZGwEgrvt zg_jF0FnI)zFSsEXU+_v$JfM~YJR?FzwU-+;uQT0!EM=_PUm|LwhQ3HGz@Ae?xtECw z^oLTP#Qk#bE6feL%01{G#w|7BX)2|@X~7q9FG@Txg72*tZ=8IcZF_Zz)#`kxxo1!cfVy;K8aqX z3%L%Q$A74az+IXMH(sj+;@7fp32?s2%>xUr4F=p>gQ8U}i7#*i=dYvR>7Rg?qriFc zlsKn7+&|XqA0n&=;%>e-PaN-gjlqpJ&Z)nojq?-p^?~(Ur5)qbU0A=Ku+C=pz`7h0 z{M4zj9{lf9VqN}*UE2fe^1C+l{_Bl(wyFo#3*j|nzwPn_&Q*cY;UU6kKvhG8Q=@tWV>eiRGIr5dvO9KH z(Hz0sPR4HAM;u`HHT0s)L9fXi^qR~;FUnl>qRcgXp<|+-0XDfZyPIE#j8)iNrnoSl_sBd+TJ}*S~o(?%SrEjQe0N zaGwkLB-aFvA)n+zKFNW6l7s%0IgnBE(lSa4ay&cH!!wBcKu=Xk_k-@RM`f6Y`dV^1 zUiP&Nx|^gPP~Sw~8D&X4gPnK=YG;2>JfDrs9?$F}=l{U}xS%h%pf9*U-|##OpeLv- zyk(0kJOXm^np!De;u$itHHp5UD*BR7v7b|^LU<~mwF-}D_0U+e96ewgi_up!$-+;o zc}7_aFj0ze!CZMBvTEmC`U0AZGpm7cMZMkKz{?ci4fnUEfm>P$=Gn=@7i(F!@2s_nOivK-hNk85k8=itKgbm4ir z@H_;q@0SV~)dD>V`sD%r@_>GMK)<}8UtYr(f?hboi(a~3^wM?XJnF(Mb3@m1qnECm z*24T9uKQuE_qtm7EOal{cX5tO-}x7=-*+Ypk5&#a<* zs_Oo~mb|B&^gXfXaZgp$e^=g94oly2cKV($PTmuH+$cj|*oPa?vv?Nz*M@|ig`Th8 zAPZ;ZK>uFP^_f58)~HMAKK7RFZp3+f zF0N$(bt6ZgU#{QnW#L6x*eAK^eR3K0$+wukFcf_{y8qx7K`U3i{thgi(ba%+(Rd&)He}&YyDY zzUeGHN*yI0R+R47ulKzEcIbyAs0XsV{^*;%u0P7Lp4{?g+1Fp5V_(1jQtY$EO!wwM ze|);{>u&{(Z}~AZRzJy%RWC4Wp;unNo~Y_6Zund9nWMKb zK3CEE5PDL#V2wHSWPDe!L14YPF^u%ZDc~d6n_9iFG19gQd)A9R>&2e+f(Cm*gFT?Z z9$1@36Sm6F{hc)La4p|`fB0*CTD zHoxmT>^b|pwlC?OzwP?2{)=XLv{3kyh1RA?OrKoB;+pIQuSeAmdZz!L>r>2}t`DAdA@)Y0b?&)L-(1|ecVKJUl?rUev-T&8$!2C{Nem^jO1ejM-Ms+dv+)Vi#yYJ2Jdo~l# z7kg{aa)i zV9o)o|8QxaB-^omZV70^(Nz4#T|^@ai1vgJw->@r*CED29xEFoU^|6ehW_p4wV>JS z={bOg(-CrO6&<6J=HNW&&U(-+6||?B=|>I=eb8ll z)eg%Ao}4$QDBxKd)W3XOSU()W;&)!ltP$rj>)Rj1`)io~>mwoSqT?w&&(mRD*Ade5 zBP7$f^hH@L{>{Jh_#4;p_$_bn_@BsP=EbyuS z#{xIs%x^jP{o|m`sqi#av%KIbB)j27d_(dR$UPRxKDi9n8XQjj?1?t%CAcrp<9K5- zXfDf5qrRU&?m!5kth5sus%R-QsIp%+b#doiUjsV#r>ZWVqfte3tZ3|g^<*!&^Hh9y{ zBcb>a{CC-A;!TQC`Tz^Ryun4+O1wi}x2l3SGuCuH*|XY)3zB)NBTQ6>xOq01#MudM zRzmfV^w3R_!J(vRD!n}CZfPYovRfSh2UVglM&EWkJ1?vJH#lWN5 z4nZbR%<_Z+8B8_(A;=sN)vQRUxF^l53~7PCuHo^|ui$~dH1hc8Zs&pjo6F-jU&8}` zzL>{9dmeDG9RJw@T5=oovxbyWc~#1&x)FPQBKG=})L`WbJuOpM>Z&f@ogtb4U+pl( z@I@5pd04YCD&%j-lp)BLGlWq&3$pS&VRoYf@doVs)+yMV8;iu+b}rT^c#r3^hQ4or zF4fG;wGEK(As198NN>YA$O_ooMk(foy~6OV2X+tU155egpw~6I_A+20`UQIaQg&b@ zI|PTtKfH=`gA{awl-{6pgo9Zp#zMxB_I)|FJ}-c=dhy+mc${sevicJ#`Af6<0tL!!25v-j(bgoR}w#n z;JuOxOxnca8z}&9`FBxp)vV6?jBo_5*kw0dLSqp2GW9lBXn3w>Fh9tMO=x z#?e{?<|J{1{h&eZ2!9RsgS1>~LM{~*gg5NtYRIKk+p(|rxNsiNrvW@?3TPX!Cigkc zm*ITr9^iy4WCKd?_aBP#go@{>3hZ?gdmi%vx4>&v0+@v@0JH$-K@UO-&MTNtV%8|b z`O@t~*B}#f{01-hz>G?~{CN5BD#NRk(;SecBOG&pXL4L~3&z9mT-A>8JLo)N3Rno? zy73!7&iin_4ChOCko`czvnKt*ox$hXZ(X#EKI7SV#-Q2q8GkY9G4YITeh=Cq`TZ10 zL(FmoHUi@NSQqendd@^Y%^Dzul3BDe?;h4&t~Bzs$zW%e6Q()@Z-XUFKSz*0$x*Q`wNxcfK@JpUsWenKm>R1fhveW2%wF-2r+i$~LZRpTtMU`tSUyIt`G zkSQN@1MkFFHEygv3OqN0uO8^IH1O4%b{6O>h_B)|lCK8y-ce@#|v4&yn$JT z;D3661;kCv`t{L}{w(ClC7urbrH+u5&vA|Qu=_%GIBc=NSFhmlefP4!XREle>Ky#v z_nCFiJ#6otx4af#_!%bFUc%y6{TMQc277}7d(lD`xNj8S`Z43edI_M z82KkTPuG~==N&iKJ_*@mB)4811zBYqWSvh+8N@7$@c7OjGV41dSfJ^TEWRJ|!>*&D z_))s&-DLAsj8&Ui`1+k`evbPkIix2)zmN6??FT`+xYW->c-Hip<5|-&A@>8$<5|<^ z5T3O>k7wONdqZGvfG>gWjRoBsn{a^+LbifF&$*Jp{qnEOFYg}&zx?idn_qV7g5Zn) z+WZnaB=}?_=+BC)({=}y!_Ev^0bcnac;tgg9+5m(SqmD5@qolKEvXFJc|czQh5B8!z}R1t1Ld}_bhPWamXt%tOa!U)ibdc(B)wV zG9JV|uiKA%UxRy3b_gGMx(_le=hFX@A(=h1Yw$&^!Evm?m$3%Num;Dl2Df7kj$#ew z|C_AA$FK%ZU=1$D8f?WHY{eSXVGXum4QdC!2Egjc_Ne7r|MsXXjbuMO>tVoq1UxWp zn^H(NRysD5&J=~tM7Gw0(%yWbLt85Y@9e^;)y+QK-3EpK?y?m_H-sDw{SCeu13EZ# zL-6TY9J(QVaR>9IU-0l2Me1>yeNE&Kv7+!H%WJEj7@xQbyc@Dw8D2iT$bMXjR~25> zc-4^45U~UEj|%;oIV_Br3CqnCt7I}_6B!H7ISM&zXV6;UcIkIPr+RQIGgrH@UkiEs zyaH}5Sis`@ium5;?vynZziFDx;^q;Ixd<{DnJuq0;y)^CVdGMnq|1{JVjO71zQb&95$q+nu7LU+t|y9ErtvI( z*8})359s;DusL}^E3SckWjI||O7|R3?Y(|3Y~%Q!>sv=jU(rIW59lxX%$u$xJ4X;c zXfLjbjWA<^#eW@U`u&g%M~~+5y^r(2uOTCT{CFtv_ZwJXZd1wykK`n2>0l+vfzWbCzXnSWik)Ec>@pJJUwl{x)AoO%ekJn zBo*%XyE~rsDi`Y@V~$)0*)b1(eJ^}X+fsqwyvg=n=XrzphInWi3!L!~)Bj@>WXPLg zpPJ6Q#{8$}xVdgoD*oad%=+#bEdJdyc>K>_h3xp5z;e6=^W*shK23ziejOxNZlm1`G zsIXHdIAm1VtwOM0aoDjEvMP2hS1;&S2l4c~rLiL32+ z)<>|Xpl6H)F3a(}7bb&obt{W6TnpUZ3w;W4krGSna5&4S22|(>nlBWHu9aA$Sc!0+ z;v(Cr{5^D$fV#rQp$0vn6xZm(HTrOkV{wgRq~=EvMzTy%_?7rny7<-3`AIb^0QHZ${z2bh@B#LOuRn7HH) zW?nLviD}m`bJ|oUrcY+(^a>^}9nQp5H#2e$xnen77`eklEO&;>$eZPg<;`;$`3Vur z-!2TcM~$&Vs=*^ljKd!08l%Qs6I4Tl)R>r|8pL0@Rm`DW7X7u;M_lqGI{PFhVPI| zj9Y;3roLg+93p$|8%C)-_Xd8C&kNo#s_8iOO^l`U&`IdH^-atN`^SPejj}z!!WP(V zfzO&`k@RVhOz5kFe4@c74V(SgMrMwy<7TzSMfDau??#T;U=1-ZqUmKpzPqPHZ3yut zrHJ9!2-Y$w~5 zaG{bH*#89{-~SQ3%6VWmu)BW^;yu+I%mrIa2(}omntqJ0#GL;1urVbx*l#p*YC;ut zT$@}B`Bsarh7Jz@FJ5l=ryJa`Gh>gq52P&k8Nw9DPM;ww$B%3VZ9UB6=dNUNZ3p1&Yes~G?OOnOiM_FLw132G`eYF|b-U|M`pfEo9 z2LX= zQyAZbeJ5kEb_L_$H->LBd{A2p!%LI`OAD&u?_?KXK38D>I@mY3z&x(_Y}g(5uYv3x zaRp#Ik?U8a=0P_mJCpp3BhDunjm2*;9<&O!r_S*tAK*E0Yhy9i=}1b9rDw)nG|slW z!9IGUpA#Lya};9}@Jull&lfRA z>fWX58!@pP>ub-2d&D)v?~XZNsn>{RWeLz4(-+DD&B_AJ@`BEKL1(?7vtH0yk3g)A zSsn6-aq!`fOSnO!vQN`2J4OK54ZJUC)^n0(oqcMW)#d}8863?jP_j-*vx-#MqfgMR z?(~Z2mmUSpnY04BK4Q*RZiGJqzEkX1Yv)XShA&#(gncj`@dHU$+`Wle#la)iNT+F*6PndlIyjoe)YCNU-Jn_TCmE^!ucxM2r)8w~wN55wq_!6ZNpJr5 zG`%@ZZ{C@VRNwmEr8gJz(>mGPv;o=l=G%_x&8?)9u{%!Fo742>ZPS}JvH`Vaou)Vc zhBoJy$p+LmeUS8K{6CxC!1jC`zCQR!A{u;s8hm|j`1;(2FXTr4CwwZi+(ykj73Wo) zS7BdN;SW)*9F>W2@UeMv3uP|o+Qr4X`j3?H=)*;N@l5Fh6v+>9Gl_t>EhD+P#mmLk z*O|HXPfR@V0yCd@l9|8wF%yrkW#;4Xb3VI}na_TOiC=z}nZNub6WcCf=C%(p@zhvm zJ~fhwr@hR`ZDz4t#Kq<%SS)WlGxGPaSpFgSH@S$hVZz`uTrob&Ww_?KVy=WR#C8!A zdxW7J5-}wt40VQxsk4OH+CI|I=7|`5OIB1tUNA=;muB8{CGFSx>0%l_tIzT9=yep^ zEX1^kto_myq?#ISkD``SrHohdz*j2pa>ExyFN%3e$1z#>-pa$vg%^#(d-&t3bol1r ze;H>^8z#gVV-O>a`H?e;wdGZ_ z?rj($D3j-m_%2l?R_zeozZ5$i=-U zpXm+zQu^yf%$isPzZU!|OY-3hKAZ|1-oecuJY8r$y0|cqzmLZ!BKM^6`=bLt`9Az< zS)=tGF0S9};(?#M%H#KZKN!E~icoyXt0AN1x4O~#mac#4@A>-ZC0xHQj|cwizu08K zv8Li+{2Pcny?+VQN8E+@rzh}w9%C9=;2ZzNtm_&v_V+ygjXCz15`3Ps3$HC0vyfZ& z-^s1tW4>3P#hAJFnBfa}VD47Dc6004v3%=0cX8`^58|qh!$*(t-|=w0sDa0CDoTIX zh`1wM!><~7{EyeN_-pvDZ{La9Q}}!Uv2zDX@O#8x$T89MnA!H275Ka#dtiSt#+d0b zW_k=_C1@TCpa1X)882de9P_+}c#2QpcYpXI3w&udVsB044@BWBn+<#YOvG-iMGVJC zZnPqowdDn7Jct@J>;A-yN1tTI!(NVkR}6f4#CN7B$O}-!vo|W@@!J%!yFoF3)uM=( z+7)o)j_sl>4j{L9i)yU_%H!tgDo#J-PhfCo9a>M`S#=ddG|K*1NON0MQGpj-x{9l@R zc0vW-RbWyTInMK1`U9kwkS!n2?b=RHQHXt9TZDKW z_fW|=hUbKgqvs!TS$QX(`Q8yP?XhK?dhA)qHe&6&BHMJ)5zl**j`U4K*mM2Ukl^$0 zDh(Mgb-~+C(~zDz(rFsfQ%`zN(UA9>EF$e7_2c`eBW>2ZPe<7J%+Qf%&px#*a`}$a zvIyC1GGl8wEsMO5WD!Y2f>ZmXA*Ez%slVdgry*_scbbNrmPPur+5VGdk*?Y+$eYrP z(lPK8O@N;$1V7OX_=#r0PXxb_FQQUDChBRy7UC_CzM`=W@D;rdJ4j2$>>!4#nZ;b| z8EhO3HV)MA-@{(+3$Fd`+lS#g!2=Y-vEbW7N5WXSglfYM006R!6N3I}zCXFg;4a4W7MpvUg z204>T-o>lh|#*K@PBnTxt*+z`!*wE{i?lIOZ z$Ys{pOdDW>X)iQZd*M5Q zuVj@QeiXb~@M^^iHByXqc-8odZ#j6@>zHfsnD)H)Fx?NHcb&%b7VI5hzZ1`;WCvik zy-hq%d6)6rqdttJ!?KQRJ8DrP{|EFaUB^`+x@@T%QA>0U3#hHOo!UqHr=?KW+SN4e zbJ=t+xIxrLT$ZGJ8(pHjy%@glV0iRK)I)CrU28*)a-wfR^sh*uc47p%`puvx>tPdz zEw`K_hcMwXkvm8>ajK_eAWx8Lwn`cz*SzgN@mpE5%2)^5@!$sdu0xc^D02$&TkK(c z-?9Pp1T ztV4eHxybMKBfq=Eu5+Wn?*e(lP!Ay|n?u$Z#$%8-4EHR^8uOUpNkG=v4q0OlWQ{|R zH6kpQwTv0rV<2Zt;6_e}$8u(HBX<^$-Pre7AB~-fv9%aG8)N79J+_R-7Gtc6vE>*$sqe8= zXP|DUitANzy(+F(?eltT5>z7ybSD9sDq`1=N4|7ZJ<;6Yc{2A_MGo%KBl)_!6nTnQ zYLE-M_BP~#lWGpqe&5@0;P?8s`v7tsx1#pL7SNsj zg+^7fP(ODDi@y1Qar>2^|`$0#?cVV_q94n`B{Jz2QtrEu< zy%QW;D~`zg+`Z4LzeVlgo>*S6pT#F_20z=B#`4C(PMmhftN_ilRM1R~Xr^6<9rcTg z!;1;$j@dMLglC70 zQTx$O`*VS3M_?1``hYG|uPn%cpv@bd(`JuWc3Q?D{{B9YF(hrS|I<6d{67oFqdmKN z;J5^`#XG_AY1;k%q1_V4?0?=7j!(Co@_x^0`@;LizHq&?FI@1Ba6Aa!Pc|~LjcumdhtcSH@L$4icd~7)Pn+18 zZ__4rT3&ts&|ZmIhCUZ6d?^0}+wMP$P7l4U;j};F{o>EC?Z6NHvoN1&It?4xA=FgP zGkg*BOm}<$G717&KjV>j|-~5+=M(^u@${+F6t01qQiXP@ec8TiM|OJrOeeL zWj^>g`sf@;>Gz|KuC|4XnmT62OxUy0gQ6ra&#c+P#5t%dd=7kizB<$t-hvv^h==*x z-+260HQ+*f7;1*!GL#n~`(uK8TvOyJ4f;91MSc_Y~xi>FDi+ zI-OC_%ZS#r)S!5TJK(Q{4?BsRU#3{H&aYh03+a0HHY!Kqk58|0{RNxLF9*L);(4ss zEb4ns^^DO=4m~*VImp6?H=zc11htlJUT#v)ELlI9!;c?wQ(as9&xbmD_`YY;bw^A+&|zrjrea!M%5Yzuin-^c4A1SU zn5Qvicvq%k-qw_nwJ8ZmWny?9+#19IQB*GGv~_)c6}j@b%~!k4V0u6Dff025m^ z#02bdiLE90%^pQ;^`j0u9nVE<10CzI_H?`&{u(;YL7WL4Z^ydPv5|g{<4XFyCbqWH z?=`b+6EmLymY>MLB$&0oyn<`cJb@kApR z?JK$Y%T_Laxrv+4ZsFqDUEF;902hxRMZS2l2(_EtR^#E+-j!Pp09)wsJqG>o5EG^# zCW?AFS1xl|3VH|l5TmsS$Fdp1TI9mD%@TUHz_p^^!reGlBL*%f55HN)t;IN2Hgi1} zH3JsrGV5FUsBe$ni9wQ8>szdP)DE}@-=lxDo{u^Q<2dr=a?npPgu4HzS%A4LGaEI^ z;S(0ws143t)}2|*L@y=FgL<^+tEAthpl&!vpCw$ETR|Q11mfb5rwFVO&IoVlQTc-D zOSo~5sQH}GL`BGLR&c~9COk&z_AER@6*xyt??b2!zXvaT@89kbt+g7St7fi&zulKC z5f!y1m>Yf1alUFh`lPS-gh%beUaT!i#{jn2_>Lkjfr)_D?m|y4#F?!??c9XdSXGXm z6xbIn6hD%r`qx>&X_lx!jp&Mq$3V{=V;#;tydQBTN9Z>m;Ma@m_2N8!pL8Mi#D&-t zm(h9z&j$7U{ZWdK%M+l#rZ1ESKX@ME<8rY!xmc%MtXVGBF9&OxgLTaj<9LoaE|Cqo zolkl87S*}dqB{5ydYzK*1wQxjvfj}jk*|vNOJKjM#X4$eBQEYo*y}2NCuuf%f9kaN zK?9l|^WmAcJ%@Q;GirwA82CS6Ajha21Nsks;0uBNgCCU60{x$tjq}+!pKVk&XM+Zv zf*-J(PR$SM=e%QnFk+DWU}+v`)v5TwRdpxv1D48`{9vh))fYbi-}8h^zz6319esTM zfZnus$QlyVhZcRbWn56dyx{uX|ADp9$=4f?f)^mBwi`bvAz9k=BMvJ{eM@@qgpW&} z(9nY?%$V%I92nSwXOsZlC!Ub#;t7%;A4crcz&znH12LjT>3XFbZva2)iyF0P%9cYsdOaRL2aF|TMsoDO=ROhLW;OSU3TXE)+>UO}ABF~sSh zFYxr?TwID?4wp{m;2&5L$(arrCU zy!;r~-TAntUC2enzGgeY%aVx6ozG%?HZxo^5qDh74WS}m^^hwjjv)4UKjMLk5f8Kx zvBzr=53~aDKv8bE=cCTXY{VYVL_AO};(;b19;h7gKr0Xr6h%DH5%ez(DY5J$=%)}- zj2t>9l$bnn@G|-w0xy&2RU=QHS7Y+XH6vf1*J3#8`FO^qd%XRvxu_kEG0mE&t-$>? zBd&Nd)|`%0vF3EVhG;vEbFt=hyaQ`a#|2pP=C{4(cy=6fV7;1M{jU20w_JAC zK(6FjRn63o5j}t+=)JkjW%$9veBfPWA@p~hfw;p6H~h2ECukWre8jK7mllHt=D?qv z>p@)`59-*snC=zeQv$t=^O&_L5A;y-s}EUAQ2!X&+DY-2zz`i1zz`idFhs`?FeJ|dL-IT@B+mmw@;orK(Ig0E5^bj*uBEh{h{`@}a1&z8RH z#ZxPjz$`i;JMYTK%Q zc=il^ZKva0&~`c!ZO8G71>mDi;G++Kk8TDZg+4wF zJ%qqZ#dPp%@KSLp`XParipwU0kAjy5uK^F8Yx7djb@5JlX$>b@$RU5GdFc`G(qhEc zZUiq~175lUyfg}4Iv>1rHhAew@X}iF(n;W@<;dd!y~vI-@KG)*i3X}T5)Gsy(Lg#9 z4WwfPG*F%g4V33W1Lb+pK$Z8)N7HNlcKPT#S!+BmtTWcSwn_5QK4q5$M4zC`L4J{Z zbY+^4RyTu(uE&dbDDl!UHXkhwftSvME;s}8E(5)dfbP!XI{2t{H~8pc@KNwmk^%K^ zrFp3WJ_=rHdGpY-t&^9wwOin$`V#O^@KIfWk4j#e3tfXNx*L3y_-Q?Q!{w9S7a=|h zo+^1M`jdsgPkEZ35-&}FrxHH}FC7;FKMnQEOYyuVKLv&$ukKL{$xn~CfFl=h1b(^( z{B#BQX%zf)KKSWu@Y9*#r?udxlfX~Q1#kp@8g&6j;HiWo$t&L;FRj>8ENiNfOvc-zKNp`!;zEllwL~*WS0uJM4Y? zOYGZr?Avzi+b6MapTxf1hJCvY`}Qg9+o#-IJdJ((bOjgBVBbE2ecOh8yJar^`wmXe z(@ZXa9ia*Kga=?(*v!S_TVX%g4LiasuqPZtzLkb+I#47kBJS{rS8RFgo!|)Zs3enF z{o*LN>XbOT3-TCbGD{sY9I24W(0gq@daun!@3omq%vFruYbx2*6vC{bY*b>(5d|1h zfFTtaQh^~A7*c^D6&O;1Ar%->fgu$bQh^}_7$TXTdcFfgG#Ak#IVWfl9f=mvk!X=T z4_YM8gBHp2phX*j_o0!;@IT^YnGAg8B$ zwtGJT%y!zn+dfJ%nY9wN3(PI($!y!b1?=8t>j}HJAiMWne}vup+Fo|=;^Od#yn;d5 zy_e?Yo!ZW^ujUjoS#H|Sk<*WzBP+bp?Fr1?3;V{eq`f;Z*NvK)2guH$QJz`9c8;5O zfAADCnX9Ru?B4aTN5jrh-d-GDscOJtS8hhyX6=G5fZDAgVcV?Rs!rI(SyftQJAA@6 z-d0K1)6G7PoHnwBtOx(&$W7y}y-PgDsRmOwSxk2)?fCwKpw~D){xQ_R{Wxmi-hdjoUqlVuJ3+g@ z4cfgLwEKsk-M;|s{uOBVA3(cbgALdP+Fc0RT?X3yLD24xfj)m6^!o!OQ7* zC-h@FejB`-j;moO{vkKF{sOf9SD@{G0BwH_yj|LZsYWeq8dtFxD}qf!;W2&~HjRC- zY3zV~DZvauM-Ewxjv;O+bd2yAj)r<8WHQ(%wGEKTS|F1xhfLN0nd~;mWH&-4y9zSd z6v$)~A(Q#Ik-Z!;*%TmdEmT(EquNd^(0)F&qtF zLcu=4`C90pssYF0!b zC*k{^x+i1>uHYIJoTuOS&^^hgV6?6vd#*=-u9&`%M~vkj=$>v-6>&rNbVK)aL-*96 zdunENNQ3UFLHATakGuoxo^6XxrgLX)I|ZF{H7%9)+%NT}SM(ov9>o^<>At+Hi(bk9 z=KL+AW*F8yg8c&7k>p1I1jvpd$c;0EFhI{rVB1?V2ezuq(UUx{LsUEqpUjdDv+VMe zS(%p-mCvF-F#LEcuLC`MoS8-)6UGwq;}wVR7kL7HJhP?|zC4Ya=hVTMw?*~`CBI$Z z)nB3(F#K}l%R{|i`2D2aR)-(YvH~pdx5v44*153Xd~>*2lPnbE$NTx;$!EvI4Xz21aE_K0{+?SSn{E8S^LWjH?KVx%mZB&2 zq5Dk!O|7Y*rnzcrEgq9?1H?@V^u_w=+gER6&hUk6Z2OK9TUQfH z5cj0nb^^F*_pXg?aN2#23$X#m0d&64yGB9+0RjvLGJnixN%OATyzl$mpXc}Rdy@RF zoMDEEcUUDthnDaz$@`Xfdm}MvB&Nq+LH|vf>=l!}LL4NAZk(idYb?N?2Z471TdFKvJatwLW-!RrQjZVVbq67S5h7YuaFv9#cnTm&t& zPa)>;tKk@h@ZK^0luGSS`OkV!L#JK?{uCXjc=g}(o(89n>)&P`j=&Q3>z@Z};>s!$ zzHbT+MGgHBi=R?v!;3>+!?Gc_z6aiM^^nDj3=honluVsP11;CdYZ`~3Jl! z?44urrW)~IP3t7LYcBC-+rS>La>LuJ-1^;BZk++f%O-pzojeym7&(a8^Oe~1mE^ru zvgayK01v9-1h5)7cY!@YJSfhs;aq&L^BTy}J0>0!=Wexz@t|}+gZ8nQP=24Q9pLWa zKWgnMqaRzyv2*2V+W_~;n4G64(`+}&;}@i`bp#_4KaWa)qY2IF^AmP=zvM?muXV&P z6kb;4UHW2`U#qtDq3rr~%Gq$C%HE^%?kmAL#D+@-onR9BRro@Js{57(@ymQJU4mbv z0-qN59y_M4j~9ur3rrH8!9FqD+OOsLssB2Bu78ijXXLy#sgo;dU(b1}ZGrr4y)M_u z_32p`AqVyh`Iu94z3iT?W@WnP=`%QUa6!mnt^{od%b-yh~D z@R@28+VH}$YW#`S_!AwoIqBd}bR5H|5gt>Zt1&oh?CDkP{}lVbkNtm4oHfopo9RmZ zbYgVXKjqZuD*C%er>n&8OpLD7g=dbgo*PA1{m&KXsvxh1F&8H$ucG8dPe@*AnQ#j7 z>aC;GmD)Kmx=Orp=IH7cL(8jMw7mL13v^YWs}rNE{)x(~XHHRG{q@o5D)HRJ=t@0% z=IAOfuQXltx1V9U`hUp*s3Hdd9rF>f%YA$5>%KijzMRzh7Hq0xW9*_Qo}5jU4id{g zQJd;I@lixu$H*wJmvxGcwW*#Hn@W8h`zEjvTgU0Z))}^!uG99?UyzSpBz0$IA93F` z9aZVtt%h^cY$dgA=?%5hoSSA5PoCmqjX!FaY}`9U-FD~ZEOt(0!zS>?2mSa}FF3ht z`lv}v2IW~`jOb@|>*qxOn><5or^u|w^!Xd-Vn=m#K9#+1kJw_qJvZjv)V-Siu)Q41 zdR^OL*ktr&_?XP)RgkPP$-t|Toa{+llR+E zW%ji@@aLV&eg|LnTt0?|#`EWC*%PJb z&Pn?7eEC!}t{$hyRP}N7IDKAX@|n})>PFi~Pn}^su0U7kJYDtgpBP>B|MRKQRrIx^ z(^cYMCq`H5f1WwI>i7M5*NNYu|E>aE75okp_B%v%JogVKMpx0kQ=_Z?r;koo>Zys* zRbtJVqpQ5U(sUL5WPz>U@bi3UpPVs}rNE{{KEPy6XStsnJ#RuZ~Vv ziNBl}U8(>3%+XclD7xyuyg*k4x|%RuX?)7WMaQKpjg20?^`z-)rp~YU%D8l;$J8Ci zr7L}2V)2=ytGs>X%c}zgx+>7siP4qXF)_O8Z#^}-ie7Pax=LI=F}hMS&m3K;(ei3@ zfvyU4bz*cC1;^w#{y<+|{rc4Cs{i28=}H}#7+oda|8VFk`sf*^t1Tj@v`-3{>XwZCD}ap_^#m-Za0f%Ko-?Z40S z!!+!aNUuP@2GWrlNZujdDRq#QlDDg}v#vIrO*K4MsW&R@x54k)Tc|fY59hxhR5uj9@8`83`2UwT}+E7b88>f?v&<279+CLfos zbpL?pADlE@)oFjkE#uOa9#daBE?w#K5`TE+=qjK0=gYHq3v^YmnVl z8%~X`qSKE~SBXm}MptUunWL+Gyw{gk&ll*bKvyS5SBW(fqpRqyQ=_Z?Jx8Z2_3p&z zDzW>_(N#V!<;$yO1-dHG)rrwn|3u{#*yATzSEY5hX#dgaDxqzEsnwNdVB;T&ljQ4* ze|zTWYNqc$uhaD(Hx%fqKvxr{D<8-G;}euusZ*n?{^dufE46Hb@~ZR9(bX-Z=qh?~ zfvyU4bz*eYf9G-O>Z`i`5WO>a$>&pZQ;E~@s@w4E`s2R9#^C!jhE9+4in;t%)oXUjge^j(xWr~=) zVuOBV%x%f_^kZK{57|5ESC*q+*~|1R+fKi--SjJq8E(b(^eJ0pcxwhObSK?uWF{qz zbSemL1#wzCr@9~3b7CXsh{3*O#4G9H*q#hJ(toGZ$B6}#=y7kj|IUWKL;ZKkLM0Ay zVQi>;-=Am*EM?s%$ZhUnJ=O-m2oHJ<;91j0$D^N)+sOA}dXChCPff2mX#9figuFvS zuBGpeVIJx^lmnwW2}X4cOlu=BUeBTNdjAlUwuwpGV8q(ybi?+h=PXm!FW(c$q~Dpw zt4;NRSG$h*GT2ZJA)eL6vqJ2xF4KMNDdqOk^XJJImHW&u=*=^a@y(3SV|=seKF;_W z#-C>V*_sp#C>Pebx z_a|~@TNkD`)TqebO-lOUeQzv+bU+4P9) z9L0~|HP0YV8s;*-iSfDgx!N>}A2I$cJW2DTOHPg-l@(W?Yx3nS&PAgr)@1%qR8*d)qe^yGP>$y_9j??K5pPRee#YcD^E(EoliVS>n4gG zD0%&83=bNdKC*{CC?51x(S`c&J(+brDP2hK`}QrTZQt)YNgh;j?(v|b$}zo%`ae6e zht6d_yC zNDnY$R1Ywl9$*KL+5@b^)_uRcOzOhn-d|py88Fve6)>NCA>cjXq3;KEpD**$frDPS z<6vCv3}ipHQ{vdfy2KZg81dWDhxx+n59kA*xytk&H%+s7&X9L$a47Qk-6~x%NyURr zM)s3UhWYFZrkC+duX$j|oZc~%{qL6>>4!?`v3->h`P;aWE-O>70dqeVvcvkvP&+H zWuLEN%u$iQc-6?3elZq#`#+4xL-)tBUObll`xn5uo}|*Hl`8&?QhryWB>n$fqT-3t zl60x1BI~y*r_AErcdE!I_)Hq&x))**^XIYb(yCbYugOg>x;dKd>WW3|ozxJlp_X84 z6n_`KNc?EcIr=!`KO6BqF2Wymr}RoQ$KZM^olpAT!9fm07B?H&9p6;h9gB^~VtOF$ z=uZ$BM^Qlq$ub~*9*VO@U+KT~m+OmLG7d+@S&N*n(Cl3E7`)^wy z^0944+kaO@eo&*l`m0T^sn|59v;UfdL)lNZ8P0E0We}4PRM)nHNNUxwK<2!c^@4t^n{{GPSZ*<-@l>J-A9xl5w+cl59_ev}h zYKuia7BbS$Pf?NgDva!sFUKNx$njU~k(*F}+yi z_wG{hr4=eYN%r3)*?(80KP&rh(iQaoV*gPKGD-H|HkJK7J`cXl-n%QBec(sjyNKuR zGqN3_SfqR(`;WfkdjHk1|B~YOWIy2hq^CC@{G&a>D>&lEZNU%Tx|aVJu~!zsXI?hk z`j@TIdosO3scyY5qmOzGIfMS_&5^~QHX=K(G$OZkvN!MHvu4!Z6rA|}=E#n}q{q0y z9_}-+b2$#;^G|Z_pwfG}%4#$llFFG?Q^|c*n%@}N!ydP-Fz+4gu5-mdyO-YcEAfvv)=AZ8XvgQ#_x!xVOPbukKWS51OsIXPUDurSv)5^5^XJ&q=RJ@gDU5 z;$7VOwe-E~5o~{a&_*@2Ny>j_^c`pG3KhABYqqZ7eb=k(o)&{^m9u(6#GaR!i z=6Fp>C;hojmHkz{;oQ(^WMBWXirm#`IF6^BTIT$=+f?MXg)05CrT#fTU+SOpPLn<- z{SE&A_$e(kUe~xp(QX_K59V&7M=lrZIf1j@WeRvU`mG0*Mw{BP2 zw{GG-`Ezc_pL3Ugjxz<`cl+%say#ezEdS0w&%g6K{yVciMt0|ID!WtOIhB7FYazeu zod*9|dTkc7HVb%G{+t`~=iKF=G@ESTG-Z3Y^yZ& z6n!S>*AUb_CDOw^C8!JQ-W3))_yWBD0>;@_)Ul0xuRf3b9qIqjHkW(ZoliyX8H9&K zYuon7GpsE-wpVJkq=Q^v9MpAk66Z{liI$k38RKov5PVufGdCu5#67#gIOqJ;0!d|e_)?>Q=V0@>nLCTi>A#>+gTHc#_ zoW2>Y!>W3YD=dq=T% z6njTvmI2u(@^S0oIpMAFU`uUm_zb^iu-vU%ugB!K`253&5pFyPMSn7-d)HvBi&hB8DCvwn@vS3ee(tI)BJ}Hm@yW4U62ym+_$|L#(6BIdSqHy4fV(#Ff#gR1l%I|KNiU7BRWyB9uH*n(J)<=r+3~=(7U#YiwUOM4bZ6>u$By#b ziE#%*(7&zPLhy)CXjkOE9ddjveIL04v!tKEp$ z3(++uw9a9dMW4YI!dEW$E2P(`CObyEW*+qcY2G40@QZ?(%92JDVvZ7b`PcXA$3poge;XW`B^yqD!d0<`8eQ=$XdGJlkeQ1l7d1%0L z6TP8KVr9rpc7!s?yF>1hTSJ*8ciXOatDW&~wB3&CP^Kdoa#Qcxnbey$?=8G6lv-ws(=sj($4gs#scS(sQ=kcB5J3lkkj$ik@ZJGiJI3r~|Q+@)!- z@$8d@YA?1aw#oY1f{l2#*oe_dZA2{>`=8KqQCYK(&~eW-8?j$( z#Kaxxd+-TjBRXOub`Cb;v%wEMQ02_pG(Ek(7JqXeW7u}zu)=9;?v}`gK^5uTgk2>0 z@_z2Hw&h+q%$D1jx8;^k+?I>1AGYPzL``hDY)Wi7{~6feCvMBVCbnGSf}_Z`YDe>r_0`V!!gr)`X~Io;(ha(YkuQ>x9m6OcYpF5@0k_9Nhf|h(mD_tBp!^P>+cZ^mZ~ zudagl=1&bX{2;j>b|wD*CUPgt>}~I;$Xl-y_rH(0zHLZMA^t79FW$8FJxh#?x}8zr^R-kfF-59L|JF5OY}o!*QX@5?+E zl@mkjFKgp>5KrTGQ1_{Shn#=tcj$Ag%1a_U4;YcRUL!}Mi=2(sd^Srwu_)eIQ4)W& zm{{Z=GEP3t?cI{s!DqAb!pT6q+O{K|Ti7R7wVsQ%)x`OBMI$>mGbcNv@%J{_#FQMT zi@3eSOo%5r%kZgFbDCaOK`n2Q>i+6v*~=eyiim?hNF0Y)wqtXy#MA9cOUE^N|BSa4 z|Gq6cp`J6@=Z;mxwKlOOa^ZrzhO((G#9f&;=9D=ynIm$Fh}B9=yM70;+dZu1Dq_9s zxh5KNx>8P>ck|aSL`+xKj$>0!$F_8?5jhj-;3VR~yUCfDJp8^hy}BfOknixiq@8y3G6elSkly@~N=##VHl?tEwDzZ;3W6NgF`kHp<8?3)kssTBVf$KCbZjE=iU{%DZ-Ocv|7yRV-< zihf#5p6RDpvl6etV2*QsY?WLI@&#?TK4-giFH5YEHSU4tSnK*8<(922CJtWgmOoOQ zDNh!=6?Ya>>s{Arh4`lQaUSjHT zGoz0&(+%ozGoz32W2>h`a;q}dWu<9;i;lTJr~N56jEOUpZM*!;#N5@4k(m3Vp_UVl zxfc_24~d`VQey6x=40;j{Fr+PeqBt=JurJ(cJ^!|{wQ*F)(&F&vttr-k61e-?hY*m zS*v{9y`Ef&u;fY1A@<%u?0taPJ9=9qc@#~IHIqltBo2t4FaRI!fEUa$7$?t-@jAv^xql1SUwv!s;qiT^ z1RR8y#4n`wkuz4OWBky!#~vhhEqjYSYm~UX>-a8KLd`uj@B@6GEODQf?{dNeN{R9F zU98l7cAat`llL@i_wioh{xN=U(&l=;<9Dp-^>YIr4^k_?&d&?b`2n$fe!vwY`2m@Z zUdv6bv@$v;;BImPZnfO58!f$;yLyA%+i;i4k-e;s?B!+hzd=5L9uK(7^>`qokL>09 z^*H$edfb$J0IoMP`bZ9gj-#`u$qRt)RE8t(Ebq_ynrFE^(f<;3~Ri1U{rTg#BG zWysc2Wa}i6tztKWcQPF3-#FqMdQJ4~=pCF_ki8$e?2X>YzB@VD8?bLI$lj57#<6AZ zt|53}|3&bEV)9e*5uNL@H`+bMFO(Q;J!&lDQSy&ZG?pPUvTNcpGO~VHMy`oQQfIM@ zoIj3?EFPAT{T*kIj121>y7Ny)&N)&>zI3$s|0U06H~2CVxs8k*j-Q+^8TqBZ8!IE# z-hzx=FZON0K0QD3!Y3dj6HjUxd9K^1kBNP%8VdI5KovgYv)exH*Y;`o*&}=BoTsvP z9Q#zu-o&$Km3{h>wom{3T#~)!Tr2MvuF3m_8}fePS$V&3yTXryKX^gjFT6PK7rrO& z7f$8Q3r{mkF*{`fu5x*wO_YJ?M?bDfg z`}AWIvQPb*EbSvcmTx#SDW?6yzF#<&_X{WUe&L+q`-P3XUpSWc3n%k_;atG?3mbXA za4hc^PHMj}d&A7&A5IVZg|*yGd~b|xx@55VkZsx-7?WqW(rQXuod?Ftvm5P$jjV4l zd>^dXmkqJA)(6{uYpsi~{%}8Rx0Z4J-}!K4T<)+ME%Ct~+rG?n&Cz~X-~Y;<$@^h_ z|0{bY?}zpMuk4w;AJ+H3vS;#sSl|E3o*CnRW$*a@SM!7Pzd|$0UD8{0gb%h~+n3QJ zW!xoyo!!u2h!6I(+LzQ>Nxjvd?D|q}#JuGVc71e-?bOA5ebYvF%GO;}SnQ zFMP1Rob$%Wxq=UNVsXl&`Cy;Z`Rgqoj*Lv^Wh630*D)VoMiRH9Zn^gyj8l%|gVi!p z{d61|`QiCswT$fl%X3La7VJQc&7tMMNRCjzF4%#@;`7)XV`StJcHm252a3(D8?7)8UbtXQFjN9WjPDXzs z@2dV0^17yiFLhZld9cOg!4{JTTTC8oG2_LI7rS*m#pJ<;bRKMbdoA@7;P?y(4%L-{ zLnZh%!+mNrX4Kq026@d_nsay1^F@wZ4RDk`M&79rzd(-bWt?N5jB{KiLqP+GRa*Edmuon%leGh(4{=QbQq_*P21XJgl z^3!R)A9jo{={lpO)Z>>Q;o)EZ3;0|36uF>@&!88KfjlMjOfO&*pOk)}0O^tM$pGJ%9(;`}c^FfF;cRqN~1<-GUuQkA}+JiEq6OxE5u$*=ZW404!zcy0%|h;zuz3r-9N z=rQ3-{ddO$hv5JzjiY!y&$hgVoJB4m_luD)N1op(93b}@@)e)u^VmwueY}JGNW*YD zwgfZa0J*6-L3&7j-Wi+_pVjQ;E{z0vZ(Ez2z3VwtVX=duCIbD7U& zcT*3LRPOS3gPG-b3+_+Qy+3GqO-3+tf3@Y+=g9B7G01xvnHB4TrkljCbSrs%N$`FK z!299(VE(ud@%)E)e&SZ}e%`d*WN#>wBzJGgjo|%k3Ax@tDC6A?-VZoG9e0P^R4|lD zRfpWp8=1!>ct7L-cHL@c!2FpY-cO~E_j8>Z$ph59M_q6P?@p5pkN#`ERq z=Q`Ap7Y08d_pgN9zY=o)ip}O^F}Z)mHFK<(&L;%#=lu~Ml;%DCZxwhC{N_}6Po40d=pD@Y`Nw-Iwajebx1DC*qh^fH zdlJMh*vkdpbBeqt`qJ6Qd(>m_o?UJ$^*=4t|1?wo(=?U3uFEF5;n*a%{`yI7-6HCN z?xY?lNj=ab)C2WU545&?MDHoH=4ib~jz`mbs_Z$Y=sg$PpVE5IMRFW8sKMfh-cu#V zJ{gZ{z2_o1revHWdQX)c7t8o3wcc})9NT65le|mNn~&bp-e91g1id-nWVT!2c=Go( zQo}{KS{3 zExF!wgV%#+nnY*FSyJP{yrTC!A~hqH#PZy_M@-j#q%>nEOSzwg?t=_U1~Vb_QfeOE zBA(F_3!?uB2CCr}uPrrOj9{iXS&9q-({U}hsf&zE$s({*?=t)#JKl-=v8-iN@(L5;ezc>fIsFGSqWLk5~^e#;b zt~xm5F$^(3l#H zdd9=#&ot(whJ$gbedst;qfy@jR_xj`x0UN#UOuu$e`OYX~ybQmkoExHM0USno&sa$G zH10($Ly-Q3>-a7g;(BU2ssE(@LuxdJbvMrEyLCaHq1?yihz{Jb4jry{M2F*90k@Oy zI>Xdz+-haOZRC7#8~JYOO5xMgXz=&44$ED>PR5MPa(yquyQBmCg&>A+jtK7 z?*{ud7jPfgLLD1>fg|sWo;iRXo6|lM4-86kno-2N!3)vFp5>e;-((#9r!h&*2Kvx6 zqnO`BU4|a#yf>-o$OYXc>xc^q_TnvSL??Sp%eFs1LB2T23@0af@F(`(By_S0bg~Ms zIaXm#H!8g8xpEU;1$~s8GmLWRp$r~Z>FZ<$bt9sa#i$`kqU+~Ey3TX7PWGI(2R~Eb ziys7ERR4p$f1dM2wE>zx&-r5X{sLb-(|j>HHvK4UAJ{IvNkDt3-ysx(IGAa zmpuk9J9~WxtOvi@+G6}kweb}e`T)JJsn3i5=>}@@#oq3plD2Na z{*F%Z8Z2t@Q#IZoex)gb-~I}^#=L`GbLgNseKY-cx(<3X=FzhxG~`X+Jmj@>fq#E^ zAM3e_no%&tHs$+O+lJXR7kqbcC+a)F8+Z#0=zjvYp%&bMn=~FY*bNoP1=FDycYNi} zIc{AKGP~XM8V7^%_qU?orh@5J?Zgkz8yolyml9)nLVgSSVPlHlF^C^57I;gAL_a_` z!Ea>6z)_(82zc(@uhoceY_eA$Gutech(Gvv)D!)$HD{XmQat)2Bh!Lrb1vvfpPDbm zEboRz$Y&$qnAF0S6&E>zzfe_P5!vxy!JGIt@4uS<9P}UALI06jaK=0TNNK!;KC33u zwh+vT*P?=_knLO(jla36#ROME{E*r51=QR2V@pOY!BzC?a-}@G6nR>TJS|0@mLN|{ zyyjR5^0WkbT5PhG$kSrvX)*G&h&@my@-$susnS@s?$Ec=BKu^M6#>$~(6nlKfCAb%b;ME>}vO!OvS&JVAJ zp>Z(C|Jfa{C=JHvm$o|Prb@2};KSn{#XMtKNDb?RqT_1)jQl?7k>KA~eVmvi+AysrfXO^FTnQc}KT-5qsfIFgy(QRnCb2@pmtf zy3k1K)94~e>78IWozgo(exItB`HEN{kKund9h>#Pqv66x>f`hg2g9S-&YzdKB%8X_ zaDrE;$h#ffYdP;q51C)~U7YRgiwZ7B{7<)C?9?*HA6cOU13z-xPdM+pD!s5%WfV4% z!X6rVx3%n9kz+Bl`(ceIa<_>O)och>;m53kj`78HR8c!!g)L>H<2x>XPM6wgban?F zyeJ)vs*Jf(^6!f1wNWm;FS@mkmv}ABy#?D`f2V(E!g0%1R>aH7S;ODeYls{*@^jtz z#)D|9#A0?Ou0M;A*6-s-r1w~I6yb|k;3hSTJ4>Fe(Jlm7?D^@0SgKzF1g>J!?hqiM@_e>o_`vP=H zuO#Sodd%dUH}yHv)59OXS=NX(9Cgl@cC^vwf?gZHEB!8<&i0F?$3}NuSo~Da`eW^t z{#fdQwDnqkEb)xlo|JsfqP7Lsa{b`H$T?u0{Ej}iEA)<0E>wIMm|lx@EytvA~Xzdwf;q zq5qoUSYrHJ!tbbS#y2il|L~JZCyYDLHsui3e`w#3^lHdj8|WXgM@cSf{ALS!xKvLA7INhZo#MUrr@y{@YIpsD9m#}^UKwJ zx(7kz_E&iR4sb08qgmavY6n;d^i~4HQus)ujrkp(lY8k`(7luQY|OvsJ~#bJqe^e2 z*Vewb_|2grvu^;Is-p3V^#QMs*i-ESl}$n0j|*QFJCnbA@ms9n^CX|A`8>ntSy|&6 z$+xLC`#L5|Zy9>cOokRz+uobGcJ9`Aa4_iq-MKAZF$n$oza5*k60H1PS>9Fpy=7B- zqQut^%`-fd@wa83{$$rBZ^K)-AF&k8Tl&HKHjtg#7K7H3yhn~b298hu{?OUKpV7WU`x{yD|{`5zP9pQnc35U_3*pXmqQv#8VlT-uhNMWgy4eVRT<*GwVqJB>JS zoAR!mhkx@XWq#&%<$dNpWq!6xd7tf8-kc|tIe#O*&dth;zM{N&Z^6@c2fcaw;Bj&c z;b+|)@a9dCUP&CM8E!MjX*uG9Nz0tqM&HNn^e&8nfwUXnCq9>H27OSr+vc=fkQgF< z(A_rQ*>0nJmlRwm;_17KvTt$k@OE&4k?+Dcl#<>eT%QbOg-3_bX;z2i-g3|Ucj)Zj z4x#JkxM$M#&zq^@4~C-Yd2QGcx6{jwqnWfL<~z!BuTmRtq94(cn-*+ri$u~(+aepM zOq!JL+PAB%$S|Cu3+P8=+NO(6aRWUw<9Bg%^T(_5M=yUg4HbgvhP(HS+wQ!&wgLg2hs0W)D<$*uXGvdu8`l4=;u7+jreJKhV(%4m>1T? zcG^N^ViRQlh`vbwN63hG*fZT`>EAY$^(1Cqx7&2qe= zagaUu)^Dw)KN`=yMeM>x$4a7);$weKaE;_ff*% zPM$!{$mkwQM!ttqEZ;*Z8Sr~3<;XYavE9-(@+a=&jgaZ#-~#xoZZnRbs^wXJD`5d(Vka zUF??Hh?MbXH3qh~ahxrT>$W>3Wy^ zkvWoALXFa!L9Y?|ShgidJOqrWfgtYzM%20>>#A#%-21Pvh(B1=C0UsjD=qhd4q^>= zTjYw+8)|@Dk-LMLhi(nJi5u-qf*g=!FqBEYORmTqaz);xH`Eq<1jH6P){!gHYrCl{ z$Q4;fu1K%s@{lXCGURr3gouj}hdF+4D0j(?8V|$u1UHJlPuMDCC^-mYMEdI8L$l+P^#@M&Rm&cEWY~ABaZz z7+rS_y@q#=>2G*W$l;atwhvbhM>im+h+&`Ga@a%$yLlO$S-M5bU~)ON49<`fATrop z-b*g$9P8xe@SApK$rj}B0CJc(KQcJeF^8PZ4_FQpUqI*ozfOxBF4)}#yZg7^?pCSs z~7&w57X|}{J#JB z^Fa=q=bhc1NSzirY+L{3wD`Z5+qeDJ`@ffj78d;9$MAnIwdZ{3{%a z|NXG`e^cv(|62*Jz&Y&y_U-N$$H?K5ZFYP`P;Hc)zD{e_#uV|`RO++32Adqwjf>@f z>vy$}{6_KtIwdyRq5DKjZk)!i9QK8;3^0a4cK9w&|e^HR96V0bOU2)uT<>_PRgggye zpF1t~>C!@eRy+~a&GX4;tk)%4e}s(xAabS)GWqn`xCNPfY#aA%kjZ|X zck{$#a)0l6A(Ll{jT@a>kjd1D+Y_i``p{)^^!0*F{;=)t!|Ir{Ojb{gCzHWatc@4h z)DnDEW55VDf$0v`I5u^&Uw?t`r6z8Dt$a_-(>}LxG8lZxB5<#%<(vxc^<^Qqg_x9^ z0&75OUhh@rn!rJC&8H5UPb@j;J@KQ1ZXGpd^)FK+x*c4E-O7A6FyuY^sUh?GONPAf z|7gg3;#2#*rvm%EH9y*Ku356*d-78U%qIf}xb}ee_>u#T`EzPd7gsyg+~4z*`P5b5 zE|TBg{4#Z=+oc8>JnZ5k^Vt`a_blVzHx2LmR~csS3x?P08QDL6)rh?PKa9v9Kd7>A ze@8{${wa9b6+y4pR2y9|H9Qk+%R2*U6MTgFI|D9QCr*(3c>GA|_E7en7mUdB_o(zI9hE)EJ1(uzI0;gB2`19z z5%YyuHgylS!+Pp17gxorLo>5G{z*k{`!Sz|D!XHk$}R@`;u}_Lr1P7CsZdQFE*L?KDqHnOQ%M!J}|nq^o{C-t@0)r(&JE2($MV={nYlqBvII%W2j)84#SZ3zM8ft(8Zawo>_i})_0yB|4VZP(9ox|Ft7PB`ju!-8i z>qyBO23W%YYZw5NNHB{G^9gE(pGdK$`aaZyZx6a*YR#V*H1s@fU>@xkRl0Tq^9Z)Z zj;-L?EL3Ux7QWvW05>B5)`yBL-5T(1HS49U^#kT&kouWaRpbX2a}hGwhr#&rohtH! zol;wFq(g!~rHshOz@iFK=L%Mj)GvDA2g&cxn0sm&|D9|bb4H9Y+ez)Ky&;-jwFVrI z+nD!_%6WyOjLA72d!szljudZ*x{W)k^qSSZOdV*7I?#4%l`V9+LF(eyf`Oh3G7mv& z<*CmwcwUUTPg2{?9E7P875q%W3#D$}U#mo@Thnyneur97jZXyT2y15Yz9#Q$dem(b zw}jrPA#EA}+h>c6bN^V7acVPpW((u3jMojYZd(E-Hau&~`x#&(#zI^V4Xg`rJ?kXn zIgL@o`%%|zK!3fw^SU6lzpN28CSc02C&2KC$=pFpjMp*V%JnUBy#bC@jNiPHXJb3n zQL|aUPHL;s}lc&F^SCgGhilXry&*wvbMKAVDf!f%Cl zerK3>4jS=a4F(VK&ghI`-pN{pSgR0g6=JPItd-4L*W$-8nWKc;jM$j z`h~aNQx*SCs6M;nb+FY09}c?SVHw#S@YYAI`fTR_7!y8k&2C(+vY}nk?9Nxf7}^+( z-}Xv9bnj$S@PO1Ru*zirBu$^Ms=tKBpl!jr$wB9aIlMoeRFFLugEkGJP1Br~WDen{ z!Xq2uk>Ty|BA(kRhT9$CWy82>)U|_ikWk%GjbnBPSPj*}t0J?mHnOSDGuM6O zXdgnL83;6xW5`MP@-7_~i3k)Tm`6lm>Wbf|yvy-J8r=(tv-- zycvu$R|9+(W8SvFpWftqnM-(73;d`RepI&wo|A)D8gibD^V{J$VR%mC05rS>zC-=D z<~zjypX|u4o-R-O6>W3G*ZCh|I{CJK#tC#zgoL*T0+wzs(W8gZ$Ne2aGMJ zbC~z^&lDUC!ASEOifaTD4h*G#KE!|EeY?H{{#1f%MIH!NZT}ne?5K?|mHQpi=U8iB zpL>seFhPCJ6n$(bBn-B6n$ET=c2?<45AF>3 zdQ$>?ykUJedhyZry~yYz^s7J-^Tb?@(yvC#Yh>kxXN|6<`9S}>zdgEEbklgcmUmJ* zRP@cUI@BeH=}>m0r_iICw!>p~t8w{NuWx^PedE}lqje}7o}_gs_*E6FdtY3jP#%3yi1u1!h?5P{aHxoaa}K@T<`}RGD3bo!6-K zki|bh4}l--+^g*#?7Z+Xb&>z_N_bpdMDwa>^=a2dzHMJ{_UR(gSK|Tef^$0dFf zE~5IO1D_8=qsP^qPfc&RI2~ohwCzxX5$I+ zhWatQ;b^*y&l~EG!W-(2$s6t%&rUJSZp|AKKRdb}BX&y8M2Er05W`NvHozA&T8A+& z9jx*$O;x39mKn~rW!fi|UcWWuEL^6X*|jQr4|deI#eO~-zAc4qWLYyKsi#zS)+~d2 z2D8==6}AKTf=1rb|lSz=`dU6)%Qkh6;1Q%!UAm{ z!%jJEwB5h*yrJ!x8Uy~z=RR#mC!M{t9c?;s+K&FqG35D4^^6dG&6M7%%9=}kO^rSt zt;blc?e`edy~eiYdyV05)V;>&F{XQs_2qkwt;+WrOUZat_ZZW?#un#$jV;Lc8f%yF zPYNFTaBo%f8v2V}V;SbPd%)1$L4PoC^hIXP$G_IT9(#ko+xxIR#~y{_YN6u=x@YS8@;b5k%(=Is)7?U^3Ve}mk14lo5jd!K=5bIT3Aq(L zp-jbE-Zy5tlX~pTr0eJZ}Zd^KP&_JLvnmlD@CK^nG0imS?Y>N!}Qu7Z?~~_*}g$V2Hg5hSK0tZasa*@ZUboy`J2{H96(# z9%Gd%qmNNF(re7ur+#omJp9=GUr)X_iuSp#tCe-k`~I0@;;mN9(pa{K{J8XT(DqOl zx>12oejt1@0Z&PurF=5+k7qxh?EfY6cbfU6+En0^XCa@QsdKCspOt(vs^eW(z$Z_> zXDx9t^vFBR)6sXK!~XISI27|j=zhEDn=l34Pma^j{dNaDdK0+1f5JTRPxJpx=zem% z9omhE;SZY`S3ou$WOPq2i-KMdnvfVwV_O~Cq$p(P{v}+zB81u7lqu=^`T5CCh|6q znT(z|fj$YQ=$)lK=xi}FqmN1Y63hQNlfJ|pji6gD$5@cQ#QcV&_{CJW3gCN6e95_I z&m_mL!v}ty9k&NZ+a!K(i8`@K`WH&iG3hBWj5T3S^Km4k$ARETMBdxOJ;?p4E&@kF z^1C)i@#m2bA~+J{Qf&156G%Q?JP;DSd{ln|dgV15rRa3|{samfiP=WBvoV(K+z`!L zv&k)4=ie)61)S8c^EeW-jPde%v;Wq|d=KD{?7{vBVjs-0y~Yl5HPCORcR*8)d?ReM zmhIAKfZoz;ONMO`w=P$PPrJ+wZzpeo{sNkh_cwXy(df&k&|e_QZ_JfoPw?A~QT+vC z6V~6x&hpfa7>A()T8$0Ay%fi8dN+HBqq_!s zp?96^Eyi=qZ<6`VmGax@Q;Z$)EayBec0{s_>xs!5W!M>|VtcsHGA=!hN7)&fCDJp1 zd;_o7?;YUJ`R*fSXOw(Pa>)3+@g2M0(Y8Ua^jgGXwDB|vrWm{g46Q0 zU|Zf6oR_x+Z_3+(x94ra`|`G6SKb!v&f9`dB1*0#Fk%Pg(Bl`?i>iE>X4%iKcY{B*~9@Q4C zDzXo^1*P66-MxmM@%vO-YJR$~6+cET(eh9%8`>F-+s#I#t=Y#M+}K9Ekv_^@#mXt6 ze|P6x?8v$PSleE8d^<9V9Z9}l=iIyZ%5iYuUacxPx|A=ep{g<~ReS0#NwPX>k?g-Q_9XkzwRFH763w-w+Lf23-FaF1 zL|&F|%*)cvd0G03?^iwB{i!QLUnt1YW604Z_WaW?NBbYpa#UG!CL~A68GtuYC)lHo zCP#&bxgn8>_`>wj2>7xzmhVNE%=eNZ_( zxaHU5+dWK{?lL5&uSD_|#>msM!OBtj9=>nYm#2oauUc)aQ7YY;dfc(2_-Lcp)yO?+ zDV??&wJ~HM14FyA``(q~YtDPYO6gl44;JZ~CweXqMfTEfmRgrA#eLGlwyhCAncaDL z@3dd+Nk2o_fo&R*Z0|$6p5S*MLvcvSA4j&MYjAcvOC*p$42{d z9b|VJ86KgJ^bzvAR*}m*% zziZjee%D9#yO!DP_c5{?ed3JD?&u@Ol--Zo8_o*ZU9f@Ad~f=K4LmOH(ug1Ublbo) zHGW|gyyx7vfwkODJUB*XAJqo#PZez73B**#lckkn1NYx>W@YJbxee^k`A3c^M+-JE zIYn&+8@Rg-41lB!wt({7tJKDu7A#0FxoN@1wn!wsv@No6%A`ry8@t+y48tk9pfbMN zv`yDk=^MZXiQmQ1%^%OBc2)>E*sX6y;;Mc?kj(%}MHn7t9MU@2`cwKEi zzkQrssI$NZ)-ojePiIzc7i{2eJ@2aLn6mqWvw?pG9#@Ool57EwtHo`aI>T+eY=#?- z%>a*UhFiC2hTD4QbjGJMKAm1n)5)isPTf^)e7Qy475F(E^H>x3vAznfUz8lY31BaM z+YSicLAsNAr_eSPnT`Jm>?JT5d_0%%jw*a(_@38S#oyaR-LA&2(Eci^RVN2*h8a%I z@OW41Z)Z?{+hR5+TfF92i#gqB@uugdo4mKz5}R($Fs6Gma?Rv^wMu<1by~G1xG~-! zKD%zPzQDlqriH)|n|IJ_>N@DvZ$3zlFm+2tv0FE}l({Hje2DQO#)lXmBFDJIC5O>% zV!WC0d7=H}85a?&-Y@yW_}TY!4~}j7$y4SyZ$Ej;9BlywuIIQ>uIIQ}uIKoQT+i_>xt`-bxt?R_0M~Pza)9f}cb;~D>p8X^@bjeS z9q{v{Z#v-TN#A~e>lwfAfS)JbCD-$Rw_H!0;0d{2@}=c^j+^Crj<3k|9N&`bIqs9| zm3isB_nD*jIj6{*w)uU=ICj0yxkcXedA~8IhknENzu{cIw@kC8>o@7nO+!woj`+dW z>iDnRa(8uY!QGCPD96*f4$hgGXWnAI|G9D!Fnqy4j12Qi00U4KAyNp}p zUCX#d&8Cc78GX!I)NRT*wVQg}c2$qmx!D^Zn&qOJzUQou4fO|IUWCKr8~+Gt!-4>;V&_#mpXQ`ni@~moW1o@ zo#<{4o2-?`nmM(7Mta*~71_B-rRldI`!hm}AyT{}nq4*+b=Ul_D$XSzn6=fol7ClA zPIWcwZF_y!+UA;a+gtOG_y&8b-KMqGZey+*T*hkIYwWRdy^pTbICr=6oA?d>T0@8B z{DvmCacvX%+D+tZH}M;by@p&dd$xozxC&pzC>bSm+ z>+86_Zg^i)Yg^o{pV|K<_FaCzCFVQCZ2Y~gO7r9YnR`~d&0+ZZ6{TR{mGF*WZx}V~ z#~R+T#%=8_0jCpwF+k4vmNF+*p1)szgV|SJ>puAaH1Qg^n|}xXT@7`m-xKV)RZc49 z(3`QU`(dd^?r-~0`+<=X0k1RQs=;y?Z95?dw$h)@`iCOqJdv zH67Gu&)*P0AG7t}-x&;=VSoPoxfuW_CTQ|5rk)#c5Yg43$2t{XGRQSERea@OK+DpM zykk4EA_e~#RJ5?uQEcR#Uw`lR&p`eKeJsin zoipUOB&# z2(m}>*MrFrvA~UGOy+&OIp*C0Q*L;V_4jriZ9GqB=(Ur3zM?XzhJ~y zS5#y_DLC_BtqUe_;D)FhUf^Q_mj%n>-?2*sZ#}zXBcB>{>75)01sAv^Yb}$#RBcWZ zeYnAhXnmMmh0dMP_?w%mvWx%Fi0u3{*Q^Fhc(EZ^?dkQ%hz%FA)_dXiDfIHy?590L z`kuSCq6f5tC7xoRZDHTp?6X0~1k*j+v5tMlz4bo3)bO#}MF;8s*Lcy&KqMvl_{!*^ zeb#TM(W~J}hWx%a9<12K9<%axX8>Lp@WQbG{5k-?HlSnd4*2(U`1f>pC34VfiD9=G z!ZS_TU)aR@T_SqVHW;J!>J|TFn9Bqz#9C(OclN*+fV#%F45*@c-@ismSfObDz%qeLC~c+Uq}Sb*GWt zc`tV7ZQLh+&JFo|4adQ}QKyN9(|%zg6b z+>k%#KF;ax!p7tO#pKQ|Ud;O6NUw?@y2+d1u2&C%8GR5eXyj`zzLRwa;k9~S5AT2B zkHft&Jn7>=kAd`t2J)S1eJt*8*@1NDj-l-O4e&l)%KTqM$S-|x>c|V)j&NlWJM`W1W#HX203!hfxQVQK1%;1yZ{hs)!G~b6O zX}+Jh#Jp7aKD4pCfju}MeX|6A(m#Mtzx<%*&L6^<#BcNuLuTu8aOmgnHyca#n;-p$ z{a)*GFzM$XFvBGWypR6Ff%NiiL+RCDP+9vI%6n=q{)6T4{RK7gZxml(KD|kKPj@Qw zyZAc3JJ&Fu!Qb%=>;Ff808Tl)@{g7q*?<2Qf6q7Kl_j-c1S@CxUL$+uKg0VzZ=}EV zL&N#P7gXerzF?$(@p+a0)`fh3rI9Xy?_c=^GjczFUwDzq-hZ``UiNYI|Fif0@ljQ0 z;{Uz5bMH(71jr=;sjDG335b!Ej*xEK?M{FR==uXxkfOD)BWT);%&RP%oW)Gh{73}$` z7SG>D%q==P_)kC8f+P1=$-N_TK6>Qsmksw?;)_q@L)(|+4BK3(t84YJ6EfcX4zTAt z5Lp)p1P>X^k1poN9_Hjip6mx7wTjWMR_9|6l>6(f;U6mZ zeO6wktUq18yAzS;lj<194$i9--HuFHW+@$wENAW_%kSqbC+qO3Og$lbfw@0gbVEuP zDEWV)(-%W7$B@Y)n+KE2j642-#FsVEopO$`ntPdJkfLv}zB7b;M{o2fy&>`C$Y1Rl z7dg~D-YpA{CYI#s5Ov;u&8>s#5YB6IIm=0Oi2buwS|vG|w%>m^cy|}F6S=HpCpnQK zI~!K%@q_nh@q;3#MJEVON+-PL;SA6Tf|Jq-hdi8qIzjXXIBEUk;q=!(BJZV~`eb{0 zymAKU1SuzpbGL^xP$x(^(PTN;0fXuUDaXSJ-qS7mDX9~>GjzhylMZ&kN6`t`3n#yN z_~KVp+`$U}x!5o8&Kz=-@6S0LKe15k4s4k_;Kc>p*@WGq>6rec;(#Wm80yR+mY*IDJO};-1ExuaJ;#9 zJ97`5g{zb0h;4O;7QbtuhApOSHUqy*>4-bV>9I#S7d&9=&XWP%*>r;Q1ur`$5r zi1%znxAwArH;Qw3(63kTv?BFpAZCUQiK9u3sNr&1PYV5|ZOLzJ7foV%8Gdz5{?U{T zpYj*nv-GQNiC;cOj8fJOTcQ^CCSfDA;m<}5d);ylIQR{pl}_Z)VwRfO(J zjA6|C;>uo(gfqXrGP}m@doQIQ2jZO{|1riLKC<3ST#6V%82c|u93erh4?nV`2OZoC z4e`CoP40OL=K#+E&e`g~Cj+kl&V3e{z9l?^9}C?E-Y3L5Kk>#2;*FDuH%=nnSU%M- zh_PheXA|@h>lS;O`*s)`;$C&cQhfN3v#`N;ldn*BGQN!awD7Hz4URq)yF4<^;v{|F z$(Ys49$M^lVmo#NYqa|qqaJL)&iUB0i{*Vzd}mLN>=6pC?#YRnhv<6(o5s8UFTM(& z$~rzg_^IO>`-FxYlV)kGl@OEMtx-4kcg)gV$EO?4Ztn4@(}Vwn|L#8?3i=OL$yrWb zEUCL7l4s?`WX*hhpgg{mxaL6{-|c0I?I|B3^28bL=UDu5vBCWF*2Xt@_WSd)cB#!C z)PC<51FA{Oo!}34XkGb%w^Mu#Z$a}~)|09X;&}$~yd36}PvQcV$DGf`%%y)_*;%dI z=KPAv4x=q*b=+H7fA9aXt@7VguA2CnSYS&B<}y}w*ARir@DU=yI0QGuP5etr}CHY^yDReGHa@Gr)M` z(a9R@|2}XgJHsulX6`e0_Oq@l<+BDPGSVe(6s-R_@!?-$vuo%zl?U+^_mVZpgKwi- zt{4`tzoIHw|7rN79h^L^VU*-V)*N9Cmfs;QQqY=XkeeVe=Exn>awBhXHdg7=@Nr0U zw9T@H#QD}oI0yQG=2q|3nsk}>y6)(^wI=Q73Wxh2WsM_iyn_CzShMFhMQ>966nfV? zC%5e)?|ovf+)Enkdw-dFZ-#I2{4Q;@_dB|9r?=jGbIe?q)38phNy#0M?;*FiAFh`B z?bdT{_5>5T#o23B+($Xjbc&a7UgC1@z^mmRx%Jor&{5(X(DC$G!0B-S+pOh&%36uX z<|OI&D=}vN@{F&`ivB_5g^|F%7{9`Fw_T|jTj9Ir;VO1>um;{~zM8$4*c~lv z)w_n5WbM1=E9f@b8AAV3zIqq>GCX=BQnXYz!t1GL#c^qqTZVop*^CdU#@<9$naC<= zp_|n0W9`A`POkE?_TXdffxIeYSw)q>I9V#T$vDTTL(!y0cv5Q=+TnNq&f|yZe0UnV z%G#S6V;|q1)fkf-fbQC^#+rLDB^QhMR&va_OG@H(w&@Q=mUZXF3K^q))AabXm$b^B zQ>TI}6WY#+8uvo>YQY^_w8+Dj6+f2H(075@uskg`oO2)w{DGi3xhiHJ)+2|SeX$4p z&{9XwdNDCCf2eJr5$2uDHFZXLmCikilVhuhp>3;R9RggG{2Xs10LYs zHB*ziyXwpnf|r7I<@isq9taP?n|Z{jMufE32-bsze{wI!E~w&+iZ(6&Ky!%kz()F} z5qbR24ZCizc82~{+8HTocF6G|ep{!J1AdXTFXs1Q%YM^uM~4x+T5+-c*e6)y59<;m zl(Hgghr#o+hygTWYb=MKM~U2k7PK||-YM=`X05VOXp8gL!spihw?^H!@`#`hT(q`&nU6nOY>S1k5t>;XcCw+vzNxl^sr}(z* zb3y~D)22=tlVrZy)AW;jO`H8{zP$7-wnZ_#QN=uafO)obn83SkEBk|#8@Z@8*9ecM zjZ1Sq9AL}J-Zw6}3i&H{$}-l`Jos1Qi&tu0Yt3Gxe2sdSoIlgav*~3m2s^!9kG$SI zM%IL|`wO6NKxi9ZyA7N45#1iB;$Z*3{q~N8f{PAU>pR zpF zs!=+#&P?9p%6uXZA;}}-nTzC@AP38S%=oOqhQ1OzGne}-p=ZSo_zW9*Qjfsto2(5Z zODE={UxAkbF9BZMqgBo)7r~0&C;p_DDEWye{jKJXa@>f#hMWMSneN=IoR)iAL85Jwz9Kzrzpp z|81@pn8zTcFwVie8b|@!!bTifx2fR4z~SHn~Gta-wcW zK6>>eVzxC`rw=-FHplCOvER0;nQ!f>wme!noiXv(f1CU-k?;8X^}x3?Hq}X-XsyFN zA2G8Q{l_z>Ci%X*v9kIa+F|{XDkD(cq<#miQmNPW*9hO>`zGu2+Ig3fC;sXr-?pJ! zQf(>Q=(VM~LHLvL)xB{I%}@0~=rgc=<`ezfw>a58^M6ZuF{|afUi<1dso#P6M%%iR z_FXRRV;;*G6>g9^Q}rar`zOiqdklU(4d(t!x?kS+kN2<3dP2VO>dK2LdfA_M0o`Mu^pQtefI(~r)~Ps!P`tgkD22RhR8lR1~9tM+2%_kFy* z@1*dyZ9NZPC!jaF9Xr+IZE~F+78tz#Xd(-LN4H3OlDz&*iq|vv`!W27+nkEp+wc!= z!+%(c|FG04ty+rzuoVAcDgHwQcm#L^8zh2l8Bu4_q~cZUE)-eu38UjS;!mSE9~c>e zy&3sw$3?^$rifkCRn+oLcdIX8JTnX16CVP7(cpcz-MzFn$Ed)zuFwtRvMR&aS{HDi z-7R>R^x-W%qEmrH;J;jqH`#&R&^z_R8$706rY}aNxs$4|B?amjW*V zUc9#go9NQM@@mFV{xyBS+eXpv>zvXF*Ey4yT*vt`*EuDP^PJ-K^PDNQ*J0oBUZ0EY zKwbJ=XfO{N&2uUmc~@28mep2Z$5goGI(u{)=Q_pPuczMY$+f;7_+`K^1AduX&fcB! z#_P$&W`70n;=MNlztk<$FEz?*FLBG;FX8*^>6d(eBi{qpC%a`;lYvimtJ^2@{f&Ho zBj4ZX4BvYr{g~0$4=vZ7RXf9mPr4r6Tply^nK9q;t8K~a6q+kPEVNqvHpLf7z0+2q zr*Cvi+i&n>+zNPmb5U1L?jpNxmdI?~&Lw}>=ga8|u&g~4nMw; zJa=;4C$-BM7xdAl?KgbapNA%sM?Gmf_aKp*UAngjcz+%$0bUGz3iVb<-hAyB`^u~N zo%kOyAM)AJOy^{z3PE!02f9vpfJN#dJ3H8JG@VD?k^8;FB^7ntF z_&f60=1BwiyI5jDp+)`pTfNghPdly^JI|PCicfMa?Y%BmzY;$GIXU%J*GbOuSG9Fh z3>iCoEn}OKRlYvDwYii*oCTQdFDY*%uTVGL%c@M;X!PNQo&?Wuu-}Z!+6`l}?sFw3 z0B^d_oG#aD+RlA!Gv%7Lr$4rre8YxpPmKdl4)5+Ck-Bo7z7yTjZV*J~Gn{ADC%W z@14p1q^rr}Q#rQI`0ZC4;YMKVfo-4ZR=3Y2e~&zkR(uTBC|G}&bpqMb2JeBp1l)Px zE(fLWAUYCSt{iQqPZyB^%_;I_}m+TLRN zY3j3VQ@;TF-QVENw-RUgdgj&ovB1zjck15znqu%6AI8e69osPXV(}N}GL~NiZwljM zB)`ANxTI>Tdx<{PEv@<_^XZfBWc`zFS^FoA$?a3&KiRt#M2@f@s48fb*9PJ1BKS85 zFC)v@OIW5~0nhTTiu;vor-_^gcN+5-ncptoPZK>snF7Cp`O3TYX?#D%LC^60blw&4 z{dC~d!7TuHI^)BAz3m0WODf^l0yn(8(x_fi$=)8`&8u{b?d;pCXMf0qN;RGZ@_uxs z@B(90$rx1zyPGxR(%Pv5#=f|*0NPYS4-;DEdb9|Q@bt?kkWX#b!DH9LW7ooC*ABvC zz}5rXel25mZPqdKcnsWm;4TNZHao7zW8jVkcPhA5*>OD{y9OS+1|GWx9?OpF@ff)4 z!QBpS`!!kH>+#ri@Xo?M9&3Bw@vUC~k1goWW1;twJT?O!ThMU$BH^)54dk)5p_plJ_C={T!Ngx(%YXUwp|E67n?=NxwaF`#Tod*qC;n(LuaBpXTq1C{%ox=4EQBu$o#Go=|9Zsdly1gO`@RoZFS5S~InEw)Z2d{R zpZtB+&31EV?9T;07C3v*b@JA+^@}%ihb(vHRP5%iB6XLJ=o!}hb>i5y1$@t4M!-vf zPf>Svq8oJED6g`C+k7A3dwh}I0q$T5uo%wOYh#(KuAhO; zI0c+3f)g{tKahFQaHm?|s-)ZjF>IT-wYxd28Ba%*kE+(o)~Wo0D)Bj`Pqw)`4NLZE z(3o>yp3bzs{SDu;e6jjYwZ9>5l8eN?CCPP3?X`)S&l9hC-i&-1n8}(1d7{LH&B!-* zYO;Rq#lAE%y@x{bZDcP_J$nMmtv8H`)o-{H>)$XYb-Xb!U&Z<@@ZSReE%4u-p0ASH z2l4URJ@;JN-AlWAX;&}p>K&xr$AKRQejNDmp>22ZxwQKO+VuhL`ha$EZU<`<{qlpX zKLGy&@IL_O+zj9u`9Udq8-wr33dBBaPgb5~_2ZA*c3N(KUSQ8j^-1bx|49dXbOyAI z{Gn>{hw8~6>R?aS;BAX#nQCyI!L>Z0Y3)(81Q35+wRc0wEG0@IzhWm&@R@!2k_6kz~2S_ zF7S7Uw%wPXOS|8rU7SHv{~qmnZ;*Ds5Bz=L?*o5-Xxn|~xwQLj+VwW=dYg8=JxIIX z0sao~cYwb$wC&!1F71AucD+u!UZ-8J57O>#;N8Hxfp-sWyKBy+-G^z{VcK<=b{!t1 z-A8~Q0e%Gdk)dt(rgLfco3!gq+Vv*wdUKF={|@-?fd3Bo?}oPB>&~U!Z_%!|XxCe` z>#afB{d?fQ2mX8DzaQFmx1CG757DkewCfP&G4|B6=h+W^-s_>hv9i}O6!T-_uY575$v9S|^2Uo> zleYeyR?61Tw8h9dC(r&SEx78S7VGF`uQ2)C*2|i^1xNL%YR!GBUUQ%9V2wfcj`?+` zbgb@_-z0DyxDH%*TRO9(o8>X^4j8=obn z_Gy#reNudwwlv-PwI5rR^^l^J?;^Ia8=g(hD{Y*8k7mpvyJpT7&7HARGiEku?#xvh zd*#_D&ptET(Ak&B-uei?3v~8EYVq6IPrs3Pw%WhmsrI5eB|GSUk?w{kQf?*Xj-_0` z>~RN9u114jzSZN)PVgICa%@zN5&Oc`{&4aaWxu%1xqwb_w;GR+N)MI0ulB5aKAbv7 z;l7u%(!*dpg>Mu+Eb8MdJhvmN8GANp?w(f7c(GY?U+mW07mjJhu1?L}#hUyX=wXlb ztN6a;`Nw;DletsSL-=t|A>~e^+%n2tO1Ud2cRuBY&%WGpY{SwbcnNw5&C+}8P1bxo zKK{?88#LNOoN!N>ZoF8iyD!ey-4~YX#;&mL?jrB>W77>9?TJFSX6VMayvR7b&<))Z z(5>}j)6MN*9QK4McRuAZE-#vtyOeUv*s~ar_Ugey0bTY~%6SvAmr-~(evrM7vN!VJ zLCwC2`5}8L*#lzVwA%AC#ivX1GC68zJr+YZrAHHgauQtF}o$ysRe3gK&TF-&6jtwop zCg-Euv0`ZXRpn-i{FpZM{5quvxv@{;VQ0;!LnCWD=~Fjz&}3|nF$bqHwqeG$jIk{| zhq0Ycxl1WG%G_Q-xvk9Y1arF?nX%yoc~X-|y+C-`yEEaqfU2^3FSl;0{|CnHM~iql?^A zat?hK@3F{5q(7qLt3}3)Mc#=W;mH^!BSo$#n*dv+Guo%)Pm?RQf9HRZOqq{NS&B@F z!gni>DXs8b0={d8?>3wR-wiQ8r)A0z^K)9Jd<=e`0zWI6(fOaw#~z>Egk5<%e76dI zhKJ|ugrE1o&s*T-<~VYH4{~2@c(F-eD5G5T z%q}ydTzry`T5b#FZkBSVQ7&^wYlx?Z>0@PchJcJ!ESegtL_y@fogX?@MmfH9 z($_U+m+S8A>AEpzf$q-1pPjK$H)bx=-I*)E1q?&Y;g{J65yHDR(;ME}&fe^BEhF70W1hWk$KxAHCevSk1O5w@B%}lno&J>z!>9 zUua=m5@+SRp8fnci^P8w-__ki{NcqSjk_aNd*r;hcsKJPHP=t`tv#RH;!K8e=DN4O z`Jd}6n(#XFk$I0V%$#T5zkr>;Yd&*6oaUo!F^B9vb`<-J`8ZU*ds_dRlv_x-)1WhR z^jv-Sr2g&m*`sHi$LA;Z<45O>g^wpPKPs6YvzZ^*fxK#;{c)sK9XVfXD_it$Yizs}y0X}Pm&zj-0ZusmNeAWq{CC-7*hM0fT zd^W`Vo3`_Yn1842!{#X>x82M+Q>q4@~*8=OeyS&Ulx~T!9BN`~zeg zwEM4!(I%i>C$u{T?Yf~|8S-!%@(^8|VH2Od-VIake9C2Plug`>P27r2%=l#3#2>lb zv^*@M+-a0sNV#S*hRHm~CRS%Lvi=~kSC6*PIceu`PXAf!)1lEf-L&_Zv=@D2qHn^` zcRuu;27SxULEkK;+!d6&0Xo3@FD9UGC-iNFzRhX*boTT$DYuYv%P4mm<%TI2zvT@2 zKhyq-?Xx)d0NPLL&7l9%Gtz(P^#buId=un1e#uJwhkEn^J_^1`+9#Va{bTqg8;4fk zr1ioO>zfR}MCqHfFS7Bh^~})Bg{9bDE3mybFc+fCg#>e@$w%hdw4Cl9 z+Bue%HA{zfjt#KA&T)<@n+sn!+I_~kHPp8BkjGIZUz7N;C)>kGow4EE<0wksO1Wi9 zXL#$m{o^R9^}5);`aZppUOSz3*0eoWzdhx%d%ij{G)r7AMr`eDef6_%+hF!$%14yA zD7K^I2+X(#+xRAI}-+8YMoW`0aU)jzO=4P*@d=$%USn(XykO5`7$3ly#hJC6gl0DoNh%< zZ$M5*&p}Qnkf)u@!(+_v?sK;_({dVlF_gAuT27ZyE;i7aY)xfj?n4eI&RSLs&3G*x zT0NE4t0v_Zp1Uom#tA+j;PZ6D-)HCZoa?;y){F3Ut7kJ0Z$f^JWqva!XWY*Go_NMQ z4{uJt%z0Gxee0PE$n#J%+wmdsu6xcnmru8UJ>EE%HI!z?u9dmQoD<*Ug+k^q^N#h7 zwEfE(_=m}`!PihkmrkSH`IH+)M{mIISW3AoGRh5q^m0@7?;calHOYNT$IrJ~tb<@1 zY~zXj8jF^l^&C4_p6QE+!ZWhIIAc{(*WKRN-x-x3+TU!tK-uLf`9EOYts%`bgYK7D zXN`&__b?5-qooF3WF6=A&V2S)aZZPv#m#xTW~=6wCD`i}JM4!h-1a<>!YY`30tN)p^V(+O@jcdeL5 zfFA))?skHlZQzrER{)B*N)1RCV%?nN6XOpqt>qBWZ_k7ZdbMeBx(1N{H3HDSCpw)5U$APoA zD#4zrGt#OTTJ=J!UTD=j2(5adRWG!nuI}EUr`5XiNvpS@#aqyV9Q6db=>ur>d*HtZ zPL6tl-1IZj>MdyX7PNW`TD>(0t=@uGZ$T^S>V9kJX%#x3v^oJTPCyIx2PN1SG=Ns` z0)H1c`-2kf3pyjMPC%;@(CP%VIxz^XPC%;@(2BacPYgY+IJfis$*cFE#e2|#JxK}n zA`PI``@r7^&Yq+Mdy&patM{PQd(evewY#|kWq`cmzHQ(oz>B-z8+uypKcBRE9a_8& zE!a<#U?0%{T6F{O2F`w>1pA22NUPVO)$7peb!heaAhdcNTD=afsH^++p{Ld1^GU1M zpv7y@f<2K5_CgMzRTuCs;OvP^uov=-w0aF%y#}pbgI2E%LaW!H)oaj-y1M0_-yzn6 z8haDYo6WEvTI`1w>?=v^AB0v1fFA(PzLEs{NzO>C{m^PZwAv4?_76g<{m^PZw4$!= z{XJ4Z`UEOaCJ*_sKPg=bRE#8C{>|IQ-XK?_neh2(_z}dT)V9(+iY4s+wdJ|f`39a57 zgjR1tt2dz)b#=cv^t38IpS0pm$nXcyg0lq@oGCDXR(}Bg2jHA7kl;*#Gt%kU_%fSE0qL(Bf5S@#-M7`Ze%h1OGMfUw;Hzy$Y>f zg;uXZt5*l1)vM6zRcJ+B-LDQktrnk8zB&pmjzSC0BS>%#!2rHG2K*Rs&Lc>04#64u z>L|223aySptD}R^>L|223azNC`{>Zq>dx~?tGA)W+t7kN`3d&o51`dMz~2GRp8N!R z@y|%Bx1rVB(CTey_4XjNdK+534XvoF`|Y8pRonTb)gfqc2wJdDI>G+v0krxJ@ZSJu zpLBx#(PyO9A!v07S{;H`hX$e5A!v07T2WW`p^r{0_RsqtG7;F#mMw2t0*bAD>ZI7?&&ud+_s)!fNOKCZ0k8CyEIZ=Q2rp5nZhr!3-b2Z*~JA?`*DY|>~Q z_(|a0OV4>RPg%s$fR_R<0bUGzBKgG=t2JX%z2;8p(40*@C!HsIPjau;#R{@20wL~~X(dyNzQ_D?H1*PEQ3mAosgm3_>@2eMb2yR;OYSM56$ zpZ+p2U=w=nV?Va+(}u?TW=n3I+PfV)ew;ha_K>G6bT{qDi5^9FH)9_*_rjhOn#cWn zLNXRX>*bK!vIqLEV$bz#_FVhv`(9`deUr2Y&iD}5eTo?GQ+~<@UJ5)(dzTn3``t5W zPma-(2g&`Xtd_CR&Vsg?v6Xae_+suxdx6}4Z=d~FwNS|59!GoQ^;+Cm#=SW+Pr6SVCygz; zPP#2Fd^!_;HsI@Br|gGcI~6P7E-~W<&7CrneebU9;V+CloXYNip+qLar#Ai;C zdlci*ujujUG~Kp%;An1r(!+wg*y<;Dri@wH{3Zv&P1<}J5uESDb9tXEw%7a zJ9DX>JB0S;z+X8=xejk2e~~`;dq>*-xtvMXS|s-naBqNS^G=<^?lVWoT~D!GQ;W29_#!^;CZunXQ7sqB zopDBUT@GdIZu9OOqs3>~(OHI^qZTu3{G8`FE|$Dgo3p=*W5O5KKA$>YcT~$bw>fu& z+aljy$$9K+M%d9GkC1QSm!dP29iTj0a5y7d-KP+FycxQ2HVF5VaApCt4M{oqa;6<; zBeTv{NWY3xWAPI0S`)n*0jcf%JVS1fpn`=pwYd(q9jljqMhIgc9r5w=z1oxkbvVjE{l za<4@V_j;swF!YSG_L7mD1!&6smA2n35MGu0#?<(mawmt}%NF7;2YK(4`D8|NI6s1W zreuC}-QxSHoh$cVa2J`ByH4(B3DqI zpjWxK} zL!0?MrSHoU1+nS%edlRBBKNS@XFr!jvxd_@b$&=p^h=a=)s`^xJ~2k_cQsnVoaJGn zXQG_%kwBLu&^1wY7Qle}Ajeo1<7~)0ja;6>hdN?Az^{DoouQbCBkfC`CArHfZlnxke@UZ~`^+Kq0RN*0yt5<| zyHx$f>b{x+`t=8N9kR6+8M_`?Il+*28q&w%rq3v=!=~F^U{5Efl{<8Uz1%N2#`4)# z>#5+h7Uo^EhHT>8YS|OF8+p9BK%IT-_3wJOtZq2>-TYbP8#|bPHS_^_mF$bH`m$N( zOAh_bag%rF(k68epj(EF6*>A?BETJ@+>aYJ>_StwKX2-hzy5K+XoepOFY(rB3#H9v z&~P{VDVsyF4W=&pYGe$kClp!P%CpVn-ne%uYZP=IjtmL0K8`Ho&M(#8kR$Y$InKGM zG7baUHP#!Chdp{n|Jl2jNz3EBcp1^9r5+p})F^EJgq5k8QJ7Yw+kVYaMC6 z%Ak873*7@Ly3fbwia7~dm)P_nAm)rkz2(*kn;>|J_DQ20L~r1;mEDe_BC*$w0li2Rw@p&QRwa$cn_c9Y6qC^?X0lvU%S9LaIZEbLt5@svjH`0F^u z`RLf#2N>IWbVD`#Y;mtbJ?C7?90o>SL1mabbA*s&GJ=%{+9 zcq5Fw;$3h)b7w`N7NPxoH!5gGHD}Y-B5WRb1bOLhl{xHV4*QtHK6IWBoyR>6wFWxR zK<63gyc~nOg5h^l=&fXEjmf-D`ZqhuGRLytozRR2{!4fI>{+AKO!9pv@}||(-J*lN zIXq0si1}t!(A-S>%4n;SG3m2zX@f3p5ScodKL%guW8XQ&{noqwOttfVGoLX>4vPM( z?$dvdi~j4#uK#kZ;ndYnzS3XsJT1xDQ96-1*kUTZn9_p|cZjLn5%H(Wxl>i_Msy`` z?8gMYFL22{5r2$al%2v4QTPG5E%T(0Cqm^hpO1d~ibTiA-1KOqy_=$u(1&rvuE|D= zzWHLC#mJ1!DSD=5BYpJbwdjlo%u$2V>Jf5pK8#j*R(^^$Vk-n!VJnp3dzSn0zwt9C z?NN4vQND+BcV5PS`2p`%asCc-u*}aqo1MJdjJpuocgcO#d2%*SWV}BwQily-TB5@T zoSQ7XWK<*b#}sL?x+^r!FU}DgIc|O*nii_NndCk-k8U;H>3e!T{ZbXL`@R-=P#u0+4I`k77!X!hMK=Z6Qjiszi&Jx_sL0lk=wBI#TrRzTBl3(#JNb_P?K^YYd)_T(rZAMQ1aoxF2rSo>Y6dlZD^-rrdAAy>W|^ z@1wJm_r?W<#&)2iM$tOZQOlia&^DAo+t7$i+IsCss5|_;b{Ox-czR=2cE2jmU++pg z)%|g5d_v1J%TRspkUsaE@_gB3zm+dLDs896R`iaHJZyUR`8}54Om^xS;E|zZIPIX;=LIDW0Jo*)i^aXP74aPo%I1NSiMgR zPH)q8TE9OfvACewNtyU&D_cCi#V=7jJ8DOgUpKri{FE&3r8K_^pF&rUm(0`V|J>C3 z*SztX-sRD>T0LWdYRbHvd-(7V`sROECQZF^%en>6t9#drsk+7YaVD?F-WNTC4eRmE z|8gd+$0mVBzQjm*A2W4b#d{8`J4=h~=on=K4}`Uiv7@C~V45xRSjrywU1+qb-z)zz zX+O4y?v_@i<(QpuSE&(3{#%Jtv0malJEl_}=h#~>g@VUgkaNd~2QhC%c3k~(PUKOG zcwb5;G1t}olGSr$EVz?6B{M%oooP9wWXNMXd=hhYN>bl0y(;!|&ywGUuE_k> zqj&g9{2V>?-lO}>?dp!kKKXccvOMkqlJZjY5B+iKJ0-v2*|CoJ?7Q+moZsDFBHAr$!(27Cw5$V?qs)Ci#75>4 z(=fB+?)tum<4#E8UYZ@(_?3sV>yycE{xm!8uC2-PE==N7CQ^^hvSBHHXft-~e4oNE_l;4p3Df#O_&A9l;f@!>YjfLgDbtDs zOmt|-h?}iBc750oA2w#r_hR2=K8xR>jQYOF_W|$wn(y)d$OcW9818Xsk^H}=m-oYy zG^&Cw#Pp#H;~HCYC4LjJEb0H6HTcH4ImXsp?qK=xDYq;yW4y1@x*momzNR>xSHc!P1?@#z_Ypxb~JTXeyK0P%1W2BqyOa0@@#A0NsnI8D#Z(9_Awqk&@h8uxmPoF*Yvvd zUDJzG_@2)fjjFmb+A6U_)vg`P(dr_~Ja#J9N<3oe4q_6|W3x7={LnS>t*W=RtPiGa zmBhLTjocXBBk*60tdLXJX;=#8J4Pl>eLm-yie-6HW>LN5}jhlQ z81>!Gr4Qf9SBmjjRPcroLJFz0bs=twrf? z%zx>j51&%s6u$CAEV?vTeKYO&<@~?d>(7E;QcrREn`5(n1?*qdH`5-u4A{SW-vlXp z!@cU8?guUcr!Do3iJA!1sTmzL~agV=QX^ZTg$CIo#>m z&7En`XG7();N7dfIaYKvefvlC&9Qe{!I7LyMQgDOn439~w>oo(VTa<;&QN53w=a&q z44U1_=2tpE#e8P|wT!R$w%C`f;VYkRqgpFX{|-G=>CMYueAxPjExuutGBjCx(!L`6 z;*=z?DLaXCnyI<=!*n}Sb2;hD$y%)VVsd7oueVAGQXey|N7v?0>@rS!skoOHSu~MT<(s*R#)r5 z+5+@u+CTK>O7uT$9lsnTR`PEHVkPRkT`x#X)hG`$wxVZ|$NAU}x2V!LXcXtD5U=z#iP*>p7K=9*|U$IvI8eh1#dqDFA;NP-Uy$na~M_}AF0lIpLC2^ zNP0fivUYTzQ(Ai;YZdol|Nkv(NB24vRrj)XbT4a1_p)}xysTy3ufLb|u6v2w|IJQ+ z4)HPn>Y#okBspA>I{$DxK>r`{kFe`3_FUI%k?L1Qu~vSe#LgVn6zP*5^I6z5d<$)2 zdCaHhl@IZ-u@&E8E4Js&SEWs&BL|eLo4+7h^Q{@kng;@LmQn< z+c-1!?{)0__tDMFwHn%Yr=ne@N%^KpKUw1{Zodzk^FFt<>OO4F`>;9h#pb-1b)tJ& zC%Tt)qHnTJ^i8*->YK)8`ZwLn+W&^J{aZC|$~Nr%3**vi{HnTfcJ44O^7d_hque(x znERbj(ApS^EH1wZ`+QuCb>m?Dx3$P${US$fbepv+CCBi+6i>0{8yg1gHmQ82Z`iAb zF=wD1xkvH3QeD1vG~~&eG4Q4zJ}AAwEoDqvW@%D><-Gg>gOT*dO@50+O+TOtL&DUw*1Q}eXo zjNOS3Z?ssQ_C3VC{IqTS@e(Op+7|oTyB9n7qqaGkSl!`^?YzSmi;Pdw<4cjRO*ZUB z-^RbI%NHKOW+;|imj=Znp^NOi_fB<<$vcUEOenO8AZv;M^{KnxYo%?yZ!=a6??__SsS!;1~JNlKfB^TlOKSF-B zEp%t;I`?4H@45Ig-`65{Jbi`Ry!I46a=_jEugu@jF!$0b-MDFjPVNZ#4iEDEEB-gt&?u^As{)0b)AH=wUKX36nly{8sl7oKZZde|uqQ|Bh=@x|S4b2Ypyu_1J{ z($(;?jIGrw^m@VF{g=osA94h_b^rGj&22OBmgon&-aL#Qtb6*t?f35H;aYsy)1k-* z-%)eJei>g>wRx1#c0}-jr&;T%NAnzy=9CNF8(xw!Lk}2XU1zN{ zfP8`m*w=qvtIIrAZDoF|SO~N>Ch0luMD$_j{lIeQ$7vAvH0)P&dD|!x+Trs?nOkF8CEtj?KsVLL zw$}w7BQGVA*BTK1af#{K$f+3plw1KdCL4z-o|1kCZ|D3DYq8AXw~6bI6B#11RONz3 zeQF-We8|$n8Z^{a$rwovr_2?R)0y(P>l?plfp4~wQ^eiEKKf9X@A0Ab3ulV2$k7<5 zmOSY4W%yKN$5!gS`0+EfGd&*Z_Rf{|9uye>KjwP;7#$fS|0Btd9p1ad?Zrw!GouVIoaCu_p2w=0^3M`xA|J(BC~mM#4g zx~TOwk1iFNb;wvLJ&$dp)}S8mNtW4t0XCbSq`&0sCvz9@Z3d@dDhKsp%1`?q5+9H_ zi*1!_@kBz4PkSCd4KvQiPMsc0pbq6bq}voV8P95DkL6>{fOW^TUv=8L&)Vx5dNiT>-tRmpYX)EZ{lC%m%usV8gB$+GsnYFqTd zUyM&r4uhg;TM>Ou`z8|e!QWMJlPvvIw2ZArua~CgCHV)EM`MNmtWxH5Alfhgz>Wrz zb=An+NYghpF8#}5JxBP$>b|0qv7#*2%ccKnelX6dvfAE1t*k!!iBx{M>dD?F`ucaSwR^?pUjqkn3Sr`F75UEb>p zcE*H$<#~0Uw$8sl#n02c@|IP~vu`|mD~ahRc_VaTy8WsRomJ^Jr1K6o$$G>e^{e+o z`*G|uUcSa)`30kL;KwnFuT|T_E0c2R9`V(w$Mk4aI4$YBD<1Ra`U=q za=vz^`{9-QwPd*~u(jcfTHWK@nj2EzrDbG#?81L7-^48I>+0J;$Jaes(k63=9QW#s z`M6@{>2zXjyjVqg&USt(jguj>DGMEv!4rdy;o%goe9og~wHlYcF|7YHZwx~ja<1lA zgZ530)rL>^Z%aLMEj>Syw9)>#-}kAwhQv#l8!{JU%~SGAB9`ULo)d9rN;ZYPI(Jmd zv#;$%vpu?E-)J>H(JTGuMM^G(lJDowI<4&)`6`<{eUg?-p`V=A2T$&-O3EFfwHduj z$q0Wqr3>jBwv>`^(QgSG3Rvrp{3D(cdFG4MQ}qGpxNP&oMXHv3x~nCGkX zVnAJP2e#qyUe122*5cMa?i01Npua~mX8X0Kk)0A#P70c(*}vS&i&j(X!0Rq^jkopoAl@T-Hy2GjE)e68XGfAt)E4{V;y`D8Bi zU>%>A`~c=set&rL^~rBY@PL6x#_u=^-+`1|GeO|vgHmJNx&9M#F$+t19cdjZU zt@n1!^X7=yG%39o+R~4|`n4gkDA|TvSd-|BU8ehQe!+v+-^yB<#4eNbE|iy9rtqAs z-zgbnb=-Nr*AP;+N36c*6ud*+g1iIKd$%2jCZl97c=63+UVfXri#*mze%s(WPvvQN zHo^y){Zcjv`4HYZ%o+0A)c0C#=J)-^b5NOyya+RnDi`x3DY~<3 zZSyFD+!XO+jWX&W*6h_CepKpC)tkM}wtNpi`kjx6Kg`&i%enVcb$9cXdb0nyar$gq zqkJmPCc0*wiq95TcISTCHdicjwmq9u*?RkrY;*o0=Q;jA_E(=phg3S7p7m88yRO+b zn{Oai=&PKcKabq8iOy#JUtxX+8m@L)_`ln|*fv`qbDrY=&iyyr=7zn_)@Oarb0d8A zzT1e;jbIN5`#nnVF^kvdMDnd1`wzYkVn>e}!4aF;n+$y0Pkdf`O~1qlRBWYK=pMS( zYxfAT(U>oclZK%i?Ie~QTOBwYTv4dUUM4sGwqsgw z#W-M5aKEp|-;nrIp%y#_d|$mD{7NVAu?lW;H(LBFEm|*FFg8u)}vcEU+9L- zm|0#9aW=gv`fR@4>C+wctkat6p3QgazMF5)2j&8s4@^CQ-4E>khw?M)^XM7Q_voqO zij3nL_HlpP%Eas6uC`Aa6~wA8y^_71YczNAkIBEvB`$WQZd|rTcPoCZr}jEy^Qc&- zoi|ErxLkNsyC9;Oi&ac){#xSM!*zS#T0OSlA>DqtPLJJGr`xYQpvM*xU;Fn5b*JV^ zy{UGM?$kc5HP!r3YjVF%4DmtY!OZW@VS3a3%(eSJuQf%#q}%g(ALadg-q-QI?gG7O z)#t%~Kyy|JexBY`&-?mZy@?zoXrwu7cz>f$Z(6-Zb5_5rH9bfSpSYg$AhFe-^Zo&3 z#sk06njU(Z@*mQihot-wded6US^EpE>F>Tx`D-=j@1*?Udeg(afB47!Gd zHiyTEta;A}=aTA>9UPr#yQ{TU#z8};7`~G~Q8Oizc zd!vkaWm$sQq?wahrq`BG_h4=D%JSwaHf*vi?YG|hs84v&`@W_k`A)_DVyX`!tE=;a z7PbO%n>A;D+}f*E`g!kPH?QzyqWPrAMBy2y zzxzI=CH?%!Xe(yx~BM*#t-u9#{5B<?&rb165KC=`}OR&lLhwzaC5=E1l&K#jyp+k zf1%M{&i?ofHvhY<*GFmJAnh#|+;4-s2HdB?{b6=oXhnO$y%O9nf&2CBxFv#n0l2x~ zUIOl)WXEM(oXuY_Dvw>ln1m;zBXW{s)`E`UT`@8FXEkTj2>6XLH%&|U1wF+1%Gady zmd8U%_lAgtYV3_79;IYEvQNzcZMRW|y;i)L96TMnO`h%Wz-Hu$3^$$5t%TIEg&A&RmPx+PILWk%(=+>k@H{*(T zGi;A!+iXP##lvD}2yMaz@-EH8tZ6lbR9yW~CcI(4*dL+CX;)6<{wQlUKgl7_(?|Q* z?+YEo-;A<$rD)N%Tj+>BHN0_2JfYenYfy~yhs~vi{ih_iRn8mLWvx%yI-8nh-RpfaZ_c`c=;+W|qj1SmcYf7UW5I-_&bY=4;en;HM?Bu0Kn8EW z(3w(O;PTSAK~3pK{O?0Iw?aRF>p?~IIF$yvxJXCa^UM{J4qeDWCb z#dc!OvuB?5aEkRCof7^^r_OiEc^20$h&%!h zj#`&z=jjX7+WV*rWlTq_HGJ|I(llXR)T2qwjYfFh9TE$2rYso|8P7i7QvJq=&o|1r zr2PgvH<`2SJ9^5_C1*L{%XcryWsQ!Uh82-ZFxI z-yLH-u;20ljf>FZ zH&WIjx2*O?_p;g>SU2Nc`;GV_ix`{vth?NdU&Q#f%lLkl7+sN9SIt)?N2B2-<-=Sk zb2{?yvw4yG9~%*DeN2yh>l-8Dt!r3=uNvV_t{nky$$IW^iP2Ek4eAUN+Lg+IZYY-a z*N~Iaeq+S)v3I%l#sPH7^W}UbI;pbSzAkja#<|g}tM1&`M`3u?NV-}?%Tk%Kem0ogHm4CDBlM%Ztw(cXm=W3Qs>CLYJ_VY zH@w_2s@FSib)%EjHYjPl#Ryk{I~Ck{;4aCITP(P^1>qwlM)hcLCuGNkr;KoWi5uPy z?%oo&`ant6HdF|1Ex60UT@P+!c3k1#a22>y!JP;0lI*yX1Xl<5$OPI8?u6{PGFQUw z6KF5EdneG|30d2V-12BHa}#}3tnw_YImhEJ+uTkW>py2y*M5$Ee9oA?{d1CwAo5T0 z+T`8}xd$-by#sl*eY_i<2W}O(OTb;89e2w1ac+1txH`BKz@3^Mw?c6D{;5&j{-^Zg zPmS3}{xoYFCJXL*aBIPB1b2IO+)08v58Ntnmw>xGJ8rpZFSt6m6TqFC9k*1q_p`M3 zv$XfKwD+@F+gl>Ig`77d>$zpbxTmRHk3s2MBJ`aPZW!F9;I7DyTPnER7g8Msw;5dW zZ?cVBx!`t!n*g^P++*2sCkbw$PJ4CQtJ7Zgg=FD}$*R5JhQVD5E-{E~xD~3s;6}l1 z2Dddk?iAHta1-Emlk0S>KW<@^oEc&i_zq5SgiaVH7x1aL=#I~Clj?6~Esy^Cn?BHFu%_GZT|RqX|LJ-F!HYIJI07N4v{ z;X|braF>Hy zn;mzO;5LH09^CEVwr9tktlA6iUT}|qtKXWny%nmxx67ZH2o9KL;;Gpe2Z%|^;u56*UQ+Ow8}ZNxc!?P80SHoT<# zoLXc*dRFWr?Lq9T@z^`#vAM>BTYyX-yE+x9pg-D zAH$g<0>98L)8)Gh-16EBoC@F-+Y5-p7dVsl7Eta5z%Kwk4){21xdLpp0?MWi1s~^@ zwHF#idJ*!qh`L8%|K&Ruw&yz|_F@lz0^7NrycqP8vK?#wop<=a?W6nNh4vcZs*%uh zq*1+OWRv!c&(VM6YtsM4XM~sYzLxjvN1_)-IyukynsR>RbBurSH5vcmbF|N3ClzZ= zzGniqu3M}PeC&K<&mRc?L(JTSe_p#NMm|o1RxCF7^E-W`S+^|Jx(YU2&zL3WR_!7u zxACr&Y;?wLzsm@32iCsGsNTB>9kK`=vdEpS-)zhoeX~2K_GWj+@|%sB>u+{vHr|}N zW9sz#Jlz>p;2;lXB15iSa&zok_iORj{z6mtP+jz}Zp_?%vz!BITsz_B_-i+itGZ+n zF>HL8(KkE8_TJT$*M66ixBadr+UAUCzq@I;ez!CH$X!jt4v1ZlwB^?kZ&J1}=SS+d zIK});(HDtNCcc<6iNA6k`(hMlg^8U}yTG&U@CBevLz}YiKIhS_`=18VtmeC2V>ZnA z{}-*=T0Wdsb2&p)(Q4s9T4@zVxOM@4&u}BWegSwq8y7gm^4z|Fd6#E|+ZQ;K7O~83hy$QI*91=Lsc>?FTMBqG^3!J%BD{!9c1_pHxRKl4DI z6PO3`oVo}&`N36-+^gp;a<5sk$hdO3%nN*0@p)>-CFfI}ylZF^86BEPJr}#-_KS_` z0~fp1M=s8)f0P~`UF?SSVxxLOv0FX0I4iEw@AJT|0(S|x%d_JuyJ0=Jwcs{_yFELu zvPbrU+YaslaF1liRd&v3d<=a8?VUh-v->H^ewqhv6}U^lU7j6R*=6g&tp&Fc-0j(M zmA$tY+;(sefO{l6uCiV5z3{_mFFx4R>^_*XUGVAf?`SW$%d_Ju+hsktwcs{_yFELu zvR(Fq+YaslaF1liRkjPhZCJ-2o`8=#HM@_iY!`fH{Abz=?(*!o%63@~ZY{Wt;BL>3 zi@k!4QAm!D7hAhi>5BzMS^I@jhh>8Q%5aaH%L)>!x6U?QwE#j1l zy-|fdQj0y(jyf3x2xtJRwP&sgB;PC%ZudXswUIZm$noztYA zy5Z!h-$s*q>ON#|GgAEyG^wYa zOFP+jUYm>k#8c06boD#0Nj>#p*iHf;)})^LaK});hc~Hb)d)vyD2cQCp0UK9a?DF} zo6H~OI@Wh`o2@#^z(U0<+!hgy8>fwL;rNr#Mdid{NMAzKn z{*NDu&wAj0{Luf#ekgOILD~IQ`0t4$%UT%md9@a{;qFmdn}ZFEkGZJ-x>xjtood}H zx?9$o#J@`JE#Gkl{9UKv$BpD&6n15~7Td|$YR3<1ocow#`+H6Wr_1^E9jwK12L*X- zj@*yn*FsKtXF=qm9@^Sw4t55pTOKWRo1+)lV>!3FzK1=UW}dqxnrA#^4&#jKVcaFb zx^XXSXqN75E8=XzbXPe>k|ZLyx_hgq`I7Cmtqd zUeDR1`&8~lYyq_B<^8S1(0LcXZ;!%}m^ypsR9xMDd6gEthxe~0-<|Yuprf2;s%RX$ zX|)zV&ih-1?tFLOi(WZ0UU$5r=xe_MJ^z~buO{D}^l;Qz9eRav28c#b5h(-WBMv>*@E~yuXz(k$3kA4Ib8HjDnG$=|WTcXVCC&-oNU-3!dDi z+ZWOIn5(-}qJ=^?p=m5OUyHl?_uhHC3$p z*D}xBS<41C8Jvn&==&k|D=?3z92=7=i#SO}oBIC$Pm*al$g~{jX&}>#L1Y^61n{td zOfx=IrkxKN%(%NPiHjN2Vt0#K%>4kxjA?P~m3nPw4!Mr^=NyioSO}jo7Z2T`1>ad9 z{F|Jc%Q#QBh`hU1%mr|6V4exi-8U&5Z*JbM$-dm!D@mN6C2`*IaJ;#BJ3Iu=!qv%g zn478`%A_tOOYfjuk#VoUZ>l{}g%f{!z9#aDcp%0;^QD`4(p{*>#-US)PC8G*8=C^U z({ch`0{?6cFkj%4=Xh=l^w$~ZgT4cGTmXIuzz@0bL+&8_06YOaoC`nX{+I9rZH6Bl zx7l=JN;jipMb~cH0Szr=4}VYbx0Szb{5?m`Nv7^SA9PfFY7RHHM2EXu!o#882=s>d5ob=XeHavyOD?itu?xJ?$Yjtku9>Mt<9S52H_xt!a{y#sr> zci@0we9yYTZK@8q&shQYd-VZu1Ht-TT0HuXTKpe7b@UUrP-5J{qh~iSEWp#D8IJ78xk=vAurSpA%o^z5(=2D8T z-`DT^dj0;GS2B6-&+~acx94-Aer??NFtOBsqZKZANsk9#(9^;Fdf|foy0N{hmOg69 z38NRjdlbK{$MyKx@F*{mQ>yb_S|M;IzyDH?f9`Q`+2^!$kepNJ^LGn;Ug15Ie@2V{ z^Dp(n3q$Z$pN1Ar(c@EI&|EkE9^D&Lg)pdyECxaX{@B#ZZG?{vun0-Z^vx+UTZdbo&ft7 zaN3`QzCH)NA3UA%(uqd#J`}88Fff>>mUy{zrUn2qlU4Be`7|J8Kj$;*bB)X}bFTu27KijC9Sf z*jM^F=U4Ln&0KWq9n~cFTVcZ!3EBskUm#uc5Wn&JvWL8S*k~8_6#0J-_4XvhwlQyJ zgXzwPKiCq2LFFGZJQO}tlsE;w3hmYUg9l`ee2-$rS2+KC!YSW zX8fpEz3q8C{l_Wm(}d?R_H9L;@p8TyKRN>cK|hM8e?Mizya|3(=A-I({Y1StLM1;) zKg-}#q@U)Be%7geJlRLqxt6!+^)esqr&Ef@k+sRXgpVm4SqBfZR^Ur~H!65n_-Ns! zYv8E^{K+SLweZ%$V>{s^C&+zy!ihBF13P@eX)#Bf)>S8*wm$s%iYG)aMy@aS_kW51 z4MInP&=C_lVopFuC@)f;GNB`;b26De3OuE-YxR6zpPV56*)!wfpRG{w>7SRii#(LK z)?$DBEH;-WvJ!E(z4B+hvQ@vfi4k61X8ZutPGJ{y=qI zVtJ_jA_t-9kZQ=KqH-@B2IjK<{t;s#p={5OxD`IsRsDo=A=N&V6MrZ6tkf3&Yp?Bl zE8F^G;w!vO)~W2#IWz1Q9#j6cUU~0ny#2}lx?dlfv!;A*rT)CLHGU%gwO)LVl212l zw!)M9bj!MPMc!CaUffLee=c18e<~s{Wuu2vpOtYvfD^HqB?kTpFRsJ`YQL&t!+3rE zPi0(*z3Mk}q4)~31}_eR2cLsw-)FDgVn0rLo9A~tCcc2GQ=9=$AT$V?!)GAl`>#fq zdGQ6TxvGzvu5;A?HC9B%wL=+!8}_pU+FSD71#W?DJJjXFZNENRwsw(U)++GH`Rd-e zYHuyALH4K0k5$bNqtmMSttt5lzgharTSu38^CPB&{9iM8Hg81A_n-OIdwaF2MaC?R zss}u>ajYON*g=0L}0J>_2*pL)7)~epL5sAP6}?S_L=*s*51+J^<$OqCwI=@*Z!|pwjYJH2te4=sQilRQR56g8ihOoXJ2B7O;Okm1 z!}sb6-HBZXuPm^)MK>Zv-ZPoQdh-21e>lIn#v*u+=0Dfso1(hWehGX>-3ixugD zI^n+Qk`d!gbt7*3BO`8P6a2^}$BkIsaX0n|Hs70$y9+LP&26cB&1iY#wS3*qjf)ihMm}82X%MxO5JGNkDpeK|lC0@-G-Q@aQ##qd$fp z_y&Jb_#q4a;2^QFO)GDPpg%|1Qw#k$JY6?$d@1ZwHRVPp6y{&|Ng38?9O0ZB6RNVx2u3&_ zd@f9Ly3KkdCr0<}lD{#r3g6Fw_-)}o zF~hyLmfVBG2|I)@1%4{{0X)z9skz;~ZzeI!URFF!RAkL_MstYWWrg$Bp~-WIO|j;c zXgn~BT(X7xIv=>rHB0`mcn~;>t~^0b=y}9cJ7L5+;dg`Nwq6Nr?uS?I91;J(!rHx@ z(J;InXS9}h*LRt-$xU#Ac?Mi^{&H8z`Fp1p50!HM?nw|Mc(!*oeOlbys=4qtVq0un znBzSlr5hKS=<##9*zUS-8`g~#McrL-(C3*~Ywp{6J$_i}ls|^#~L3rF1%lLc`ZJTKeU#)cZYrXda#m7q7I`rXEca^FmHgE2VUXLGE`gC~i z6@BRK-c8-DqObP*If6cpcL=4ImooN4`12J9RUNONXf;2)0-pIQSxa+8KkHOK9zP79 z{I<1`t3jAv_1t7yaOKi z!4u#f@dYgNz=DrP-=-4kJ8+C|GH@SBf=_s#@O9F8VALiqUtVAo-qDB8#rUAY2LPYZ z+GhOOh7>#+0*_z*tvhk?H3_@S)@^H=7Oei^FRs z@{%XfdIB9Cy0~qFlj`V7GPK;g(RnSa%n8W6$lIgv2lAV|=c(M6GOsW)Y2Wnpr{R06 z_H1-7*{7GVhpgca)o_PuxI?wjg%ETh1YHP07edg55al7tLr%DdoZq`m=F%+r=n6M8 z=JvOpaCZgB`%&ccqukM} zk=>D1m0n5uf)xgzi2QxwKh#kxh+%S*E-HlG5ErSLw$7wYs~1oo;+T zr@Pc$U{dw)>WjUOJ=-5(y&jYo%dyQ{7OKdjcP@WbIjVnzt=7W}YEceGx8 zyS7z#^qjt3U#B~PwfgozN_UK9`gS9#JHf5k&Ez!4?9;cK!@6S~(YIR%bthERw};kY zx4Kr_Ub9MbYMb@#wWjXW4Qt!$nt_L;;ner>nKibn&jG_}kpK1IcJ-MII*qD4xLth? z1f40W+}y4{lcqCOm7Cl7l-LYHC**E%pK7>I67REy`&0v+2|;H<(3uc)CIp?apfeV9 z#xl;*E%&Se6IiMhICU00CptIyi39Kz1MnBuaVA%AK9_M;(}*FV8&2f80B{$O`{`gy zIp%&oN6yXwTVn|RWiG@N%_<#}EAd4a4A22I&q>0EK=azU`)|r>?wgWATYi;?wn$sP zzwigTGfKAPPL%1+*!y7YIEDK#&j?O%{q5a?~YX_y+J||4*y&;+J2o#ET_*3oc_m(ECu6CnK$V0y_obA%32CV-e(! zRU(Tue{1<_kv|5%B{C>D9Ns64kKLXiaXaJ=`}I=aQG9c#>;1NpfBS)rQd#kzygoX< zZClq0f3L<-7*)N&GImGIrOc zVzbx(19)fS4;H&i%`I_+xs8k6B|67(d7=s`Cu7|#Tj@jI<9)jCpS0TYjc8jzeL2JszgwySpG>UPg= ztpk1<>_et5_8|75qO_YL?d&^KX zk0bm)+DB!dPH42x?W)g2b)QGK2I5wc^)Z)H{9pXd{aj3Y@H20Uo7~IreNA@Xj3ztP ztYRX9TZy9r{vy8+dl?YCsbJaax;ft^{EEj<`{(#eDKGsAzljdvB>8btrLu&{(h%4ehCj$;XgH}HClQN@vkHy;c7 z;0$;`HSaGKf&bhan4`Am)aK|GCYry@dn^us&nf4zmbePtP0ByJ8z1$#_(jh|c9@II zFjwFi`UH&chJNuKJAZj!v1_sajLb)V=8t&1=?1IL4gxE+i6)_=25$^$@*Eq{ENd1% zQRInRj4^cf@Ce2(yKLwB3-!SosHVO*VYb;<{zj}j|M`F8&! zeFTuN8if8Aa?6Z(T_16;>J0Hy@7B~h@F%Jx{;~Rg9`g6Jp*g;L9`hXG&$IxBXpQa@k?8Qq)9>LA-BGwX|pAg!h{`o4~{L@_oN%PZPPknojx79~QjSzy5Xayqfch>qYNX zTDu!bmgT=$1~^l5`(z%(iAR^+1dmd*;MJ6FdECCtJY=OiO$&YsIPzcx_9) zb66=|^#2sei&_l2sT_O5zTR037!lU~?0-C08e=rS+GE<#2cCG@4u!R$&ZCmASDjVm zd=;KL`C1~CXEPr5o0$jq+uOhQE7%9WfYYFLrQZ`*D7aU@@2~j1|9!x<5A&VCynk0z zU)o;-yFSdX9EEvRmiSA?@ymk1ynk0z8Mz3eo&J5;KYAa$`MrnnOb@O*xewlWrF~Iw z?Va!H%HJyCx^i#R$dR(Qr<^0tgZE2Sf6y*$6ws3cA73njn^P0R$Gk(bKitDy89rvI zevEgN+EmVIXw4JH)p_4~^wrWhf}7IEi;M-lOq$>B6zR9O|0_@Jp6pAO_Kv&o|3*GQ z@BGgx`C>lAqjZ@-qF;(oQ4_G`ks|6)<`W8@98O7k1Kt9YXFewJ|O8^e2vg{L^b zh=<=+43+TwDC|Ap=VN@s_uM%?4MU?)|=!TmdD#*FOzBb-K!%8V$~t zH&kdB@+7>1hmWR$t7d}-gw9glRHiATxX5iBi;H~Tz8Ybr)@yLWJoHkI!8@u>pElV*4cZIOkxd8!?(5B zuGO2nk#pc(7Q@Rv5a=^(?u5(_y%u^jd;r^b^RBOnjn_o#j|rKAC@Pi|w>s#ya?Hxz2W4v)EpE za~GMypZ~MWe~RSbBKPpfP}8ngMDL{TXef7u?4R80e27ovi@XJo93Gf$0B@YnY~+yH z$RVe5cBi|o${#x`fDvti8@_Qo9T9h6~#kPhIQaL0QF0x)8A15BYUD>{1>lGpc zp%Dbv7;%?(bu=_D6h@SnfY{eAA{HqY09o4FLnfK4vAf*KIH5T&dax} zs?IBk-W6IhXPjM?!m}&>Ui3%c@DVTP4exiQoHyQCsr;kB#dsaJ=<+%T*%x$qS9S*q z)zoeS`V(et`oR|j!vt#Iay0?-wfwb*(P`WXdAI>l3WOt zuxhUN$^}-}NO{9}xXgX5`d*amX%61#!NOIaQhn5P+@$`m>G-tB;9~nV3YVF?Dq&*G z96##Kp^F?E0*_j-x_tQKemU#DRBW@r8I@~HeR8z?_R9PAO7)oNU<9VDH6Bm%KYNt? zxL4tk!QWQ#H0pedpDFPq>YUBu2W@bMz_k1Ud&*X&6mMVb_a@EPrC>JqT9r+fdVerG z1s^d_FJG6^p}X(~tPfq>URB47oj;1h#Fogr_uRRFPg6ct>O;+~)LxBSZDYmzL%@T} z%+r-^WW0Qcdn5U}ym2=v{DiHs=oNW$3TNM1)K$p}$?AaoBd0f7(sy$8m zwtJWQef8ev^|ku5)qSo1TvfgiPJI`bHRi9_qF8FXCHWG8n^Y`w+gJb3ZE!ie?raE7j8h5gFhf)hGp2VJd+(Ju))I{Q?|*Z=vef;8`>M-aVD6})>O_g;n7#`o-8QsNg4kOKdSnPeyw^gLTAhOL-*;&)T;KSJUt=g2JVJu zx4r@S`NGkBT@%8=wf>m7Z+P(6@y+VF@BF5Rqt`&^GhV)~s(wm%sdO)njNR*sd$CR3 zam8b(JxEL+vjz|EY(RdE_;&Ipca-sL-%cLbU~SlodwaN^_7mXpl5ICM_kZ8ETg|ad zmxLx|csmB(L>5cmy$AoQ5)G=pFXTol$&(+foVVidSciXK{<(bizz(@B`#pRvxKa1p zCw^1e9zMXAhsN1om&UuYvcB*D$WB$bz9gsRt>Q@j7#_%`zv6zszoOS4wi_NTc~`03SXwUnl2Q4z zBQPmX@AW@eS}T0*XdW|FmV3+_yW_{~gU`EH;-Tmd{JH(m9-GI^>-$l!yz5{5_I2ZN z&saQO!adCoOWVA){`=MU_nb#O+~M=~-d_BSy(seo)wnYC6MqhmqxY%i-Muv)^vbO# zgtu3?+UxVY%07k15S=JI0`|#8A3jr&v9{zsES_8XUE0}Q#Swe`v8gt8yX5o2zotJ? zShq)PIiPR!cM0~ipC{j*2glyqqTF*CN6pdvslU{7amISJ?j2^3B4|QSH<7M`+Iwk zyUvsMO1OAUX&<=?(^6yzO3{mYJZO$ z^I)LkWtrzF3}oh3_949W*f);!XNw+AzP;>wfXtRsd*rWOy=mG0xv}==o%U%BPFuDC zd!PoVWqzX*TiWPEl8w%S%Nm{V6^%~&b@i0jQ(ligvmQC89{T~s^C`JuGkSyuOUu^@ zu09fQi$UEe?w^w%PHE(JM~@24L1)@%MfAJs9P0Yc zp==&H#elu3Q{^y0_xh(IV}VcplzG6Pj*Qri!&CE(2Wll25BqV@HqCfqVmc zAo3mCz%_Om%8kY_olIZrWYwm7)8(_%QPZ$X)0x zzBS(P)r4(c3-8in*=9E6<>%09jIZvW=I-j8hW>e))2`PPmi>iZz(+vx6UXbnDtgC| z;6%|Sr(fPmjtt~XGeQ1>zF>Ua4&A=e47-c5n_QF(#Mhmz=S?k~p58YF*l$rbd>xkN zWPYK!9W%+fB%d+P+`G$8_80I#Mb_Vkp6NhszWJb@KX^n>-?dfG|F-_w{N}fdKEW_L zo~$K4U#dJk=Ja8Y#hh;CJOy8T zv8d(i@e#nbhTnDh&Yk5qxtC31-&?cX8X1YN-;dq?9?f3Id$+`Eev17lt*@q!cZ2Kd zIsZA%g89T8S~+T;N#9M}m0r%UmowbCa$4b>K26c-V}rEcg`dYip=0k$#Lc2MbWLuEHP;z~LET>8 z0WM&@U60Qphii=yF za~ZjFnGd?H1NfU{b)zk*r$4?{r!RHihUWDB$j;S)PlB9T1M8?~Pt`sBsI1Sqrw&{T zKFg559)B&)%H*6(`3+ocxWuqyy)|wuTVpI7sBsq(zprJ0`-1;<+mrG(fF0*^*m3R- z+UBMB?+jp@q6cY%A3bHQyYZpNwkVnn^1H$B27MV0u};yU2+v3Cf&<{@YmqB-Q|8+J z>Yt{N=VK>y5MYdiSh>I`G~U zkA7jFimei`!dp=f;|~b#V2<$P*jbhM(BCP4r$;}l{Q2O&eEFikpLtjC2*4h`{T_}s zUn}#do}2?+_I%~wQHj~C-h5J(?Z@*mV`Zq4{IK=J zc#3xxT6a#AzK2InDSxNh`?0)SX%BJ%Z(cKlWnNC{76#+qKCfY3ydS7JY3EnY3HD2M@AFW~$F}tQEJJL3SA@%YqSwpc>A{hbClt-^i-LnZdgAjD zp6wkuiJ;}&qb&Dn3-@Zi2`x9BNRqpHnQ7NTqc^gTyxB{xIpK@C`^9EUb9if=A#eGD zmzK{4Z#SFCr#*M0cTTfQHh8AyNln^W?2Gr@sHaNrJb#!T8hiw;x8PYvK> zp$*-B$!jXtBlsk5mh2m~sgg@eXo9@sd1Lq6?2F0$HC^V({WZD2LGEvm`z!IXEV-wG zN0zU82knZN0DA#>Lj*UFFH?TYAuII+m%}>&i_lzw!LYy}|6cyk#9?R)`=Vu_2Z9rZWpC}SRK3a@lTmkWs~W>fH7NNX+eqKfbeGLu z%G$aQOTYa;WZqfc#6JxU`!sLfpLW9YKjXA7y~$}y-o%^uO-{=dH#xEEZlWAr@s^vI z>rK4%-bg$0&G_d8zm%`fl3$0tZ!p`$$42~$Q>&o2j1$Pi*~m0wfZxRU2i|bxc>)dxc6;710GOMTeo$%yXxl{ zUw!)=WB=wk_HZ3G5ZJ6XVJ}EN$$ax>`~v$ln-~xF>OSu0PS(++6=oh}zB^CY3-RL& z9ZpDmocPQlcn{x<^$%(GtV84)JqH^6w3dH2Jk{_zE&fM)1BDHH1Mv`_CO%Mmj%e|& zhqSo$Fn@=zLB9%m`K*@y!L z7@B#W)0#ZbXcKp9}JSUv>_fuKG$moNj2u z*Gaz|9{kPlNSDi<%v;zqKXGiCU6Ufe>Oy$s;`6L)B>mY?z-=LZSItFQ;mx!4!owHo zg+FT23xP`$D)!!nhrr1*!7Udz4Q+b(xc$=0Q`0j;!rvHq3%}V;vn_vT41B@fSJ+JB zL;8xdP5266_nuwwUUjtTCwEzLoozlKGzJ^d>^eUm#GlFh<&6Eky%1b+o)IBO&Z6vj zM%%!7#$xjOw34@{ZQy+OtnB%ABmK7YT);kEz~0SgKhMaQ_dxrG(5ZCYeGA;hS5%&k1a`SeY~lyR zR#)M653eWo*gAF?zem1`^hLGPOE^pLRh~UlcT3T%%-4}8n{2_6)%fOa{DZ*p2@fx= z5nKBHXN<^z4ov9r+-=}K&d>smJbKj~4@MMD^XL*hu-spdF7AQ{e9%T#7JWp%_5mM8 zXkXXBcYKb5`g)^nV7(>hZvQCedW!C0{z-LbA zE%R6OEpeq0P0n|t`h0cHz>UwZB^4}nM#xCtQ4=WK5;6)KX6pG3@7B`K%+iCDAiN|%BACGG{{EyE4!%s0h%^bSf{A9j1 zhi%co9J@iEi@non+=V9Yjb=CMZ_YRBb<6uc70L&j-=%D#%pCN&2i-x&^6$!A2VH_+ z1`QXzIkr<~?gr|WzW*&}h<-ud%eLYN&F|~pOC9qwoGbGHC$wxKW~UZ1dT)Di=)-*< zwsRM2`P8c;h2eF2ymO=Szo6Yx?)6e^s+PbjECn{+%-C;sBH1@Pu`A-h$5M5++a#}H zW~sXf`tGl*v=%p_Ba0=?p)T_p?k)06GAM75&*L+d{>7yWLfxiQx|z?Y}OT z-c+q_bdaaF<0N@{iNkNC$kUr5Pie=m(TTj`=@^6u7@Jp^nEOVGJiV!n)P=Y0_~ztw zvAHu+@yaNE-B#Ylr3JHBSy55x_?5<4qz_a6NX0)8`0bN?NM}Hjrh1FT1gXZ4*5OU!XV)IYq4)jF0!%^;Vg!>(1zVo>Y zF(>w94A_k^*EfR$!>lt5+=Zb{VeaJ;r)@Vjq615umIF)jrXB^JSbz4-9!zO(A^$x4 zRjb91tp$G+HRGX~_?QE9563ij@EmwQ;ssv)5;0I~R32&-|KsRUV)w4s(=$TcfrR4s z;_J~Pg^K8EW)UAcq`4O@M1QlKSk%N_^)|20 z?hND)?IHFZ_r`jH@wuOe;5)mBZ6W<*qh(m|{THE&ikX_+%YxOPh_63H*_{D<^&UNL zJp_#T?W8{6B3t=kx3v@RDit?`PB?@2|@F8oQ6Z+yA16GcxEe8?g&ZD!4I#As4tYVvln6 zjiLhxqjv>v27sFbz!dEQX3&kSd@+41dems}MZ4?Ip;OOJ^~XU!%Wq}|dVoCHi7(p0 zv$gz-og;jJgs$FiV6PiDcP3c7*8PC;uWUsI{3@_F*Nqmf^cPLx z0p9K1Nx1|4-RYan)xa1w%XO?DneqW8BhF#1*rE^25uPQzzc+|{6&!7s_&hu={|hch zhoz~$W_fe>`tsqGyt`f>Lyz@>Bg3N8WbeHB2yF!Z=h{IXyK8ck$UIE^K;gx_d1P$S zyN~`p5b)w>qKFLmpv+e+PYC$HPm6A>6dml@?8^=^fm zGY@mVOOeTzDBOG&c)6u#!MOX?+Oq&$x4>y1Sm1;YM8M(D-`j}m`Ka*WbBx9M+2Hbs z6B&p=zat6`2YUn9SO*1ujD>=ylXKk|@M9*U$l7zC)*q;b=h5Zx$OZc#X zH?!A5cO1$c${os`iRn(i$dPfs{{wFH?aZ$py3_an8M;&G`Z@6VJJ6i2A5Khjp7{Hd z(45WCoc>@T2hD*NjnbTdgSMo8>zzq|(BH4`8qpv4H0P@x{_^l^34aZy=lFQd`yG9{ zvS0ou?><%XI@(jf#ZvGucgW*)kOASZp-=5&c%8-YI$`eB0`660U;%wC>~0d=oLOy@ zcpcBz{1fm_=lCyb3xw4}L$Fo&#@GyluobkBr!7 zH!GP?cm<>P(HBKe3fu+V9e?8UP_^J?pNG_T5UB?zvXK}_YGk-i%~)65z1h8?`;|D~3`_Wq#A!8ZDfLg#%6nMa=a!dKh@ z|Dl)4%D)H9JMxkb^I z6G}FbIF?Bxl1;kk8H`1G(p@x=Fj}(-w>6o7t|i>X0~Z+R9FTP`FwW91aL*bz-`4fF z$r}MW2JIt+Zxh4oLS=zlu@oDEtE+5)f#h7uz^ULui z(9yghy~lLODpl(!WpGGB*o2t5Uli7x6o z@ECPNqGLs7S|e}OTG3dX)ZL5qfN@DS!1{94*CT9O48?z7@K^j6wB-L5^IvF7VT!TRISCv;i5$cf6&q;TUh9X;!7(kJsHzhgap zoWZwG7?-;bLzh#qV|^&X^75Pc+n zE%@1m(Mb^Z2RH}<2jw^u?2`c;7{Gz}2lz23ytC-;S8qDYm=kA{(7pc?W#3-mN5m&# z(wM^XR@pT;PjvdiS6r>36X6}+iJ;FB-D@ayfzkJuCB z4w(nERp5quTseNj^7u`}scaE%eD?I95*saN4Z4{5U!juk z-KD@+M&NQZrm)x71^#$G-1cMtG~oBwx7I5gyh`9x*_x?y?cY;cgY3`v`Q`q$dVXvC z{_p`)Z~n2r_2y??tNyRCuCps+3afebUMXXi#_{%QU%P)^*8s0$%8awB_i^h7tHA0Jf@Q3ajzP&bhRw#gBRYtY252b9ql6U{9|FpJ5N6?uu4rhgm%z?x$M&p!&of zuzWxBA!Iz&KC`H_UfI`C*nR^sg}pN!3*R?Lf8O2|KUsoxdApF`!Ij6HcH%|0Woyva zW1BO-)`=~xbt1`HXTfE)`5?Fs+GX4)bmI^@*FkiyN0GT-oLuIX{KLi1BcFF7pYNdV zgOk^lyv)Tvr|wGXUP;~SC$B5{jEgg<8>DW8x@S*bSMod;AJ^RCeq`>akZE3=T;@iP z&3vibNnL2n;DeLb#h!rqQgwQ zx>0OLUsJk=o%>(I=8(8qE74gF7)rl_Z3c9@$&DmO+YR*;ke7UPklZsmxvlbF6@L(@(SHRy%RQRZOW%Y44SpLopR3V)qqFYUBE3Eh?T zGVcs=rdc;~4sf0zCWw0P>36jGA*E{pHvN5NTwv2H|1P+(7QU~RJ*tK8tA+os0lsVC z`^Ye+*9k83`SzbUv1x5iB-_S2YMT?De->|Mi=DRQV)*vO@a>D?+ZX3M!E4yl2ySx~ zZkq{iv%qb!lfNg0dzw!9J*mBC$|=7mwMpIAe@}9GM^bpDRqFGujBRM?O-bRE+{P*6 z@JdS$@#A!IS?g0hc}ja6oG=%8t$|PCX(#8ot=YMpDZIJZQD^yW06m?4rqP-_Q}|ro zdN@aTLHa4bt2YVWNJRL};ymfU-}29EyRmq{;Wx_Uj%56EPTZ5PzZ6)zv03#)yU{k8 zZM+*h{2uYnztl$iGQUlwuesez8b$B&PNzl3CY`@F{@VEq>rDWUjW*fcx z!GGv7Rg907f*+f(Y1QFPn!t}uz^mX!e(MBQSAwT^PvKqy&plIkE1H51{zcv>#_U_7 z9=wb0Q=cn)jogIZ&)Yxn@;rxq2Hr(KKaYDcg?eYIeHA!}vX9~2O>Q)MrqQu!#96@D z(E;{$cT;|CO!2KUM`Dh>*=d(~@TX)RK4bh57vEXHUzm7%T4E7<(pWl&yx{P#!r_7Yz1SZtJYHwja%sC7GNKSFtN9KdA^=|C02j-yToI`md z<&Bg#QjYz9&un-=3|^s3*Jr@H!g=BeZzTlhb>i+ARSOYh8AO~_Np+p@j-9Irm_2J-%$ z7Z|M>|ISR@Qfw}+LYG)fF7x%Zfit-gV*cY(UAUpFgU6M)8J)zH@;ojQm5eK z8$=H%?VNjpnuEQLbALqV{f+jevHO4Rgtx-;2Lrr^GxmP)Av7ws5}N?%7c?M`zEJ2u zS{sH(!sjzAbMCK&jw{^BKEV5B)fh4_v0Juto!C)wcXo1*zVZ}#L-z~sNBh#aiC>o1 zG4!P!*yJFCqO0Ie>uw}j71!8iO?l!vbw8lSMMhywDRd)Op%1dUK3bI%jNibOAB*R9 zGB?(lW6yKs{Q8OLaNMPee-#)Cg;kk~GqG0bX^z7m>RvtLO`PWld>uHTq@O_NrtIvk z1U!U>e!`c-`|oGoWu2AGZPp8tGsPWH-&Y{_YWs#t{mJ+;C)KYvuJQ%VTO~b32l_dY z^_M99m}fuN-#%`Pcd34#s_a+f4e48K-9#Utv?NfDSAESgL_!P-?qyB zmH!cI+N2&-(%Y31-zB*6YHCb6u2Ekae;uBDf*d02$Ze?h)t_)3 z*ZO0dE#BCJE!FFYEfN^CLu*(^#`D#$>Zi1Zgx}BFSosX){ACSFuOu-nwkcQ}T|;Kp zm^G+-PzASYtO@Rew+A)bM&69*e!h<>J7b%yDK;nIPT)kDxIZq z|AcYn-=$*O&zV(_du@Es``mZ^AqIk zR{n{yrQt4u7Zr|?eulneR>XsSOsD@EyKCJE&zG8e-<3NN_xU^dO>8Cw-=&{9YNa&` z8nHyt80>~DiA5_qYkxjN=!_)}vG}|A_%90{O))ocH}5ARzj}FagvMkJ8_~{knVfrR zo_>G-F8o*NPyCG3zDyd26}m@0FBjRvg=UEj@zWXPW$fitJWjD0<2R4K_5W+$n(otOJzbw!k)c&`^rrWBtQzjNM# za&KUcnIE0n9E~4NG=G`58wHpP1Ec4B=g}$YJ4}4Z6X+wn zdh*5>@8W!|7`StrUv~-lXO1@H;ho6gMj1Huv_p05bDiw#MCU`kWbD_*?bmH(oH8jc zd?R>9yXDmO$jz1ZXu^B)hloj?QL@OVUw3}4qK7wnF{zEGe7vV{o1#x%`6p!lm3U3+ zDVP%&ub@9tk66s`cuhio`Q)s~gQ@N!ZNxuB<<;1R@B9qwcxBsJ_RH|^D=rjRFt(e> zLnT}I&)%7>s4dTv#^a>S=Em>p4%}V4*;XTD<1In z>#9ph z+3#D_o(23o3f-0GHlEk%|86B6r>@R^`)&8-%YA>q@4K_8<|(rAtd9ku5Bt8g9C?NR zJCT9CSlYkm|28tIx-WuDD`VU!{@o8R+ zgv^(X?KuTovVZW!ihq!E{DayoSSB_?CUCTd{pa45;&;MZV8_x@6~9wtN;CKGw&}$b zmowx4M=IlYs=kOXTNSs^lQ~wa`(HX2?ysfe z9;w7De!PiIlkepp_Kngl! z{=ZSR8UEp8_$K_ZYSaAfukrn_R2y^ePuRDgmfJMXyd$4G@*dS@-8_rAtx#>Emqv;0 zbd5L8uReg^_^NW7t%n+@_X*Wz+2*?`!zY>fq~g5!q&}xpw>HAUD=1Ac#*7g?FX6=EWGXL|+ZI1l+n`rYr)uwO3P4vB9wdwm{5A_~ZZB`X+ z_5(i>FE0Jw<~K2iRru2}pW$D82bjV}f$z=#`Di}Z`+cv?6(6FnZ7dKX~g| z{1MvYk1PAzc!)FjJJqK5x8GLhRvKsB63*`6Ue)Hv=bokPEvn7h$1mgit*XuNTQ6ju zgXM9WuV2Yt9Z+q|BRSUnv})5kx0uhZ8&+-loca9z&*e7J`Lt@&yP0!b_Dj`f?fcfV zo*vbvcMh<(u23Fl)nA@Qn>N+vNavHx;eWg~Hwb)8S8dj5z|^w$m)oqH{ygLUT(w!Z zlJ%@27K6-Z3uk3|XPSCxHGRFQ)CN3y5ItZk@_8#VV=FS_V%~QbIc>>Byzee@TCP~c z`|cvj7g4?lef%Qc_7>(hTKEa0$Jhv;A-dmG#e46`>`0Vt$SK;9DBF-zv?Eb=A+K*o zqTYIW6UXiao0A|mClO^sGO5oEKC0-1XWLeiH+FQpVX>d(Jv6G52f&oiGtd*CfnI>P zNyi!e^L3-` z;$VK&R(-hzk73Phif@1~ylwErUUTGxearA~_KF|wrsj9;7601K+)Z|ELg#G-o$Zra z;Zr$1p1Tvh0kM)gpnDxr&UTr47cU$s61xf=qsmQuP%HdxpB69vH~zK5BX)fa?+~V5 z7+$8wU+u-;zb+Uz6Uq3xUHrbvuvhiz62ruRj@ql}&wOwM*V_;y$BCG103*{!rK+^UY;FMtVjICz&iuLg}miv&!8{(blz+a zE8Wsgx0ko9UU_fLsrQ~!_me#5_k7D*{yV>AP3$vyj$ZKfadGSQ?1Mgk68j+DTkrMX zTZ4TS_CfOAs(dEpd>Z}zyTk33_f`%5hBw!pyn6+MoM}Bezl|aFjugE(WLxNw%%Xa~ zbr%&!;Il{U+SEw;u5Z#-?z7y%1h9dhxS25vxo@hvjs~2X%?cLPJyU0v*qq;p4R{3q zXn6-(un9lfUDSIF`*8f*!UL_~fmSz?Y~{_il{ec(yxA@S1{d*WyU1NU&|r)ZmIA5*%R%SP=k-zZ-Ff7$Nx_3$comtx0Kg;#$K?oxP_I|E+z_U}Ab z*Rj;ZT=41~@MQS)@v3&n!>ebCeZzk{v1!w}*YMU`raR&JzpZ}9oF+dMukzY#tym}zvdLw4ZP;-6RtpN6mYDe!6W55cFU z{>$UjHiy6g#3&es_j*nEv_^2lHu$u!@q3?#8*$nm>&gEyU>Q4q0L~>wCGjcU-p$Zo`R(n*!Kr8OcUyVW zd=Xp@4}2g9UZ}E)IdEvoZz1Z${QSF&j4?AoVmoO#g{CLy=Rj6Q#v*@{DpPis(b3_k9bskkMI}c zuSI?vfd7|r^@qMfe#^>leCIDBfAU+BvH2e6ubsLJRDTk0PU7vzZv{H4|M{`hm#uNfUVeE$S~im$mb^MtW5b;4=D_O2cH2}``6Cxg_(CJ);@Z1xOzQ{WAlp{(Ue zfu&&l+*Sq9@wL-=FCOJ~=EKib;Z)wPBj2abi$~I@iMF4f^jc2 z-0;A31H9`-lGA~$>F%O|X$JWL-PYtZ?%Oo*dy~-yf7X_40>3x8XAMlXb=?;H?(@lc z&qq%Cg#Z8N{r^8sz5jw=CdVImy%oIP0$z_TwVg=PhF`Xw@D<>B@Om3~y%oIP0$z{p z2ETJ|#MN?QPqG$pJF%v~?H?-P_I!iF?eK<`xV`^hxsTuo^a^d`al75PxeB+J_`Wi3 zZ{LEy*puM)9C&c?DdG0QH6nvQqi}n^jN7;Bh2z5aHGtc1hwr-|oa^&_mAE~3e57!E zD`N?6&*_CmaC`2yK$Q&c#VIS6ar;){ZnO;`=ignz?U!@L>;t%cK@YN%!tKNytHAB> z$jEBYtFHx&otqf%tJK|H10Dj0;dijJ4jlgoup{^$nW}BTV$Z?tm$2{rwzG~{6WpcP zfQRG3|F$VHtFxAm-yZ|%6?LPrWUDt ziZWA7>drVd{Z@p!oDKWVJKiOnLml>EJ@^3Z#uq^796zQx<-bxYRwC z;KKB5YXR~Dz9{-AjTG7_bXDl9&|B!P5gE{pXwu?bEpU(N#x`K9A!KSfLN3RQQtfrk+^mP*2X+t}07kUQmw4t5Tp`Fv+*5q_! zF|>3sv=rI~?VM(u1uZ>`oU6J%V?6ClnANm1AvSXG)6>8K**a(=cYZ!ODVBmyll5i& zf2WDx7w?qll6mLEFBm&I?2*0L5B*mVV`+|&0(Yi@_=4eM+Hv;eKBi%CQR;EtTKA)S zehS_5NqkI+S8t@iovBXh?x5~Td`#P7r`^&8}Wgpoc=GSf9%{_d*JWEVKK@h2k>XFh4yB#1JX_KZ;kgp(ccGc zgQjHzqx29Q7tO+lfwKfhLaP}Exn%&DJD^b?T$RNqAPJwQ6I-`OXfON^<&guTBcJ*I zpX21`Sa}ZK8EC(#Is@Wm;~&rr-4Z!bgO}obkv$ybROl;w4YEUxIYnfLe622iw(x}L z#p~ezYcD~5SSm6iKZ5*l3A%FR2hpc`^1~gYIvwN(X^;Pc=)Y}qwkJQB zr9Kj;+2-ZQ4?2C9aG*9ze4>?(Zs$f|`ups|F81SF?8_sp=V#ohTJFTf+=-3ciSMKD z*acnx7WAF+)}I9>ZlMz)u4s6m-iW~Gfsep__29lbaG&IyXsEz%clq%%_MQx%Aq&*o z;IcgSzbd9|t@#;QbDsAFKfdr|(2rKJc`;%sXl1iz@AcxX?G@Ym4P7d}W;}Ehp799! zjhvjTZhWQd3lekF-8qPTIPwJgAgA>?&KsG+*F8JoCz1JkxW@x#cfasXncMQjyK&l< zn#*%Lt|fmNHU&L(%gvt#ZL{xQ&bDTGZs8x>W^Wt#q-MFf=UukB3Y{q5i$=d~7KwW= zb#D4c+l>C&iSd2dA?EbjkAt6TmLKdu7qbc;O7sH**h>q{C2PPRzP=>!EBW1vfu89e zotM@ra{_+xW7fe>{E41H^bMkS5IqF?h>82uhDQ5L+)=%^nQsx#W`?nd_r^u+t;nH! znzeWrun{J<&4MB{JSje50rJO8ced?E1|9&`v$~5u%xGm_zy4s8bN~J(XV>HC@!5C( z9=NTX!&fNVN!gCan@aJ5N6)qYAH|QTbgphiOjY|Ev$Qxq6;61VIheZ8$9yQqIdh)( zZqVG8B4?WWg0m|))%nVcQ=FYMraC)zOmV(`_Eh|kraJemoaSu%^J&hG;Ea4Ap*cJM ze1`Lt;0)?ar>;$#>9n=U9W&jzpLN~y)C_0a9 zHd#C-&Ni&#G40?UjPvDEZyER{aSvGU6}sF7w-;D%?eub4Gm?OG_lID zllUgIPCoaH&P6-y@kZu-er%DCD%;}<9|Cm3!0LQ#Bk}QjhgFkT``011?LoH}-dubm zc4999uOxXU#Gf~BfhW~k6F)_F$3P1NO}8TlyKgJ@_(u+2icZ zYffw$HY8c_)0TkPSEjGrQ)hGjMig8*qghLT{7x%>a6fhi2~F(T(x1H3vhO6O?AB%C z&kZeF3IDVVTn4^Fuc~N;${RAk`ia$|shC&)39ZCllRc8y8VfkTFuYxOAi&uLn5W87 zt@QcqZ+_KadAy-(?tD2POlYMshfXt@yTsK3Z)cS6*Cy!`{Gt2*Z=7&lAKFt>wXW+~ z7j!LsY^#+ozBrOUIIJrlN7jSBz+VezQn420qwTHd-_?4&IH0e;9>y8^pCao3?)!N@;bc#ZyLLf^89(X#x}T4ozKh6f5P*LPI5lrsfsoE=X2nc&j+~A zA1qFCK2fdeeAGHJ*H*79^O2LT3;%YtuBWyVznC~my)2jUCw_I@!ANf(ORm7kK=M?u%yp4)^8u z-vQp1j+y@w!Rx}~Igx|##oTFS*K88I(6iH&yC!vn=FIw-_#W>Yha;f9e2@=T&NNH#QFEH(jC)bv2wA)z7c>-(J63etV6Z+Y)gzXT;5~!T+XS z8|pM)h2MNlc!BOqg-6P)hDN+%oBh0*?tr!yd6(S*FR)7Z4)EQ534txIZvVTCD70AC z4t*t7O`wv#!Uqt~Y5-muUP)}`7DF=^5Acowuhf>*&>ab{WGEVJX5djW^o8!Df<~We zAG6*izA*dbJ}N#`<(*5x<1|OLy~?J(t95+t;x0vZ_bPjKb645lSNUuYg8%#3d#yQd zB9m3e_q*8hdlopr|2aS`I@QOKe<=4MK7wVRVeC-6e8KqPNna&D@!tEzSJ@6(UuREs z#k*`%{`%iy56V8#uOGj!G`@L~@eec366h4M@NSne67Q%S1OLs6c@@7}UPpN^4htLx zy>&M4mUxn-_OtTJpZHDXwXH&Lmn%M9?nCW`_~>gTAAQ}ML+0#KAL=f0UdvZwKWYvB zY-ur=3Dmf**t?Zw58+p^ts;CyaD03M7 zzqr@?zZ8=)_i6Qi1%EDMafg^M{ySIsJ~nq1>4W>95I@}hPT(0mt$Mq-9Qm*k#udNJ z+;tCjjWhXP_8<26E|FX5`;uPeXaD6xObcQ(N~GyD(F>fN6)eXlrO z&1s49kG@g*7`oj&j_u#^^87#S&wo>qF%zmUZ(eS5<-E|xj`~}B{jDE6=9u==y#3An zlkA`OJ@wC{-_3pM`-MB-P3*W?h2pTbcj4x5<~PjR8}B%#?Y;U3hw>YqI8+$q`@8=$ zo!{_KAbufvIj%aY6^>vpjQz0ZpHhV986FWkUe({z@4TA2A5i^0)MMp0bZ5N&9{MP` zi%wJh-8<)LzF%}o{mtt8UVg*V53Bx`|E49sVedt%zwY~<$#1wfqWZgfdVu~mPTZdf zjU1id#QW~ShYt_s*tgId&SdPqYwsJs?^W$zop_AOv)%X7$$oyYX8E-V|cLW z!_RXkA0zW;KcJcYU0!SJ@Z- ziRgNA*m|dQccBR`A3$Gt0KMUp;KJw7$rX_`bMW~o#V4TmME{1&8KXSXqm^UGFdz5{ z?r5e&Ll2`DwFK6U81xMJ4*!maOL`~aN!(~BW&0@$GCukRd`z4c_?1@pm9`_u8o;xe z6h4lekn}I_9}lSasE7UiQfp&9ihkORE%>E-jiMjdRPH&v3V46MzPC$aV9(5`n0n0ZbmYv3s^`tSLG1gK)iUpk$IaVm-^y4y;RD9$1LR)Xj3xNN zn`dIp*m*9OIVNUG%rOtofY&PK_XFO3EVno4$FUhKijG0_8kO%Q#=Sv!H1?D8b6VKX z)+17m{?0oKV__$IOnE!y;e+TQj#SN;Iq9QwCB~iF)66PtRb{R3Ou7Ed%7j1(FX@wVU>CxR?&?DZ{70oz&Fd)2z8?`#~$A+ic zp#(ndM|s;(z6n#YkKjFOriu|`T!{WdViaCPE~Sfz6LsVWG1mu2R4%2vZqehvsv#dI z`H0|koNccXJ1V6u|JP39N4=-jx#t<;3WUtO^#Adf>Xu*4n6Xf&{qnJ?b{Fza-OK1f zFYL7OZFK_dx8ldyd(I8sia2#0old|M-lBf*-Z#Al4fwP47l(ssD>TKpxP!H<*7BS8 zj5vY$y0Z;?{7==Qul=N+p5D-u-c&!sy_jR|0x@jkb{Iv3Q;E-dBhB)!}`G2T^A|?wsy8O6-0O z8!YZi5ILswj#GCjx<2khP{jnDsmkTI(mF5dveMIo5~q|{X&s$;wdbSrlsqob{9*R3 z#ux;L=9<~J-?DGuPSt0^l6MDmikiu$aFupmb6*g~9c(_?`7x2AJaF%wHhnumfc_$(v~?N#3rIR_K06i*LRfxxI_uW@$rr4xWhDt<>XZuOVOT-;l47Gyl;K zp%Kh)rWHufXqcXte)t0prl`FYo^9qK>SXvW!)Kzr&*|s?Zv5T3^(b!zvZrfAKYTcT z>sHqKcL`hN-pwlAs~<=I!?xMTIya#^{vz2Lx_sJ^{sneH^Ch`aV52W8*$)}=lS zQx5Incl;c6U|L7dS07OD0Swx=`Y;kiw<<6~%nr4G>id8E_pB9jHGHOj>V3NZdMZA{ zUfq2Ud!H*F<{pglz2JR6N9>@)5fFOLy(;sw;-5W9{e7=jKTnQRCj#9TS(^fJ5M`MWD5??}VS=Uv@xeO0wSYkK~@)p^nF(=>q@L zY^$<7dWhe!nXmjU^^?&y5_3N>r7UA9d9(PqS1$778Yyq6k`+~*)Q_uW)ipj3zV&C) zmRKGCruwL{ey;wnvEZd{XP*7Q5wfD%gUsKs2ct4m^&Ag)bLjZ7Z5;--wP5uc`kwI1 zS@)&PQA4(JL1f9&Md`JUWg z-iXm(ECro|&p=-$@$PK$9s9EE%LZk_`%O}Q40upHX(_+`UQ5dqIu5dL;Nu*0@2R8A zm3VY_#!9-UB~|$byt8>ybPTLhy+zD&RlL1()&Afk!H!&=K>A~$Fak%=`zKp`Hc7Ej;CqMHQvrm5JD^BCg{||fL9v?+@_J3w) zXD_)CSO^I!E}3KrF-C9%thPE^*&z0YKa0J*y+l{k*0y3>@U7Z*)?oudRB(k@>T8LR zaMALD!$qyy$y+yy_7YlATl*@Of?D6!cnP%BlHd27+1>1HvLWDX4Bh!-KgsSnJA2M~ zZr|rQ&v_2hQ}j8$GSHR9l^UiEc;^VEueL1U6BaBa7d;iJ$ zctVh$ZuDJ1?F05XLw&l+Ep!{tiN5W_Jq&2?yRU@(&ceSN?IFn63fex}2Y-?2IvR`d z#D8P_mhe~Ox8jIx(OAq1W{)Vpvin2~eRm4htWV#W#<9xyzFT<9kY%~hcy8zruoabU zx9NA?;9X<>|3`lh`U(5^>GO)dlW2c0@x07=_ZaPTUQ}nwPUH84BTNR^xLwRXfHqu0 ze(;RM+}Ya9JKQ%0Kh-ZxKG_{8OwW+Trun*{7aBlcx8IQCdk-e~E@afYWHNeDnhk<} zA6U*3x|94M{rPG&VqDM_KG(79Z(vTTSSA}2oiF4gywn99+ho`l_S>0vW2{Jw`9rAb zXxIxE=A33Pu%?)IjM^2dyANUy1pE65`8j6*-3=Nxu{aK+H)@}Nw|L|K_-OEfBk@15 zu43d+2%!S-eM0vOIKyYuN}>8NiAl27MoGxE86QN)viw6AYBo|HX7X7InUNDRlfnnD zr_(p7Bh1fQHI9wf)l=4oHGowO9S%NAK1-oF8GW*sPJiee<6fH`y;@T{_!Bk&{9xD_ zf0~_%&q%j3DO)=Lk7Di0O?Y8IUXl~M6s=6@T~lnE*26UB0=i7<|GbnQPsGaiC7#za zp6PAZq6+%lz8aw}dLEnUCOi*!qo!kp1EP5hG^V^3dO<;rbSe+96Dj+VDHF+g2osGv zcsixj@22W{mQvqoEW>PUEzGrF@jJpUs#BuX<7q9}B##?iKMZ(dx`~qB3Ldb6|qGkAW-j zEW`*h*D{la-3c0w^BZf~V9X~~=XLcYgNE>_QW#Q>4>&hA-nLUyW1$$?L$PE^J`!uA zZ!>*AAsaEbfOr)2HPwwHxlSz8i)2T}92lO6EfEs78oVW#?E6%9`KgTQhS@H2S-iUf5m>b<2<%*5{5OSY7iz}ve4#Ib>N6ZXoWEvvH zz?q1bbvVLDqopltY0VOy;-NA8xJkwQoYBSN*j6VWx}ii3T~Wd}T#7pog2m#fRws>L z(Y*k1;x@ETLi=d6Pb=YP2TRiHu&}$muSWb}emnF9eb%eRYG@CB`|V^*|>J-QAapErP@|LZ1A4tAOBx}m~ zaS^9F4!>X4;ao>*E5y;8%f&H|mW#e;%0=fgL8sOeC;iVEuS(P)*qqwyjtR+g#!;L_o6l)ZdKT@w zycSK?gGtU^`BLgE+BoFt;|z|ra66%UN&CklhZH&Q3EYaaXb*y~gAU&knkRVryNLVp z$iXe$?-9nt3UD`j^s~r$4`T1U4bKT3qP`2{^bqyIaZc$F^_$e{=ppJ$q5UxRtK5&i_;>Ro7>%d(rJ|-BaiPZi{}O#+s#DR$nU^@QmC zfiB$T0Nbo%e8@u=aOZlJQJ*DNfch-uIL|@P4YtLUYfN zn*;e^vay22FQ*x2Y;ax;zvY`BB4W``alZCbht%rgL+a$)52=A)9pY<($nACGj93IU zgxZKSV+YZMr;#snfJi$JAh);pFurqG6+4KgE+V|hagurs(awGs?=M5Y-x2Mh-{C%} z+Yj?Kzd9_renBMZYQ*-!MAH@#=?C8-su<)n{ziN^g702Sv~zu&rsDOd|KY-m_Y>`5 zyd0MiY1frRQt`j^9U|R$BavQv9lzhfNuF{}t>GNn((#+eK!|D8xnUMJGIc)!Gr zoR*)0XCDW@{tCSMzu?m^9};W7c}T4LEAF8C*CDDCu>Myv-c0EPrCzK}=!Es)&CMCS zxqPv~o5{KZwni6Po*a+Z5*I$y zS>9id>!YxTCyQI0xVHkY&3J9Zs~xZPc-@cJS|{!*{s_*VVw0k?f)lycl9c@{#ob8p zDLCg@fjVX%K^?O>gPm0>;^SXKU+md+eh+<{2kfiHQ6q-h+uBz2|B*nw*3gdIoe+OjpKYfaaju05pzr3GlhV_ns_7jwcIV|~-H ziD~{AACGla<8#m#YmD{H+85_F=(?(L?9Fy=Lf=QS_oX!*u%>E!H~M0Iv9?*COKU>J zE5Ik%>+PI^yBtxYYFrfb+0ma~^z3Q~eM9KmfW8fb^u;-nA>Yr2b0$N+pAF|whH^g} z<3-RB#J7QkLF9uJutt5(l4+n!`?FekM=pb6dY zW#^cci)h}QVS65NXgKdAD(7+Qlr^wVwfH=U+6Xdoq}YD{ZeR54uthinllqK2?Tc=9 z#DrFy18q$3w%*C^lCG-aQs*X#UUxSYwu{bcIbDMLWGbpI@B2H=gT3{-U7ljU| z4||wKdF5XKl69LKM2Oly${0d0NFnzA4H*cK)=@ZL9+ND3s}9{tN(3$5Q9H28-zbc zt`EY-uFTGRAB4%Qa;6D4vd`o?+Xn&mwtW!fXng=5#NaQ~T{r@xDSCIhMOU;R*8voY{8LI_fyX`9l`FFzmrQIA4VvlAyC? z0ezN&8V<;3MT{SN3yJ5GTj3`nH$ca4;4?-O`9S!V^T*S3;4KQf|xh<_ z#U|9Jcm#1Fj>h>>+a`kAHXW$fiO=gF0Z;5k9k1UP?7#N>H~3Jqu}^a!cmcV*rZrdM zbgy|d-M5K-WSqI}F5DLvswhNkq7bo(Lc}Ht2Z_5l5KAdgL%R$3hBpe-hJO@f?MwF* zLO(*^X7t^JzK>+@i*vw;rJ(N|^!*z8elL4pTJJPefxbA~*f0fsKa#yKY5>6|f=7cm zualGu`CNVuKBIC`x(R!75ohd2&4>+dO2nq-(ffI5ZEcTQ6@=Vy9^_WL`PztEtqr=7 zTkVEydg-1yKW~y#oi!SF6;K|&K~Nj65ct`b3hI=gvp)~FI@N}iPVku%d`9CRgYfXH z=(`7f-$q|f7^tt>FiGg+;n9M@!_x%FhhXq<#7XmPF;>LVp-1YVM{1!*YM@5~)4XC; z(2LxDujs!5dgTV_m58BFJ`o?UR>do*PC=~)s#BbFZ-U(^&-9ACTb&az*6-d;=VEP8 z?`F4${{+Ta1ii8hdgavUDKXUSPQ-?oUSWG723~s*co~@-Hw4{+F{A%YEKVI0 zo~-B>r^bFO#*BVAPtjS6y0_;go*jq2bg?~Q4R-`e2N3_RYK2|~om|j03bO~d_URfq z5MyoWx?5=u{{Ux#qeS&;tSgqsQ3Fb$`YT}<$f&+&l1b2CPUtWECiGW3^w&n{ zsm)A(3D92x^p^nrC5R8=^DWR{YoWjHhyJ?ymVfZ^H2qaDkp3cLnEpC1Lx0^3{S}A) zibH>OLVtB0Lx07gzv9qeozP#M$IxGK=&v~RS10sW=P~qG9QrE`{nZKm)p-p46^H(c zLw|Kbe{~*9e^DAjf0<;EtW3$^noZD$oDf^H40PX2?aL_GR_LXb3BB|-^wO))OM3)h zfC2Q*55e?k`KQ~m9Q{`NwDd!fI*&`}=fZx8gh2m0HCvoUU->N}1rV7X6& z)Cq)+EKHpbYi2nmE=mgnV=2E==U~r=+LHS=RpR+B)Ef2hmqgG`i ztCZC-`V#UUYEe_lZD0ZU4-8|Wz8;f7h6(gHA*Zz7BWe=jH`!dtXK4Mgm={>eHN83} z;B1L!2jcViJ;#oQ@C2b2cd~f-$pWo+>Q&p9d1KLMys(1;z3&jYS+&q1ke33;OD*K( zyzKU#>Bv8TSDyi|{sp{xB)hF;I&uyAE<@kV==*5)zD!4c5q&Q~->;+ZP1*Z0{Wt-A z3(&U~eb39@7y1$N#2#D+)+0$H`H>Wj?%f1iPH6;tH77x%F*{tb#k)bH3>?g8qz7@f z^3*;WAsL$DU`8Y02}UDjPalo&nZb|e(7K9@CS*r_4BrXsZ4R1(!dTtNSD3~FyCYwSb0zTWfA{e!=>SfJ&lSY_ zQ~m!8^#5k)|3~S*CiTUz@65T?K+r8dh|jk?3jO~K^#31F|E7TPr?DnvHO35k5rMr3 z3Rr9Gg4+o%q*Zqy!()sHdw_vu?A<2EF0Z5K#0(nBJFsRLAI47U+YbA*5%y^_{3VQ?4|KRxjGdnx z#Mtrq7TC76zsK0$D4?|6|6JRjm>f<-4oI6fA$xNmd(Du&-CnGjBelMQa5K-=H^k0- z#E@r1`GLwN<_-H9abg@!{2uD%_st!9_gMc)Jl2xcg2GyIVqiV&{C4;~PtxyV?t3`C z;Z;s;cpJGD>&ZF~+PqJab>8Qwjc_1O%>iG^p*Bo&hy`dbKzkwD3!lTetyxrW4p@&6 zdabWU8_iD^;;k)f>3Jox#qe9>_b1-}6gu@?_^m}^Rip@hE9x*$LS1UqT&)Wh!f!1U zYpy^I)*A}xy=!Vaa3*|Ma3W)fo#un+HVg}l(cVh;C7Qr$;! zCat+o;{gnF{xHVc6FAebU;B9)4}jhYJ3{B1?3ZiDmynYs^KFF*8Ttfd=r+jEvuXBA zxsZ>a0{c}6`*jBF*ZIe=UoXLSJPX_LCTzz)v)c}4zkZCqx1sL?==-zmeVP6G5A^*6 z`d){=H)rq5?AIyiTZq1ApzrzSzN?U3;=~#p10Mu)h!3u!_@D@WRS|fw zh@Zlt&KU4QZKM$TsF24!74WMlPAH~6RRR~ZCeDAJk-`badD~j_`#a)N$XAS@&iG2? zCr$#MLwvg`=!Vbb7X4Sa5tjn~iwI~J#F|zC`OJdoZv~bq<4{L}Q)eTY=;9d(eRBY{ z6x^Jz95p1aL7wUS4K!Yj807Pa?RMfU|3TDUIF#@a2k6UUkgL(R34Pnq7d47l+-88j zECzWw`l61*?5ojtQTD!wL1Mh`Ogcvq2$zRxW@}}kNaL8Oyt=IY3?-eoEP_bRU7xNmKWfj)Kl^PUX~M& znyN*q7GeiGwuqigHGh& zMci&+@F1H{Z(#qP;lJ-3uSP zSEY9bZNYs&4`TmeGwuW0_!|5u+=mpP_acRk^3}L6sU7X>(SASL*KUAbRUFU>s0ky$ zm&B_UuNu5?wn(hPs}e6i@Ug$c4S91z-rSHkH{{I)d2>PDT#z>x=Yb~?(>S3VwwTk67%tAxcwNTb$P}MP89sL#zLH)69}Bt}`0cJX={q;v{fZ9Uxq|ygaDN!HPYg5a*!$>U_uq&q z`xL}`t^m)2eTX1tZMIJ_C$&$?MKe*><7CWyZ238Vn`6@@Oz&NjhIv2*> z#W**?&a3z*q0UY#_I1Ex-`&AU0%U&(IqDkDtw`~^IeLGwggcP5p0)w*#ET}*s-&Nt zNS#$7(n9Xt;PjIulNB=`=t1wKpjg7IwJgTOw+U2}>3N*-ny7>*YoT<<^~ zdxyC8NvC-KbHFPR>|1tV-;zT-Bj^;@uXl>=+nwS@v~PaS$#Tr9fZ5xg!F>tX-$~xz zwE2Of;>MprZ$5ieT>lcgqt0}H)BR{)i}o$gzArxb())b%vxte@#_<8%wHUx%iy8M6 zp&dH;HpnFIS`45rQ05&aID-XUgSblv<`ID&XvO_n+ls_M2jUoeiumdv=D}ee9S*dk zMg-c^?w11ggC6{#V~DW5-_%;xwc?Hf=t*EM*mR5`V=b#Nh5*J`gZ5gqXRcvwYYFC1 zf;p664kc(uT{7%RCGWthM7tmD_4s}rz7PGWRt4dU(7W;ouq^y}gMVHZ$=&pf{Rh3{ zZk2%r^<{}%ht-Mq&58FdiT6uk!>qMk?%mk4;u7{t#$LDO_KV`66R=07pIj?y zzgC@)tv9cg$$n|+_KVI{>$%&oUlX#}uRxmpy3JTCt#IKWHcWr;#B7-UlYTaAEsHgb z8@dfse%#-N$!lyI20V^C68~*&*j%wM<1_5-#z5Ihy``5&3RLeUBaUjo<6M8gV&Rrzr7zN7DPJ&w-w6MV;8* z*df$Q+=&>5u(wxpb;(jsJBcl#H9t#%8wK1Q^MWIMj|=`*a-5+v(rT{Z8L6?ooBmrd z>QAoO>11=H>%!*PQ)hhFRqsQclfHFP-b(+j(Rc3|K9@hWUgITJ-|QQ#4hfw%d!BGs z;(1ez=S33hr2HlQd6;*q783k-#A{OZgU%bg?w&9$IakCDOU*S<;^!G{O&>MtX3_e3 z4e0@39HrAFK{dvUbY6v*~wZuAO~#XjrYZ zMdui`Pjti^P=9YKWt5yi0bXMl9;6GkQl~X3ukhx9IP%&q5c`Gxw(7F?eHk>UThMS~H5t zh|Bd+#Kl;>Kj30~&y{!%trMm5iD&*ltVQDg_$AP#$>0ApVid`m@0X*0;=A!L_*@~# zkjoec)e(sO#F|$3Qu$?a^yh=17i5|0ieK+V{SB8VF{dw4A3ed}7bJO=$6?68* zo@lIB4Y{zd9l+kwAa`%FeYWSYSA)Iq&Oc+{^1Vcy6@GE%d2g0ScQ^VjMqiwt@7$if zFY@Sya&NI3A8W*LD`|hkD_K5Y6`p+#+t)*Uv83NP5TEu55kK}%ajur$;h~%lJmQCM zPxnVA!FQg-*K(6Y>}kN4Lkxwhg#TX&j9Q6UU?u!iCjao^z)KN-48A?P!)bv4Io5B( zXQeUreBEW-p#k5gDmWRRO@==N{i8S%cWWS?Hy1Jj-(SF3lp=hed>(uZ|DeMUzOBKt zD)2q%wB)lCy5B+1yr(@!Mm~9@vc=f1Xfxea$M%NE)5xa@sE{wzAOO$D**$}?CF4lu zU3EU3bw|F#nKP+uvODYOeRWZG7a?CA{}Ez#lfp zV)%93F2vH21BM*hRzK*H%D+&N6Al{qK^u$#zg@M*k7re4O=$e4$aofckKGm7<|Wdh z5U05?=cmeu`V`{)PY1vsu%+Xd5b2u3gw?=CT>|Z(3$KGjI=uP=-ih1-ozg(|JKXPU zu6?q$=mj!!7vlKt@t0{$2OY8JcXGRCBlmyFlJ9FxFJLS#5_^6I?w#r++M=CAa_uF& z%SFN$yWkfIL|U|(XwbLPqUX_e(BZp$C+Y}41$>kE9_^3+CHGzu``jANx3sfYTZmfT z84Knuu(Qk+=7eaP1W zU*arz`zGjo=X)$R!FW_T4?5*6zAADS`1&lw$j^dY)bq8GdLPG4r8<6Qh~}$gyHoIn z`ox*<`zTMwqN{pg*HGs!4tV`E;;Yi_ND}MCnhy5*4%52Q z30;2GVd(NwisKlri1i#A1^efqpM}@##r_vC0IR!(dR(+Vo!cdY7xA4Sm$1o=m}j5v zr1!cYAIca*=$aG`WVP*Row^l?dVgHv`}&{LzuzA>WY%1h6VKjzZT9+g`!Z|<`CIyL zq~>}n_A;xYpvq942<%%ggr89uX+NB8nj)oN9Z4Q zByb9OZJ^&v*2s;`sK&EeO0iXDqa2Lc{2el`E#F+YgkwhO6aYN*JVGqxR-)ky^E|^4R zhURsJS3`b0gznQ2e&ek1G5oK#Jvp9lcb4-TW}T*PSbSP+XBp_^=UNt&(BHU*Z-25J zXM|AC2$+t_Vv!5qCl0=Sak(_3-T18Bh5a7nz6G}9eHSMZ*nNx*dVs|+G5%!zZ1X%6 zIu8;`pNCrAS*iw_O0@&PjY|dO$Tgi#@gwds7_A0y=xB0-s7`i?TIWGR?_<#pLbnN9 zp%Yvsl*cjWay8J2+zAfj!HeF7T#FaI8yRsS*dp);#a~VCm}@KW9bzU#M?EADC!Jf4 z__4^qUwn-l|Kr{Q+@TZeIXo(%H}FiX zGl#tpV%#%^d7Ks#bXv33{CRc5ST*1ps~yCe3j4_ZyIk0tY?!$JKG*wvps6eddc}}y zx8L>r`!QiI-7>&Ht?UY{~$mema zLm%Y%;<_v#R;QyNKz=YV7z&;Ec2kP^s z=Y)!WCKpb~g%iKygne|vKGJ(X1gZmU+B!>PO*m(hq_3aR_wi%U*JUAn|6h*j%k-Z$ zIvV#4F&z!;X0494^-Gff4E-VTmI($kF`_?I)j^B>JM-IYA28IaW^F*G1LZ_R5$5JddHzDWbHx{q6g}R6&@#2%Y z7$c+eRt|JlVxUzz=FNLuWwMuszPjWX`YL9jzItUi^cADO!sx#{gZ>usFfg8BPw&YY z4|mf!$Un@OL*Dan3hx>G`&d@~Wx8Iu#zOwpa?HQSXUn>&KP>-gB-%16gDm#Ie0KR# zn}^LlX@5OT-Wi;a$@$jtvEGzpKDJQL&gEJfX>5snJQsS_8sCZ_*N(-%W{%u3%84;5 zXXavz2DWDUXjg`;GhXP!Wb%JywA=P9=|39w>NA7u0p*A#dSEJxPc@u8dZ2rhA!7<> zG5_|9JHAt48i`sT!Jxz9ICTkG>1D_pPCQSD|kdecRA?NA|w8 zwC`T@jic`Y^zF&sw~qE5hx<%~VvM(#4^3zHm88ZyF3L&sVYlXE@2|d<&Ub7~=qPPb z=w3I$URs34SCNm-;_{EGA*>aRtFCUto*|8y(s*YFeB(%(Z*2I=e4qoqabzIh*p#P? z7^m+VJJ!kK*e1-tbcOz{!F7ec%Q{`5@Hy5Md2a^>pzqwQ^kvvz`M8DjJz&$fHK+Sf z1JL*E!Rf2tY$1K0$}xRYIFI>#3z$uyIR$q74KZlg&n!Az88bK!$WH5cK;AGMJYbDa zRm!!@r9PE%rNwwJ@9j(~erEU^OOL^Sf3$@E{LJ6@VUGDP?`hlL#wfoWoW9C93+a1B zj_I3yhQG+sxL73tWS|HSgM$Uzn3@9#ey_ueATv`6T< zz*6Lkl)`@+o$#N`_L;C)%`a^GY>vyObR)yp`i#M4M}O5i*-_5SvFw=XFEe~*%B2IZ zr24eTZ2zn~gFjO8m)dJzE+FTL${qIByXZ3&-0hW+!wEZBo)wJ+WXhqB?x&ab|J(xk z?3)AI14ItI8H1+U8BQ%_>o9T9K67aw{UaHDY+I9_du7PW{H*fAbhPq03+3fVj^!oq z>1)=7k<_yH+D zmyJwjE#vgl9F7Ek;P%? z8MA%NU!>?zN5wWYqr4>G{JUU<90T#a%ZBMv$ND zj}gerCXApkK3bS#j4*f{Q>SAfPk;`_e!_l5J&rj%jbxHhIp)z&w+( z(w5LA1%4F6`St%Gu@gODeX ztyY;~BfnrBk1B0B=F$E!x54W4Y^8A#{0Np*vP0$;2 ztV_)HZZ6XmV>0Yr-eaDWFKy5_dz~kvy~h$;V$fe6F8a6lnZLEkroDOJ(M)@}c5oaa z@3oHhWKxc4Z`xnzfA)sp90JQn!o9$0`ACc}r z^8J!$Zu(=M^z#yHncg~_!Z;t!K4VIkwyb6QIpZ>9$wI$j1!?iKe5ttYH(2X8nC!iw z&p$P|%#+pD$-MsRaLW9^XYO?DDe4K?*MHSt_LUb*dy0)z_VjOAE&CZ~?)uCBU_KAi z2eOdT2P4Dhu~7a&A4C457R!H1hq3ra7sCV}%g|%}Y0*y?>-VMB{=?SAGM$66KVuF< z@IMLsPr?~CQ2sBI|H*71*^pQM=Tzo@UY7DdncT}~<=FpB@ncIP<3)NWmz@`zmKQsK zz4}vDd&Ocw=hfM@{IxP6`x~!)yKCA(?9hY ze4A=#dX`WdO8%A6X9zl~5jqNa>1^)gGLw!n=<}t#&{65<=9r$+J(ir0V$UK@v(6*? za;)=Ae%ZhnZ7z6zZi43(sXx!lAM4NaxO>oI|11Ne4S`=v!LO)CWALlF{-43G`BneV z;IF>=f6S(mT-W~_0)A6|{vqSHA@I^v@Y2)-FUfp=-A9V^LiZ*22Mm1nh*?+3t3G^P zwF0^d@e0E}zusS0Dev^xReE!db(Puvc2gTIr|!(ntn<>sa?IrN4Et=y#glnR3|A^I zX2qR`KVAo&^1<^*nVpb7gggNK1)Kin*tp5}U_2mCI0g@dt>Xdm-#PX@Z230J_nKqS z_HWkFR$iH7+A{rb&Dmx6o`ls`{A8|TaV^Y;l>eHce^NHgs4*p14AgGT9N}ZKIm#DU zJjWs6yhI#sEA#KKGU2=~8iP>2l~*{=PvdaUzP!-Y>G4QIU;o^acqDrk`I%Ywla}Go{np?J>{~J%p+90VjyMtd z5=WSPS%^s+6YDImvv{3NvFQPGhM4Tj&zRyo%ubQ#OgTd`({b0S7RRK0eK|uGt|#JG z2L8Rn;`PjX++>O&FziIivSOzd4C~_la0}u{j3@QYImS*y@NW`%?uLJ}y1&g-*5-xH zOvbTGnSb-il#OG0La)iOjkD!2{k%AnL*;)5mqR6Bi5%+GhnK&dV>z_Y7Wh$bqZs%+ zH~0TpgR_*x7-i97dvyXhOAn1OoR#;o?n}lhm^~#Q8(hxG>(CfvyQSo!wge60M;IzE=&!@=X6&QBh<=sDIx}TkQuh-LwqLP;#qxfgvNrPXQ$e{1stn_6VmVDeo`W~?9+e-NODu1qOGo|7h27c`toVLo% z*3njeD#x@<;UcELS1^n_D?@(|!4ApoBf$u@nnYmSes+}F*vTD%i>EkC&xG&@*&2TtikoDW5V>DV(w_X78WbTCz9Cw$}D{()}HSzLi<&+sO84t=a!K=$q^Pe{&4P@OdxFz|yHc zEjppGfzt+Rw?3n_K#(WS7}M^66vHw$(b?>a%i8+ac_sH)0RH zk+dve^)sf%gtS`j2LGLB+Cwj8{>2_Ow>fe{7`KdZBj(S>Et~iL*|^DB{l_imdhg%1 zgUNgp15Z|Dm8H2X*7{BBWQmmKSeE***EyfGv3|D z_M4Yw@NTM4%T^{I>oVGH-cI+&4gEMJD{mY6@f7QLn>>+Y-nP(B-AY=vQa@Gxp2dD@ zACGpic))!bJlfZ8#0y@^+Rpaw$d?9cwP5iW)_!)Tr&SS`+H8}tb zlj_kN%V6H?*c5G<{*-SRoVN0*mgrZ7`sw6ao3^?2)B9sXdB-v6d(=YuUXo+_rfd(x zSjKsWk7n2xTfUS2r6J$a;PfX;ETn&JF6n>5H4@jjihLY*RIP3*R|B2pVigArfL9G( zwRqLxRgYKY9wPd;VNbZp9dm8%^|>S5^+e~iT^>$4x15VbqrKV^chKiv(i^_Z?T9s% zk??YtgRhxQ)Quss|J3q-@ilJzFOciIUwJ>)b9hwDRZ7BZ_Trg1hrw|Uk?bJXD1@lh z4P(`SYpiwz3x=*rTu~`Ah$~$?x@_n{r!@=Vt3tlP*=VpZjOJ zR%D(7->zk`w*SlETXP?lL$6;wXrC_joTC|i@}7@OxQy|Neo9umEVFpk zRo2;MWos_&GHj4d-}JbZLEnE3PG99M3+a1Tj_GUG1I&KQ(`^|y=VbSn@j>eUF&Ve0 z{@(&tFCf?T|AvtJnz&1EF2iSEi3t(nbCFVC)QLSv!~f5V+}HG+XPup&7;8z+Gkcai z%7=B0(KYR+wpM;K$GNn&Zttht$=bnnJ9)zr-Ogl2KW8{}yEXB6+)KEY<@a@49FHG@ zZkSSL3!_IIi{vGQ&r zI?q8IN9OtJAg@+)yjY7ppqlN3ukLWD)e#3D2s+dNVlx4JUbP)@peGRrVtYeQ>|XpH#~Bljea=AKHG>3GV~u;azE_y4HS1yF)434MSb))Sll0 zrb7qJ6|=_o#2MHXEFaEevF~Z?@qT)otQcI6liypS$C(b)tA<05Tf>96Y_V(&VP7Lr(}UqOz00((!PZgvLtgA_Bx`zXrF$BBQ)(Zgi|M2*bG#2R z1Ue=5pA0;`vp=1Po)>gV-+x-m_Mg6C$^H|2mVAww?(#)BrhA|5TfxpFJeOhnY#Y+g zhLA&9ZHVCmTxgvQ(U%Q}4N3VCEKfNlbw>p)@ z`|3l&B<3Z$GSj&SJ z$_Z+mr-B$+KgOcKS_&(^jvxgtjvEWtAIj+746R6QeEp^5C>39_whU zUzTIq4k6B-sBQ13eyo0>Db8;2-<-UQv#+3WcBRLXI6Hfm-kplG>ui7Jm%|ok-^%jY zuFJp^wmvuO^V0^GdHreYWL_DYW0@a9>?(1-g2}vs*iTvwOeXVkfhl&ycvfjua~r!F zg03RCqZa-&8#n3cudDQ20x!=2|rI|`^7g8D?cw_{G55l#LV-A^~uET{qy+;+u!S^&(P^P%#pOe zHw2vL2hQ_zEv3{aRW3K-JcC}1d4=;7=8qPoaGs&BUe7Vk>(6WHwaE5S-jb)Kcxxoo zB5Pza^J<1}wJ>%Lo@`|C|DzV;RSUq4Y!Mhr!2a=)?c{kjH4& z^DCGf{W61RZG4-aUtstr^N)cCwt%jVL|sIu4>cA=vL1D#6*nK6=1@bE9P7CCxI1;U zL*%y88qp4QPQ~c8pEBL5y!0XSsm+7^cu@XWRvu)! zg;^aNlX6PW3e zwi)#t77x^Jjr=txN%M-12Db9E%^Ck6-SbBl7W7@w1K zhl|f!rqYaGmu2wj5cXSe4~Z9f;Y?2{KR4~SFdZ!K&Wrt)^t1Mjbk9XzXh{wr zdzP{wwSTjM>61_9c>gBvW#5bqm7iqAhD`32ORST7d3BDlVcyfWzg}1NAA`Pime9A9 z1#6Vk#U=#USiXBn9hnZxs{J(rLEE4W*u$G+c~DKh4Bo6+LUxpN`BCeXIPupZ`LjH zZ?p0r(=8-mA^+{pG5^_iBe|EsbceEiaM~(gwT`y(139Lx856R&GMQv!!oe`1a`!Rl zZ%y4l!=Jq^$Mny8**3*14EcU>aQe#6SR&tq#VfvP(|4F~p@Hc?KR9i5-a6VUpUE+8 zQ@XolE87qJysfvh=xqaYePnRjlRsNWd;P3j(*A_+=2+t@^5HIfwYsTX4Rn@^RU8om zc-7!li&q_9^>|h8!QE`zu`rHxR?WS|uE)OT2Th7Iz(OzwdJLq#S=?&lI zcEp;>NO-x+!Pm?t>c$Y+e`@)^_!>9<7s&P9ue=}YIXo)nDkb4Hd+|)ufLk zbn9eT`JWuiuua=!oWZ~=TLz~s`GR${)z{~kwkf%0d0T$UoAP5BvYqPF(#Y(0ENlA; z)*jBl+?+wn zyw??`xP_rFesv6eQD%w0=zfplf-7>YFNTn3(TF??kX9>;jZyiWDbK>d zFMm^Wm}ilwDY91#jIKrgcdb~tvKHs_&JgRTO%dyYQ^eX!r-(IIOc4V&OhNk;v`-QJ zty9GMZIffoF2c_7H4DU7AmBV~8K;I^9N!S&)XsA_qdxNv;wy7;vDHnSbg&ckno*y* zven7QagTQVNy2yjnW&xbk*t0FwC~;MyBK}fqwn_Yed}8teEhTMI}3fULf`LZ?^{Rv zjzwQ5`c|RuIobQxw&F}LH^Ju$@-e}S{V0~tx16u$CWJl01pGZktqz{TS4AdZZ5(3d zHV0oF!Dk((@B!{rwKjOFScT66+ZLtD=Cuv!Gl=9{{+&S)te@Ma;cc7L` z#Mwf|P@iBMU%lJ8E2=25X2BCK5X!}x2>jklIk7&-`2?@PYR<42pnOrR5WZ=^>lEuI zaeUnzXKdaoZl;Ule6F%mX-VASyS?-1E}{3RZ)wk4yLQ~-jx8H^*{;y1h;MQ9`_zVr z0r=2WuM+K+C?`c%gO=k6-yjgRp&GQEPEa?SXa^GYw#T8*{Jli`<_;po|4L$^o?c&} zhe(3JX+6_9=|~$17Zf-pK@Lg_H{tPP7>DRS>Ts>c%E>iS2_~HXRA1AA)Y6! zl{KN7*M!G$ej0WyiuGCHr@Hj4{S$;E@aG-ARi_cH=VP4IgXfnE^|9MNL8Ry{96vdN zxpxqsrx5=8>F@apO9@}w!SPcf9M+%Xt2o31aPF@<2wM>C^&Jv8)cAQXT;{6r351^Q z7P0Q7kV(*4@wOQ9IFZsKhR+RpC|lC$fiWHQVa-8*UaV;aA7tJe-#S68+BQL~>;PZv znSf`Vf@e8VPpByI{BpJJ62i9?5a|%s))goGQ)NVb%0>961K`OS1a-}cbj@MnEB7!N z(hj;f?chNo9iG93$GV*{mrNwr^F&&-lSuA3QD=`Q{Kbf4Ts)cZvuBc6%Mzl!=H_De zcvy{e>6-BzeV%mVOfJ^cK=wP_?`y7ovbN|2GIQ50Zl8PnWm?lgN9_5X+^*T5BC#b) zzOOaCfU!WK-*W9Gyvs$x7bAue5b*mmIL)QY(jtt-bw-1>nOu!}X2)b7$DKj-aIB}NL@e5Il#YG>SmC{y3qOtLh9WI~CIkOPc@43t z-=crFSUHAwzqqfWsz3x{V0)Bq>41d9K{HngMvPJG@*>u8ns8%KcleIC#4M8AW6zTr^f z*?S=)Zq8TM#HsC1R!CPvHmHrMY4t#77x-M9r-e{FM(zUED4=u-Pu%2GH!ZH<~z3ugYXYgInea1NOVVp=;L&wd~!3T$WwfW$E`h5Q;k68H##?)Ns zn;#-#(WZjyN!Mwp4^e>n5Cw_)5Cw_)5Cy0YQIMz)fic{TXQ4iX!A}{r|4S$EZOzaN zyJ@V`DF*PW!K;>Y^6k4vtL@FB5%YA4^>|fob5ffMo8t@@xW@8r-Z5(1oH2ZR^BA># z_ZWVo*Qairc*NQpJnH>kwC%1?*ELu0 zTjo@VHE0WJsa=xy0HImsqpMh4u=xSD?KD z?G<7G?Nw;6M7w{F3(qK4Cr7;6+0eJU=(zCgQ{66ga?l%II-Zku{hesL#=|ZVPMyqo zrJ3}-o0Hs!<#4&%sZQ?jgqOa6?;ax3&KF>#&@T}2NHd{hcLGa6FTw^m)IbpZz?VA_ zJKeF<=vU2oq#5Ab9c}2>F2|s&s62$7yXar=c%0({Q9LgM+bIA~VBB>WckLd`?Nt}r z3EE*(L$GfGV(w_KLVG3J{jDzgteC*TmT|6@6)bKu9$397R?yw+!z)&Zzj(!p@E5OG zG5+Ee9s?OWGgzRW$rbQ*9R+G#q<}voSg4-C6~bN@s(N$G(x)3H-}RpWQ7@p}RM zZu^{xVlCP!J?lGMzEx#h?D<2`>l}C=uNu5+@v6hC9}KOzt2~51!@g`zY^n^jCoJy3V~Y+`9P#livE;H z=kDMr{?VcW_`Z#k9>z=k68JgBX`WNT`=2M_#Y;Kup{1O3$3KZC{Q&&(CTM&k2|KUh zGzqUeo&hg>1@`z4M7pyRpMQpvW_*SN)^SQMp3`Pr4cT~+NDq(av_lk6{1({bWuiR{ zdGvrUXTA=6f!Ax0sU?5IZ@+-w{wk5Q*CBIPlJKn#U|3^bY~FOfn7fb8m;R5xyg0|9 zR(c)$S-Tx-eX~P);(ik2OE4A4&dyQb9pbdi_mK8nrp7-T8_vJvxeu%{ZNChZ-=qQ-acUe2-tPa*r4yWZCXO@=-UO40je z;HIGDS|m$LMg=wZXM)nwuLrfI{~3hsfRFHqL#)~jpWyfK3Epsswf}I4bzWYqui&k) zMKtE4R!1j>mkWNi4L(l$EE0=XGyEQ2CY;L$;uFp3)v>Yi}t^GR!Z(2{`TS7{w&j5l*e+35^?QwXzxHfusm=+bRH46pnWsi+tGeM+MzR`D=^n)=!xA__cLD%Isogu$ANav z&?U{l3cERA1gtxJvO2WaqrKnQ$PHnKP@`6N@E8-1-{kqp!20#Tt95bsVS9ly4q!j9 z0~k0$^{@l&_${A*HM_9~*-XC+eajJE z#M~+)M4K5Wz9nwRI&}IjVCQ_X0WJO01tv+i&~G3=5&YG#zuVjO7E1zNy1c)J`4dRzf| zOrZ3j_%kL5%YCjc2lK`DQF_Ur@(Ejkb+Pu9Rh(FbIR&byZ&jk5|2HoATl<%P_8-#Y zpM{T7?9rB9E8`WEJfD}fvtK7Zt(-{Txr|69e+x?CujB6>K~4Q#P2kMnD9pJO>!%RkGZlDW;DDb1dFzpZ?`5e8&v(5Jc?-*$`(?=6 zPh`z=VG#38$#9Iy?*KB~CzFuJ0OT@5CJlU#_=CS=6kin?r2=aM-;YwKbd>P5krK5w zSi+ydm8fTQ6!XB{YF)6HKa(p~&+MT4*QFHS&x}$$U%h-6{o53}9d-frjwrU5|CGS` zx9*~tze%_)Cg`YH$#DNZA7lk~&e5{=bc$pD-~+v4pquetFBw*UpsKZC$o@cp_B{@N zpoaDzqCZee`yPisP}d6F&3T~D3R=2*!N-KwF@Zhr=MQ+S^9NRN@CQ8b2RsRXz?1L? zJn#oR34Z`%NcaPWe2q89DfRF3!{HB9URosjuPB1wSkTWOsJpa4ti7T@thoUgx}$JN z{y^29!V&5Z0LyKIZ_@#sx5vYa!6INiFZ=@$fZ4uNvUI{NxTV?5bC-1eUBx$C4WjEV=k0qG=DM zVacNjEO|Y!B>c<)vE(xeEcqreV@c!l{jN8UYE#h$EGhBV%Mu?8YDQ&98VmWCwh%!TbwY{J3mH#*f+9NO4}pj}3bKD{K7Nz$!0A7Jw)`)z-~ z_6JV>d=lBnC()Td@Wo;A2O60_FmFWq18i*MlX>M281(pPR)0We@yi<9AF$jXczh6l z;Aa{Bz>btZ!2ARKjbZf%{vGm341eIk5tmP5$k#h&f56Tsv3P&L&L`>1FV9UrNh8ZA znFd^p^Bf6mNaMuxg*CwVC?pQP{e{jQggPlC4ee3Dzgf_##1r{$9zk+s*1 z++=CVTe5Z`@@&sLok%wwK@RszvUJ@iaV}yf%O_#E$)1Aa%O|0^$t<7bVI#IIB=bqW zEz`3G$eA{BlRY<$(0r1qX;@N$y&8sm5(BSo8Be%UcAH3KhD?u;}u5!@m7|940|;UcyTV(oup($;zc$#*_l^((V$09R=mh; zor1Gf_F1+QI?FZ?UhHCcabXHCHZr_;eFk1!H>`N^-y#2aE5nOdkGOmTCPVUr=J=wW ze{3;cwCh*&#TRo^zhW+nFTR;~`37v>yRQ`UC$C`38nR&^F@Y$A)~pY4!)~__4+QfSqs9=MUs2-#}*mK&>4=&e!nwgeI)xYKviNaf z3NNzv`h_-LJkETBwJd(@7;$)!$&h@pjTduzUd_gf!-E%>*myBt@#0nkFRozu2C!Gd zfETB-d;|B0#EWcf^1t#5FBMTcu_X+qQdYZ?A0*fML)xfSB*%# z$i^mrF|Y8VL61*l#fu7yFV3*>qUCt;*$liGPvJ#|AN7COc=3er;$tHYFESaD9X4LH z@#0C17yS$`25r2UuXwRB9WTOO4I5tU7{PdPS03WUjmN-?F&i&hh!@wg_#*04CGOvv z%HoTaDZI$u>zCVj@i_6K!s3e+BMvVvpgx!URU0qbc=6u=FWzV4#eBt!egiKqVDUxR zt6{*4r7XTUaYW)pHa2-|Ug1T99zs^U$ZVa`ZR17D@nSTE7yS$`;x6UHeXRyw)NH(X zoOp2o!;6bXC|-Qb#)~#yJgM!d?vnUL*`J-aI1l zA{(20Ltf!UgC19A#fyz>Kl)QPUbGM|u3+)SKV{&>Kc?^^!;gBYjTcV{FaB=C;YB7x za)pf-ZM=9=<3+;o;^%F=n4fsj=k7M*iw0hVy&5*W_~Ho0i@(l8y!i8D;Kj{0UbGM| zDhw}Pn8J&tEWY@W6kcTS^>5mE@i_5fBa1Ii9dUSZF58b@WaC8}Fa8_g#T~qTe~+A> z_xBK^Hsf3tUxd9H2E5q)F0IEteMI6#Ha7W;yuynHJxd3w^+YT z@HGoWZHrdKoG#*X3WSf3E8;taBDJ%+h<|E&k#Ag-Nb}<)w%Wz{#xLQtt6w0}fp#JW zTG4kN`i9VVKKd@q-nWMKU4_0;^ld}m9ohTV(!P7qH;%ps(6=XRU%qo(vDzsVi*@un z)y2NDCL&$^JW)HR7yHHu9KRtxTHO#G9b4VR(J|9`NUyy{#QIhe_P9&<&B7RdV`vQD z79E4WWBB%vN8KoR@EwoZ9`{Hd7bh*dn3Fy>fzygMa^c0lB+}!*B>YCf$FB?d(ASIa zc%>x=iFC&XqDe=IR&pZ=FMgS5+RH?3kNWUjAKwA4_@Z9lBJ^VD`+oKb-!tZdBb{&zHUrV%ePvx}# zM8B_>bJCJO5v}P3qU}0FB==#WExVkPe)b0<6<))I3+D6M*$)s&n$KNN2(LaEs=$0J z)St#H_@72A_y-(QWC!PN{6q&Lt@LpqqpO4v75wh z6Nqm){ubb~Lhx{4cSTI_mih$F;d6B$uEG3)CUp+p3te3JzD?NBNse{gdcucBJ49|f!Tn6Q`zPX9hdwc3C7y9N@wvK53)69Omq^ax z#LByg=&Zt+vAWPH1FH!sz zUXZ1x5U6)j2DUa&<5Z&cooN!$jTab*LNWI5Y>w%3q7;@|>pf zc;-T0x&W_|ry)m>p(pS^m8Fs>FWvELPP^b`PP#D4YbCGXvllt(;Sx^zIod{z!guNC zFLK&;eCEOTJb31Xc((crPU7F?q)|V??|+AA7k-EETbdo}y4?5*ZAwP&R)pPWXv~Aq>}sato?Y8*PXxN zq&p^J-c*;2g6=qq`5ooLWge$?>*Yk-i8c06`n^uHL(o<8!4pgIJJUhCCF{_R-&%;z zu33lm{u@4jiqo35fCkTV(!%)!_TJ%h_ucm$qyIbb@^tq?CVFE+cQ0QZ;Z?DNmxOlE z33|2(V{C#PICtXxPNIsOldlgtDJ``fml4hJ1krB&JmxTl({_yE)S3v|JDi#adhKE8 z!aJVgq>>V>!%@)qC{gP8}st< z#+>Q=*!(eXALcBs-Q*DO-|Z0Bf6XDb|K1^Pe8eGce#0R?_z#D;#misc{nbbNWWOsR z`&|jyCqKbm%bq^j7nb{6T@D|O#Txi&nQwsm@l=0@hlg#4Uh?o$IFCA|!_C)5+-hym z&7Z-!)iXL=d|kw))&*VsnVd^KvqJzT@Lr=3VqgX6o_#FV^wku0Fy4Q~#tt@iu(3lL zc9=@BgY2*zJNTJ@^vM&(4m$IP|Ks?vgKS_2KgACEXKn0YV+R{MoMhO6$-aC_R_wrZ zi|)!Tc935(V+Z*UHg>SFgN+^1u!Ems2jvI3!4CS<9}GLlFC0I1n9H%a1H%qvkBuE{ z>|kSulMy>8ErVkRqUH=cbkVqj^0^dtFy7NU0PH;rd(Xn&vq_Bk?tFO(lgR+eVF%?= z8#~z8!Nv|JBX%H>tk_{6^DDlQGwiUI|kRD z8#|<7hkZ2epfu(NJLsD~7a;?V8l7n$!$C=zp{vI~ejk`Gm29p+BY{ zKXzDQ#2va=zQb8IcCfL7jU7%#?4b7yjveGzbBi7H9cJvHZ@0079e1$f4ry_RE|%}` zh1_5VdEE!Y4*Is^#|}ywc2FL$v4f2rZ0vB7VTb?E-nYj`QJwvtvu9^7NeGbPmJlFh zlFcT>hz=06tq5ASo;z`K5Du{%!+q7zDswo{~y<{JM`-g{klU>-9g#*rRxs%`X1A3-NEJ`RhjD! z#P(SvtayjAe%+y8cj(t0zK*(s^4=Hg4vD`WUEM)>z^OYZzwg%_`gMnX-JzTAkg(z% zW*!~gA@P6vraLJ2X0AJo@1{GDRsFg{zwXelJABP_hcm2wg`cF=9UipyCC)u+y2BM# zyhBBo?qL5f@7Eprb%%c4p{MSU`16;pJJ{=cM6Y!Rn}38d*By#%pT&b#yhBmH?$ED0 z^y>~^N8KT@>x*><<%OfGJ0w;+b%#V#zwXelJM`-g-E@Zst$2r1kB;u3Ebp7{khmvv z-9fSU9W31;_S=5lp&#RP+i&6!zW7)SWrHa6XOhZ6b3ADaVOJ zOG)#^rx86a%#(!;gp~?p4iQLo{QHC{Lt~=AW4aa6Xz{t&^U)y!+9l4`N?SdmZxH%6 z@eY%))#%^1zeBp)B+=16v}yI|{GD-uG(KG>paEAcgTe<$K5$ z`#s8OTIm$_#qXKIobQR%S?{Une2>~JRi=AS?3pAy)9@al=X-Q7f0l%)&_~1|hsWCq z4{#GC(%q{_5}rrr4vIz6!1Ko>Jdup>may(pyRHY`mZisA?2#lqCuW2<>pkSE9(dE! z^vvl z%*OP1i~TkUPf_N0Bj0!8P5m|ITS02Pk=v8-6l9LK*qKhenfIs1TWm=Z9x-#gk?%V3 zraq7!Z)9N-o&lNTEv7p0X8r;5&7T@?u?0zZe3|2oob1G#x;7==##{F0^+|Y0=6H)u zcH+%kmlAK*dt&q2iSUceai$>tzWW+g@0&}Wzv^>1v)-Z1ZO;{c-V1zH_Q2QUUx2U6 z+H-`TW{#^wX%AdIkseox3){1VOESk*Y)lVa{c$cCbU|ud#eUQt5YEpWS4w^lTs@N> zSIW8VKH&$M@{zOg>T(!+5XPlNASBV+z9s%+{13kl* zFFq%(%;(eNDs~Fi$Mno`rC54^^qG$FLV8>&-@^J(GRGD9#EC2O#kpkZH&Ww@RAYTW z=4Xnl#79nCsoT=yDls1GgUfsO`j}0RfAyGGFQ>;2Z}9j`dNPIj&+aIdNrf0lylS8dtHw zSRcbO$CdJ24_y5wJ+72&tdHExaYZ)uz}0WlododvY`jAUQLfHoVYUYPLHb?xBV~599PP3ow!o(nM)EsPK_(& zuhCrLN15Y_+};CM52eQyc`=$JoSQkW5=(mE>f!XbN<16Q63)mRSFwdXaJ7CeA>T=j zt5_S>$Elg)O3`}Y>e=+TQusXpQ!>KUgVz4X4Lxx6=k&NDk7IqDlo771cO>Tbz|~*o z5@m8~TqO*wkI5O~%6doa3Ma12C)499_Is?4<1@#V@)IYn)I@q*DQmDkDl*3vxyXqt zvjzOBG&Qcs3apQk%yE_Yu@hJ7-_zqN@f)m<(V62aHp_`C^R@K2iY>?b7?C-yl$lOk zsc(Q^<)y}zvKZ?lFLPXx?>KQ~u1t?B(t!1mlR2&uQ=GU`o6_SdQG@k?eSi#X9D9A7 zy_WT|4= zWGOuM1Sxdf2~tVq1gUuD2~yDoCrDLSR-?Qc<<(MnMYR-qsG6;g=WC(5QBu(g(q8MU zVr5fD>9?Ot4BvL_18>ECZVdaCLICwW*pnS36|aB|W9Cbt6{K3AR1}5|k}CM`j>Fg| zeqSnC;i=wmydst}=Y0q5~V(NCPsT(Pqx|?cK z4^VMvoX8h%AmT6|)o-t(@~$@gUyXg@6<($`qHaCvu0h@A^mU7P-C3wR4Rz@VSOB#Ou0*uY}h< zGJG1~O5z#yHxm7}co&TF&L$#--yp1_{_}JxTH!-JyK>P-G2bJ}{q4kJR!YmkzjH)C ztze~oK7Y%l$`!CVfRj)?(L%ssnV(8k4;4y9Eu*F4t)r!qH%7B#BI7WByqK3>R@#C+ zE&=au@k$k2y;9{HUi)1U);Rv(Jn!x>QK%WBTklW!8e>+xMKvpLITrQuL|@Eh4R%k>7#;5t zeVy+i$4SLw%h1+(56VNy_Wa%Gvu2F_j@VQ9-}%0^fay5iKlh770~-R64H)Af67_BH z>Ov8T4%vXUK_T}9_*M3GNJSe+bh*HBe0-zDBa}SI8o{a)5-4zfJPXxe&#mS7-7y~l zZ)NGq@LYEEdk1_H0+sE43HD(DZ=K+gG$9- z8bIXzaqt=VfHn>z+D0E?n?giun?%In^+cY7^)(`3@d0C(j~csn5&1xfMu+&lx=$gp z?`0y-e}u?>lW5b16E@vXwCQDpO{*q)V?8l;`>B3MfTAxd&l!%-0U}>hM)kU>q}}5` zWcXfJjQQJ%QFlAjUw(udb+6*x@ISpgiO6+r#Nd7Vwh`v@k?3@vhlK>ZFGLMrLXqd= z-M-tIcsL9!jMkKeL?8xhZ5PWAe>4r5<4kqE{EADOfO@Cwf>TId!c`eOr( z_)d?J1%5Yw7{<}2NF{#*Z(Z~uaE3V<8<50T7AyTTXf+f*u-}7kX5A|m{D8=dW>Bdp z!o+yiKB*YId0~)f=0eKaeoeKu$0*yljxzHds%`w3vQ2-b+NRA(-nP%i>m3c$*d3tq z&NUXkjZ3!M>-)AiHFlcB*tre(2%?{S^l<|Ez{G944EjGlDc_GntM#a&KsT}f2ZP@fmGKq&h~bEp5bFA#-$>)=2>Gs@Zra2 zIOj_RQss&Q@FmWl3Z>8+g;L4PLaE||LMePDzA?YUnCDenG1oEAi{Ge_ie^^eT@_Nv zl@*+RSQnngD+rg(5qAHnd&Mk5^joqB`+e44{hZq<`X}-)@5efb@b?j8QIkjX-tsX6 znq}c?xLg?ynvBs(=@{^|(co#LKR3p* z$Y`yMj%MMOQChfW6y^uUi18I;d_{x(x`zg&yYr}YkB3UDJ|xoWH;J_N1tQ)1G?DIq zm`D%Y!*R^{BA037>~)^_lh$WYlyiqG_p%OWe%)^}_EX1|mOZ z$4(^UAS}5__#QwOk2}zVJO*MSm5L`)t8Qn!gjFy0N7xVn9yicg=W{lb-QN?iVZ9ti zt}95z_!KQC&4`oGx zHQ#l@Yrf}%SN&Ip@P>NQWz-0OtbJm7>^-Jc=6SsB4=k8j=);kD|;e(n<9E7HTOe(Z!-J>-Pf{3Jto zKkWs)m$-yC>Jr`y(!*>1+X*k?;hg-rBSU!q*$a4QxrFy@m++pM9$wYsgjW@u@R}?` zc>mT5c&EFBS9J;RDe2)gp$|IbZ_o*^8psgd=XwF}2`=HCETtgo$#u;PI%3n z4B>sM7w}fNgtyEkyrt>kH3vH3HS?VCs)I9x_rYGkJJKb*BV58eEIqvH5GTCqa3{Rx z&S(F=HUT*4c439mmryygfeyyi$JylO#)@ZQ=Bc>nDZ-cMY@doVq`>L@3?YLOFO zb99FAYQ2E>J(uvl>k{5~(!*B;XNxoyyj_6 zc+Htkc-1p9g!k{gfOm#Vc&ECAcS?GA)w7)Ns^>c4HP6lv-oNw$-Vyk^u1uX=NEjUBdfu zdU(ytobZ}Ib;7IupA6xx?FGE=yM*_jF5&%0dU(~#o$#txI^i|vx`uav}aY78pcdu%JWK{6r5h63u0VJ@9R!J>Wrb=)n&8 zz2_(|Z};RL){3VRCi$$`Jdq)m^=40wSdVrd5r=_gV)&mSdVPI|zTm@-=pv7Yt(`{L zN)Fm4{T2YID_!dC}O%dNB zAil+m_#UrT5%D6v$BXzL#z0@h_b|lwFvRzGFfV*O{zdorJkeY~Vl(HHC<%BiIx^6* z&O_$zIqw5j)&@M(5jomU#QFmr(HwTX=&K`oT^$kGc+?s5K99{o-H&A7eB?R7bI?|1 z2NcBF6RixfqPvm1W{CfIk$u#`%iD*r!`6GOcZ_*g_hW7}fChB}iN2Kw8UzqKhOymo zJTU@@z09j7vUV=uz5uwNOytFv5HWW#;J<(vi!W64#fv+DQ;)H8C$-;ypo5RkqBZLA z^7gD@@8~ZcPeiYuL@&CAh_#^ou^8X6h<&}@Kaj)F9`NsCQUvj*FMgsUmQl>c7~~q5UZZ)IaCHH?p$tVM|--$LaR|G^CQ3)H^~v8(SeIp-HdKJmL$ zHc)QhKkCWs6l$;^QR6X<%1oxlq9~Q0K)viJmF~V8@pS8{7+i?=)ROkBg&(qtAkoTa z5M%r&%((euX2c4KobwMR4=BWY@a&eesPXs>`290#XlK!A?MnP#NwxdDn2%G4anlXx z{|US+N{w5hq`mHjz48+`aC+?(y?`$WIC zH>eSmseBXOpYsho`zc^U`D6Hxde%GG_4uEJZQ&_Ye*8KjXPxpn*rHc>{cIdytKhJG z3fKUP1>3t8Y%;^M0l<&(Ghzh4M~#Kok!bBY{9osU?QsqpaC*ySINR~9ee&bqLX75^ zy>j~u8YL_s4g_7j{?{}K{7Rcov_G5zyfD!6bQ_kZFmCT#H0s?;<&*bfoHA&j0rvx6 z(U;_6zTorJ7}CCA;44h>5>1+dc`p)uf{6ZfVqA0;=HW${n^&W5E#h&PbhI~k4*|d1 z#eoDd#>fe@=e3vHiGK^$0|ie(%x^o^((VqQn5%*8gW zJ=CvD*5BR{&EoazP`?iKtu@yS*jh!bSM=c#>o<1T>-Mz`Sl^#YA@KbY@cm-&{i3np z^T&bDN5JQ2g3n(7K7S=pK}j>uGn7C+Bc788>wvEX5wUxXdp<-wAvpyx{KI%WpHwmy zv41Np{x1p>9^)LW&Z zR$~A5-6|Eg0%!2gguLMC_=K%kL@#)?7rfdFUhM_1W~>6dxdOa-9C-6Mi#H2%tn*Jc zEgEfI{6mZhv{9)2Kk)=xZ4S~_#|QBpP;i`aOExFcNLRIKtD27RFhG!V&*w zVVqqE-T7DArFeDk@nxtKBTSn;Wzj^#;eaiIFQfr=;sN%688B+wsqA}+$S2nk zqwX!7jrf2?Yv&XBDbCk~AnFGV?_pxpzenWt+o=H=60L2e^7>ZF9*76E2h5;czZ-lG zvB>prQDc20F|NLg$O|EtwDZvKN7NYj4mB=Zj&?Vq-y4bHISaDuLX_h-FaHRiD1JAL zrbccqaQYlI8ZZwUaE?LVf#26+jer(>&Xj-_A<(J{aD``rb{FtD1wJ%bhz3Uc4Pz7L z&uFw|k?4>>E_6IU<9Hq78v*(jfW8HwZvp6A0Q!ShY{fcy1GxGCIn~U3l;@*7ALTf! zhjN_d1O4&-54e2J)rAMSenj|MLJT`Iy_aw!epG$Xx>faz}pJO@6pO4sJ9)@u+|>g zZr6i;Cs*Sv%_D87w^8Bq9`X3zsCNhd_Glr@kuuB?E*ru=@HoIw2^cCq0GyPf9OuX| zN1#iwkPo~B)Cj{0ejExp@eiAQ^LQe$Fi}hi{ zhkjSeRLJ#`rPIQkHVu{GvUZB2YATdNL*{PIA4c_6nTI|P?QhR)~JN7g$}zm zJ_IrhF~o0pj7tuJzYk{7I$t5mDat9vWbdb3dJsG^klb$}kO>qr0iR-giuea|*OI@G zwUECW%2`!LkBO}hWEv| zE;~%;GQ`p?Awvl9p}*nLET5O#H~1|9?~+~%TPKdXaUah6^0U&3Y5Kf<14Z9>oJTgj ztZB*+t;svY*x3Y|!V7$ZK21|bx7P`u=*SU^cVRAEVZC1~YVk41C9Na^c}BbB8FCk( zd_7r7R&hP@-__P0Uem9e`FEZ98;+w!`z}4M&;Ae5<&|%Iy<}T#e7`Q=ugm|>*5wIw z_oJbYLl^JbL+Azn`u{=~S7v?9_|MlTtsn z?tDVtbxQYQ-!Mz6tjU6(I!g+V&4wR4TPlg*Oy10Fspx`i?5_q<9z=Oi3a<$2UhF%C z+5+OR5NXE#JnWezJf{xdM-vx9|A##=hhU$zsW!;>uaN&N*f^fs0;H5RwFX3CTZcGt zD2e{o+Vl0WCT~zHHIY+;kmw@#Do1dCiGuws==UU1!b&#})Jhi)ou!-9#gzpI&8}WZSzL7`9sNRE|I#n zt>Lj{u(!N``+V4$t8Cv!iI>Aa1oowmmBAJ&rG70G@w4!Zk?>z4@5sWD81G0q;HUDU zX;l8!C-CX5g|G4*BLDFnZkM8Ni=UMR3z;;d(8^7OTte~&;K#R`M7`KQorwL$Fb!zM zk$@&GEM!%i3uT7A+xp$an1uao|BKkOMsAx&@Q%e#V~_V*B4fYT2waZmv*FL2&Hc`M zm7T@XM~n^KAHO*W!5r z^2lr;?Sq6pHh$nkvTR4Pl$ByXv$V#Sq&?3S=C|+wxU^!xSB7zy(Etmz1hi010CuTg z^e@HSc?-5{EAR+EQTQe7`&vGtY}k|8uqU%&PiDhMl*KA)vb2gw7JNim+PIb=!#vk2 zBSCfy4PtHN@cmQngA?)5{rJX5_u#{0GB96d;a==>tJH`;MhwJNL~AEvFB~8CV`3Z+ zpK(JWKC^+VJE-w6KI{-Nnl&odzl(W!05rIU8rAstUM2FAmr%KG3uw~@zv;PDKIvQ< zEzHf50}Q`G6KxYU_@4T;kkfC&=hA@R#}>kH4c5asg;d3ZkC`;bCA(MOFR%QE~9GNgJ@XpT-&t zVH|%c{D^0PH-k5Pcp+(D>e*whedOtsim~?LmzP3s@cl~59|oR__$UfKFqj^3?f(}0 zeSGbEeZ$hO{q+1d2>u(?O2A*sX%PH3fVGgtd2APt7_nhcGtYsPKn^5XB6kDJO@D69b8%|bSR%fqQ5bD zo+c{~EXu9?uhEzQ8bbeBY~mYxx_6k!+o)oEd>@y$v+tj3AL2XIz3uSm-i|rsnSW`e zDq?+j4#_xhY(jS6clUP?hQ3e-v4@>?be~|~2Znv&-2{8vrBkTmU88--!!^axkNrNz z&no>5F*n6hNlh_)l*LlfSP3yVW2MT-Sj60nmBJT{l|omJMLEu8FB>Zrtr&~Ecw@Mp z%Joq_8*r(^kQdKK+0+nn98O4|tCiJC9&FY1<{?u7Jpi&j8y=D9>U|AXFi1<(7foXARP z9?!d69goGp=R~XpQO^RSF)84uw$2_q zA3WTPSlwX~kCO}^2VQX{MZRG{kKa5K;I+pzEbX5{!47Y#kD899E%+V~A(P@$bM2FCSqqyFCQxJFIn>}e3>O8xvM@d(?^}oGs-43S`3bvn7{)*DFg}K!CfwGQ!_W{)nIZg< zuN%s9Ha9+R#p=Ii=P-mFbK5BBwLiA=7ZwPU^qal|`EWhr3^<=b{8JzsvVY889&@FQ z1Ai(9e?nd~27U{@l(EuCo~Fh-#QliB4GMdsgM5WNMvygaMhq0zs&7Lv>K()5BS9Mh z^vFXSXO7g+3QoT~@S;4aXltG*)QFIKR-V+x@zyy^4v>{E`^S+r-4 z)aqu?+CTg(=#CzqE46tV@;cYo-(b`sA99=T2su;Fg=RFNzOIKY34TuTzk|PPp2*|ts#d@+ zhdE8GyrRF;g%+$$%Qh!A+_5#Vg9Wt9v)d)E>{kCboS$fzzg%uet2YOvwd(@Xy^jSj zPw~7Z4?IMKToa}H@%(|uki&9wmUPcw@%aXoYQF=1@jR7c_iEW%EmMJ`b?aH z@|U5zAfIOqatAL%9?!AJPjOtiR1zu29!9xTbU``xFv?JlJQd5zu&&Br1C@z9zCMV# z#AO7xN4m?1sVAhD5y&&m)W0I$ax>=NJD86jr{~XB{_$UrnTx^mU7Pzu!k) ztlz1Zq3(6*>stB8k-t_AqHa0ro{+vS@{fbA`Pg${dc0FckR70DKJ*sMMOpxw~-Z-H*U)x#qVeP z*C2*)8TP#(Bl()QWF)B(b9fvVWMt)WRJ;H4GE(m$BlT`FQs*)<8KWlu0x~O(*hh6J zXfJ^FrI@>^^Zd$OMyj@q)H`M5-ixWRcNJu$7cz3GBJW!To^?(N8M(K^*n1nwRLDrY zQ@C3(go(_ECuJmuEy35I^0O`(ITSK--p_0qIYKx?%=s?bFM^D$fs904U4tznbuJ@e z^Rdbn$jBOsc?CI1vG=LK4vXY>%1JQ`a(k-@}BpX8Dzf(aA>?`nj9SbIN zi~o?*N5^xUM#{V0X@vcyU0hE=|4b@cQGj{Rz`H!q$?g4xsud%!r#C{XXc-}ew{lt+ zpfBu&Aji9vGgUc9D?JtMvw9(0FX^Lfo%1Ej)=R!T*;=;f^Rl(%ACPC3Y~}PBki=gE zG$fpsc24qpA=e;V7elso($RaLX=SUm z9=V=`J1x0vU9}M7fo$!3|A-AmVi5BznB}$Zpb%`?inW}a>#>s{UvYOj@}irYk=Ohk z*b^V8=YiM{X6CO^7yDFg>#Y3hY4v{S-wZjqHFJiYFTL%$^!;K#gqh&OCirk0_;A}1 z_^=6iWkO!Hy#u}L2=dB=yfPuL+SZ}&5#*H#d1XRgwOxj~N03)0m;9vuva?(LTrTT0@D)pc32nii+r8L(dz|Yp zc;1rFLKN~Yg52$RUiCQk5w~PX#jikrnF9UgY-;N-uo^+wK0A80I(hz1O+jpLme>-5IMTg#^-!I4GQXyp```T6z=qsjct+GmHIa7W>aE z_MchoKeLE^_WwO+7Igu83p@sQXemjar(4DE`{4J|h}d`HzIwh#V96-hIq*3TO2!%E z`wHmfiGiXpK3UFVe-p`=cpe+i;}sGExGxm)7vD>H`yA+B{6D^VOm89^G06OXHum%( zyX?M1p$NZ=x?~jkO1|TD)QurdfY-Ilu|I}>6hGSX{;=oC%WS!(3(xcV0&Fyt5qzJ| z|9d~{ZxH_vyWnnKZr!1T{~o}G=Umn%csa$pcsagf_>Q6fyMY(`{Z|bliRO8@7bY%X zuLXFEW6wbFk>S!I?1^i$8TQVH8->8-Gn+f*xwf_q@#i>Wv}P*K*Za^f@a)4G?79H< zY56`(?2it)p40=5+%7SyM?0K5be`ei@z)~uzxlp~g#AY`$oFE2&`n=z;QKqefS3ax zblattU-m@wn=a3Eva;-O8p~XV6&~@P*sp!-wA=dtSx{#0mI^M`VAq zV#NIsefR;YZ^ORUtl>DbyAN^hXkWdPp9=)e6`XZ^1To-#;2AONbr@^-W!TWG?KzRe zhlRH~#FJZNOl;{6dvC{O)bE7vtr`A0Kds*J?6Z1c$Fs)6!u17)=y9VYrns9PTT9J z?8yC)Uv;n3TipL|rS})|hx08yH?2E+AfzAvm} zzyHT6>o|C5VnE6|o%7A=N7>t>&X>%m6zF3;WXxGy#<1&v*Iw}5nB|Y^p?^FK7*g_G zO@+?od!8a@At2VxJ1oxMKTw=B6*@!wu$=S}@@G0?7es#%iT-1k&psDD-ik$tE)cM< z97i96pr?Jv;}~*8ANKTbH@%(nLMq{V)GF625l4jaL3a{ChsFo_K1?FWN|A>oS;lb< zS!?l^WPjFKYpz4{j}=Q{#Ym{ov+-W&+rU+)UelFBgv);`Rsy=XhFA(d#_Bm&T_O5s z&620>BF)##y-Kg2^|G;XAF00fqRYj=j{Wj+~~c_HK5 z=aTB^bw3r^S@Y#*E+);!+nj2ZA5(3 z(};K6gjl9{GxSQtkjl^-;};Y0tZFLWiCh5D%Za`nzlY;DVteIjh%cRHAm(ug;+~+V z);&#R-zCUv6rkeYJ;?R)3>9bN9!T6bDZh=+^i9P0_KWBn@u%^J(dHcd=KViP#5>PK z{mXF|*hf-dR73=x3r|eKzt=oMpqZ z1G*}Y5u1Jx_3uIdCh9_OuipiI7WHo(O2rouTlOaI(cHEV_eCPUZ094yP@yMJJs0{g z^xpVtw88jz|1V6WqK@&SfBm*?_V{u4r(y0RMjQIC$GDCMK75;it8>vmXu-$N``>}z z*7*5&F!oJvqEC$LVbljr;E!^QU&q)vJ?!xV#!Vku<2H`pZoy&o|H6L23)uO1Fm?`u zHGUIwr|oHb?0~^|nByP)zc2~o$9Q@DZ4+_dC}07+ve^U}(0?7qHE9^^8NlJ&4jKih zz8yHneA8#)_Z@&`H^#gXF?!QbKD!w-nuYnr>ouc3ext78+h*gs`VrVp`_XnE>S3H{ zD-IoMjg#M9&F8SJqCXS9NOc47j`0BZ;5Alm8}KPRe@(X>L|;?>0Unc*e>`FH4{nop z@sG#)`A0wh=;t5c)&2a#I%9*qKb%wO!9Oe=m|WxFAJ((Pyng=C&p-P4$I;;*5^^AZ zO?40|A>PimVW?%p=w8?{7SD(s@33R6XUcKNLy0zk*Rp%;Hp%+OexC0rRsDRYpYQbZ zoxbxOtt7(tXgY15ZSZwfV6O&uv@NTUipGw^S&(w660yD&i1iI4);Dw|Vt;E8`@0OW zzbg>?`%sy_ko&^mbKvKbv*2^-9_#x>=Ru%nxIPcU<9FSj2jTI%ZqI`tCe`(MkP0h) zwLtVm;OB&2PqEH})-`)|^k5c}HH zo7mS$eT;p@K3N^|qIvv>4BzXDF@HPh+qn|#v-uKV(z%ipv9GJTVqZCZ1|;#fOl#VL zePF~b#E0Sx#pBptM(pdbZ0t)f^hb%1)ARg@R^ILW$Q_8owAM3UgNnE7{7C$<)aOSm znkkF)g~;_>g4j@g2Bdfqk-Uhxwfx8T@_nTW@PP{O*9yckRv?zK9I=e$n1khrWh_T5 zW0>Jg1!5V)h-C~Tma$BvbR6H`?uyUF*xQE)dy_GZ|7t9<)<6ZHYdHJ;0_wkxvl*kM z${O4OyKFShW{knvj4@J4WDL$`jFE~i7=yDJqfkBy<)bh+N8!A|s9y1Ei~qVjyJzuV zmuL4Z{_FDW9{8_oULCf0HFD!&-@A)f$DRa_9@y>d-XN^eLCLdw0}-E&vpg;E6VxCF zMhnX5V68kdxRaM7)`Oq*U^Wj(yk(u;BRIPUUj^_^CGeLnUi>_nUYtC;H(IFpj2Bbz;z$o(904zekD?rS2Hp^-!q3GF zbnxOrUy03&l_Hz3*1%`7Vi4+quTt<;_%lK^kbNt1L9<+`q9qq+3Ua|$Ip4O=6xey- z&*(p|hdpv3qw{)LGvKQ>{=TU-;k;fKUj?7+HD66Ua74apy)!Z42z+%6=FJ%J)iIby zV=#|KgRhR(Dk7u7S4V@dj$+_<;H#s+S4V-b7J^R}9ht9^Z8l#W^D^rH8+tJObC`F< z%P{xGGU&nZ-$k&-p>u^VpxiF!@n6-5Tf-Uc8+G8QkyvLW{)N2zC0aT3;0pLB%T3%D z5r>YKPxMK{;H#VBF?_FJO`DJz+mQd?i~QUCOkqrr<4yRE3r4&Na_k)3--13uUdW); z3ip{dF160;S95uQoIbC@_xUR7zuM{Bl!~7~zkdQRdKGf%KEyjsK;HH#xIf`+jK73^ z76YFki1|zQr;Nv$ivlqype-MBtzRpj;>UO}zIEs)h+HID9(~aaj5UTF`h<#EpLFPp zw&0$aEaXetg1aMx!(4ZP4-spxbDXhCo(r3mdih=Mcwd6gL->9b_Nzje5GE}Tz?wk2^X#W6of-|Jb8r+_5pGP+vF$@)7GT_;H865dGx@ zJ=&_x{H~V6?A{>y>CxxS!Xam$%3jd*<@cif=oIZoC)=+@`xND^o#m_1eoTt? zW0LJxp?!+-*3R;K(7q@|`=Vs~yU{*Hd246+ooGKcMfd*<-bAu;uP(R zlkM+7`xND^o#nTqy_BN8lx)8o?NgMuc9!3Y_9ZFWmn7RG2Uu&0^48As#b{reqJ3$y z{mp2fqP(@Ud=c7*QnU{x+c%(nit^UZ@;bCHOVPe8*}fL-Q* zMyq*F9wk3!#Y9=D?m);&f#?lzK&CL%UyBDLx|>XG%}rFpgtx9e0d;(Zpx zxE%jX*2f+KuN;K@7}mK=spuT^cMkgNS&#ey{4AI6<#pDnzKQoYvS)wybK4sB6Y{|D z@y$bj^Uz<V-njPptvx7Zo_Q_XEv)Hh{(~QK9NV6E%e_}Trk!Dss z^2;OA%uqG~YM>FL@cQi|!=ZQ)Z{38FHI~1|^-mQHA~BpqbxE zGxI3(M)G>!X%?H|j%H+LON?_zGo{=e%@QGZG*e34(JV1GHO~Tl4#J}9pOnEmo&CFp=nyEN@>5ykQqly1tg|5Gp>-yxXzSAuBU+!o|UU5gW z*mid`Bir23EcSvsnvv&I(@Y)dq?uXhq?ro8V|SVzMR{h?EHSI^G*epK(Jb+#JDMr~ z>5gWJ$K26OX?91m1h@H9*wiL`zukGGI@U=uv)Dd(+?=&N;-O((z(jCpn z3U@S%-RX{I8!cF4bB{cGAq8@YT{R_LsiXjGW+(X0b``XhtTuqgm`Y zcQhl%x}#aFGBwTANlu!X)lQnJCpc+#wDm^h^Y1fnOpJ0zGi9VZnk7cKqnR?y9nBKl z=655{2B)T(d7_hM>NlM<>UW$pJBsqmT4&0%zSAu6pgWo=54fXQ;y!mYQ`WhoS%TaAZsggj)HE}{>!g`_ znv-TG;@`U4)JIXCSu`V+eWzLMHg_~5x;vW1mb#-ES?rExv76k{j4Vt|GZit4-S@7{ zGo3V3&vw%6Xs@%xpgz&;d~5&U7e}O-RWEVP5ou=kH}8lvv-|t`5ou=kcf}EDX7|T! z{#5ep94F1xSx%anv%gxJ#rE}`X5>6~G>iSn9nHuO+|evH%N@dMBLFVagsZlDc^KQvjn&KzgV8x>#;gD&CLIB(o8+y zNi*|;ua;)yslL-J7IsH75^_hgnBiSi9nHww?r0XrMEP0YX_k1| z9nF-N+|ewt)g8^0zqq4Wg4_IV`^=&lIkWFHi#_3v zX5=wd63^}XI5%@F_Zie`xaPstnAc}|*{^PMzPul;IimYCFcnkjd?qgmp2 z?r4Vie^)d^{Qr^8SlIgD?e1uX`2UnNGp}>fO#P*kX6E%@EzM#h`%W_wcSp0>0(Ue+ z{Qr??c1AM(|41~m>LLFBNbAh*@7mNfQ-9^8nR#Ou&2F>qpQ`z4X@)bqebGTISQD2W zk!DssWzG?4X7_iIJDMT>-xbXe|L=-si2v`o&Mcak3%Y1#)2P--Gc)d_*-_lPvgO&% zzSAsrnmd}2@4BNI;{RQ(GsOS9q8Z}Mc&1nTwq?JKF0k_CVih zMn<@!S!}2~nj!w*70nR;?}}!K|93?*#Q&$HnYz?TGjo}fW~%cZ^|E zH;vJzzCDIbJ2=L^JJv*gdmrvTsJHG5kaw;|K9v=yJEDk94HRip!$oY`FeT7DyH6nx(%qi7Ihy@TbE7UfjXOtq)OiA?ILkl9g#12nP^iFqK$xD zCz}RqWetP%+v_MFvwX2h_+1GS?xv3h{JC01AWsWV&ts(xd8ms!<);U<;y?gx0$ONO zzzE0YNHWjdO z4F$-lkt550Lj6mSCkA!HfqaZTUn@r4GSm$R3S@Sb5*@*O(VH8oY#btnfp7k7H1qPi z)nqvb<7}{>4Po9WGWp5ITj&$tyj}tGSoMq_qwT|Xy+I7QepaLH-|%cT#+pEz0%{nz zdjV~9HV8R&u0pPz01X9{!-Glk?DEihIl_!6f$&2v`hCQCU2thlXkhByMr1_`18L|WBp;2<)RF2a`7EN9X{TZF|Gye80UwWt9O!UE#~1< zKPRjz?$IREW7HnToPG)KLf^hWdE}G7!(`uIh_U25%ow;IZScRY8MwX_b9yN103LQ1 z;Mh-$$@olYNB%Q`v13(c)VBl9zXJ~&ai<7yu;ewYg=>J*Yxw(^R%J4SoriT2r1GQ1 z7QDt1^i|uA{}|&Ez`!mi^2yIodGY&Li+`u`$yiUr26~OaaE$Y9+~cvG8r8tzfy1~* z1@EtW0XRMvw8Q!{@U9PkZr{NY04`;W*>gFbKTYMUuEJboxGQ2$hv?hWp$G8o$2b3t zZxR1>&mNvL204yQsd*W zGf5rnk?4BdQ;(c(Gip35QAZb+q5g8@r`dyi4BXx(S4*S>XU~@-x8ekfybg~0i;$~B zK&}n}xjF>o>JX6E!HZlSUgYZVvSX-MJEny}W>|Lz^~;Wa+0idMc%G-8a)bP5zuf4T z8~?N9Mr_c3yWF@pp3n2_>I1l)QINx?X60y8D{|Ph6LZqq4wjwq1Jpegb$^1ozer!# zvNL{zx{FZvUetX&eO=4Wcm;L0pzc3V_mi}B+0=po+SIH8ww+Ni;4?ep!~wRQu?2R< zqSSUqu0NNRX2HHVHIGS)@-%5no)$Vaz(QHDGZqC{cuT;#4^4o5auVzlKer#CYo4^7 zuw%1C?buUAEu0n9icbw1>{{3v&;y@<-f~kEdQmo&pU9^Cu3lEYNYu)=h+4�=y@P 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� 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 z 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

^0N9vv%@Ug9|b=W1;r4n{+CZT&-V>%DB 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 )i#%Ql_ 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 z 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�McsdJ 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

`wZtGyu}4D z%YA3&?eD*;Aj!~p^I^p5sU;(Ro=`p4n69)ZYRUyo?BMLEPT1vk$7~+j=T_-jf`ZJ~ z-mYqy`SXVR`l1Kdq8}=$@4|?;T+nYKZnI!%>VUev|0(*{;mOp|Lg#KPr!ed^CjFI0 zWf#oQjdso*PT-)WBOTr$Xsb8B`rTdlZ<`j-`o9Kn@go9?G0|k?(}eiaD98c6HjP6& zZOJ>s+(b)3Qlo8eG!lcNK*7$si-;=#A9b(9mbJ)uU6UTyp|3tOE)W=|no+AlHkBW; zR$|AWYi$q9jKybi9_YATOoD*%!))!b2)|zDN%Hu|RQ(xPiIn4PNd@-J@?)#RrAX=m^4h7F=WfT-vX*8T_MW zHv0`S9i9T) z!HjyQ&s2U6c1F;u?kMXee+}Fo2jV}lB9QjpdE)({Jx$9@>lbO5N3b9dYMrnCGMIBRs0cNC)S#K zkVipEh+jAS__^n$4YSOc6KdlDsgx}XC$Z%SpYNZ*uBQFv1^H6^a#9OJH~q#S1P_=O zTf$jOKL!*^{=e0&Gb8n44^Q~oq5rEtST@>(*#Oj-li z4)9G(Zon`NXlXnA+&6V*hGu-M)dVoFroVAJTf5?E-3*uSi2?Y=&4&jTW@BAak<$g7 zi@zvJeb=+HY-XCp^*8>g_t(G9lMC-VUzNGQqRe|r#OY$tP{n#-ujdD{gesrtP+-cN zQusj3DfW3&9fnV1T;JAg;#*81G^Bsx&?7G=9sK8jbDJ#JKblBi$Rt#|!E@EsC8m1t zw6Y?fjR)Bj6D29>L5y6`X30rthGq$3mKVZ5fPfSZHa_uV3?8&`P*&os=KSg-)Kv1I zl>7XBjb>xxGmgT#PE)=Tm1liniPECG0`Qf2=S_*glo)=Z+!wWUT=d+4r-teg69wlV zMS($-(+yP}(U;<&xk2hs_27$mu1uf_qbH7rL(FDMt*wNf^uvpLpqJ*POrNPmL;@xb zBN|FKZKmDswI9{TME~erHgg62|vJK((lIBq) zsa|So+5z*uRJe{DwTZ{JHJD8dOIG*TI;_tq$<4p}PH9w3!Rkzw;n!Wet*Fk=k?hIK zFl4c@`ATGu*cQ_R_(Z03ox^&b!0<|l2i@>6O;#Zm^KL}s|KX)RPqeFs`qx}V4+)3@ z;vjnbm9y>87Y@$%jC^ZES)>EV9ilOyIMI_Srg(FJ%^R&@Dy>Q*d%Ck^Atghr2S{(8 z=9Mt7`-ci|n}3ft_agG>5QvyBK;Ypq$6Tza;9Ozii|m3H8|%@UI1~Mf6u@`X&fQ4L zy`P@>lK(X*2)(J($zF;MLtDSLR`+DtSK9OZDmB<5clG}E@8L}-+EIZH(ygtScR0Nn z!aECo+@)l%g(a*Nu8y%v7+Rc>-BNgHglk-c;`&3D@;XCTZob{SAhuIuwNuWql|Z0-AjarjenomMcS%T*0btq) z?iSpqa@MkL8BIAo*dL;frQQ6MJG4$KppkvY!$HRs0FJJw&~KB%Xy8xU@fqidvdSvv zh8s79qr+06dlEFM<;4ueqUGLkZ35w*OAh-UqGRvlLt9NR7q~~c;ifpc%Lj|~rAv$` zz~^Vg*vb?s<;vO`$$B@(c7|0%NaJS<(gSc5pA0XpBKuk5W;a?}BSYeMYyKgAM1fd> zr^=VFSH^5#O_MQ}_)2MdT|kC>AQ~o+_il4sd82@b;DpHfxVlAsuAoOqf8f&{vj9(l zOnHf@$3C+WG%|R8VZZ>t*;r>kt=uIp2aPH zvHOgxkMB@~jq=Y85H z%qrL^fHfEI3$O^s1>_G2m3Jt63Zx$ft&TLvw~&`X3T@HDjmg_unj+*v5m`eaTZA8J zt3qo>IoVWI0wD&L;4{cslK$w*C^frDZt$|r6)0ryn&+HO&-zP_4bV)rj9?1%g-|?& z6lOz`2NfW$>olA`5A)-=?YYkw5s`0z!EN_WT&dEkZu22RtqC|d*^kXCV+gKw5+Ipm zAa=x1X8P5k-~RB9RLEZcG>8$I6N-;i%vp!=Ag$6zc4Xk*go=PS7_A~F)t#}{QmUE) zc;aI#c*iP4!!7XFPl?7dtmVjx4(qyJkLBrv53%Vb7JGe3_+nKRRj??*JVfg7_mI z%T3q5Voi){o&safyRuM2kMy^sK2Y&?e{+inBT^EZZVO^dn~$3bBpd@+vCJI0&um#W z*qL^Rg~>8h4}LQ+CF$tiI{Fu9E6e435ehQvaPY?ASkOY{3VJ>)77;bp<~}4 zsBi}w%?L4l3xm=tL_I;oJE1%7f+4e4UhEC7YOCV^|2|Vm23ORk#Li<`{qxWSo$2Z( z(v?OqP(8Du16jkT0hoKv>*w39E)w@wDwUzvFD?w~GkH0DuU@TST*%)=SLO@2i?9;g zK2I++VE>hHVU*pz9o|#&LNhMpyO$n*M@oR-%Mt@GC=H3S9wxt}0sOwss$imb|PEJzt9)~@)teX%FLl{GR2tQycK!d1E9j^Ekb9q_Ty-*}s*93#%YqP)+}R4Rl>(DIiX1mg=OoENle+kUD; z9fO`zO(zaG?Yv~*+Pq&giP^yX#E?y^L6cLY{#fH9rghLEJ;)f~=+@)+sKZlB{mTi@ zx!(bE@f+L#;OLAhLmEw%?||Rf>(*)|kJ$hTDSp3k=1n17LPH0e`iHP8yurJFK~C5E z=rRo%3%1GCuk8a4)Hyo;OYVzI$M^3;M-?H_c2v!}U&Tag8D=1@?xSX*ICu4*HvN3( zL4f;7$!Z|&c(+IZPWr@?+b&3rz)Mh#5$N8}Um(`>Ao_8fVR>9L0U_amR^AGHCLTxI z%=cX?)~8Evn9Cb;0}IRuj?Cj+{G+=i{zACZK&(3rzOivIkqrb|hEWQayg=`$RS88*FPpcm)59Iva4H)6bRIkjBp0P425QhknqhEupT@&-y>T}Z_ zzW?p)hBp^?5ICE3O)2GfxTP;dRpjes=kaillD}bjf(al`Eu<5wN(PG|_y;$r*^p$ z2BzV*y1;@u=&vw2-*I8Cjg;2XXo4zUdHB_@3u2j z7A+5tV}$tc_K~&d=*R)qVUc^y?&L&Z_*BDB^*GdT|5bZd$`KLvf4 z>o@F4)uHbypkL3h+gg8SL?+RC_t*rc2fCa9+tr60?Aqt|Y|N1Kit2T4uGQ;t{L`xA zX(F@w#*D~v7!*=`eHj_E9RCmF#(Ryd1<0vH#JZqMr}x4bNWrN~&x7TrmH1iWxqJg!tC8ofgk$^p{7%PN= znx$&j+jl=fR#fiQiw1tT@JY9nAmT=1gUO3Exl%zhKrIJDw+C z@(wDMKH~~+vHZZS5m5=lzn&wkNRy9@sw%=l9uF@dqSn@Je~{*1Gf_)afc}Y2O{ld3@K{^YAbJ zBN0m}H4_$Wmx5-JbjBZH@yfS2T6c?b^s3%sFmAqOMP+sXfBQ&N^53{dPn`WDvDTTW zNK49{{IHZ^%YVEiflBKil_5B>*jgVwX9DWEVwa8w4kUwxJ#FbNX7;)35b+wOwu(A= z|BuSa$;DgR*swA09}3np4DwGqt@n9qk`h=uDuDNDEO=TIx6DE_M6~ftEsEuSPLzFD zlLl8=ZhbAr5cPNDO5oqTxU)m5_N7(J1+>BQ7JIf4mdeE_vhxhM{{l02-Jw%NxSIM}Uh+2{sRiCLoNY(ar8>Uj>VE1S1Yhsvx zHJeWocX|Y~k-7g31<&it`2p}?ZorH zoHCG%_>FR70Zu)LKARNzFYQ%LB~xjv!oS#jha1% z9l%Jg0lq7v1?1^|UGbX{x`-Bvt$8c?nq=cYq*Rzl%BUwZeRAsukcDluK2^IiBq4zP zTzNJ#OF~pxfOpaS;{?u5EjuksJKLXKgn57Nz=Enh*4V6nSn3yDe*1Fp+f?;}RA_5_ zMV5kDrgLdoQRe zfge?}AM3lCb<@R;UtaKsFy-e2d~MBwSg;=pyi?mh!s$UUzVF+&3aXQ3%yp1x z4nJ-m;J`Z_UX?$nB^D{6Gl4r6M=jrZ0KUWBg4d)5LelXbV0w8|z%KH@cK`emAN4k; zr@CIJ%Lh%PAkHsCQWyIn+9=BorwwA`_K3W4YPvThexO$@xnFvJObEHYlU_Kw>)_IkccmBX_%B!Bb*U%wadRSn0n&x)V~_= z8MH87syzQtPSIqetMkSY=Sg5z?ZK$Gb=I%gCqI6?XWuF0g}VeCq*yGmGxNaC-I5sQ zL6iO659C^t+B!u5K2pN76miWF6w2HeOZevep>yz?D0t}G++=S15t6$BGR-FSLSabrXDY*I-DdD?`j2IU|sdHf*H&@2*mU1b}OPY&gb2`kC97WP&PB+ z@E)nG%*|8RKOAocq`k>`cNRJg^0$dA&?;MJTkAnj(%W4$S+L)|F4IlFczs< zyE=^MOBz$X$Lp6V_O)N;VRu$m8JicOqzHOa*ok1c5QsLPjuedlawu@d(D(opvxJn# z$?!h&bYLDEO6(Cxpi z-~EA(bnQ1En5?EUMN>Bz5^TXe>N-C`Z4xsK;Z8qtm{s+s|E@4UZ=GWmhSF_Uf z6IcQBb*}VW4{0s))nv-T+PfGRV$Do8eSrF-5g>c7sbYC?M#1F%UPROl)?pfoB+9&I zpwqT`Vf9 zMYQK%E`F=2VDXOni83IcAg%^EyN7!Jl&gN0Gy1k)O4Lh!%5@=gtudRh?XbG>pD;O} zGVF3Q+qs&hiUsenOXGda3(qTRaq9_`K_?s!S`DJ^YS(q?X5QYP@Vv8 zBLK!15eUH1Blm^Mmn6P@;2~;|mMBi~a@-N9mGqtpb}Z9clMOqNgy#l#w0YAM*tHxF zbURUS5BTMW!8p#k^KLE zPwz0g)RPv>rQW)LF<5=Uu6u0=q{)_UQmu=)QxDwpJc^-dgZ-KIq6Gw34KMOd0SSjv zRwI&%G9aS#KH7OzGrv3ofqpm6%+B+|x!nsyciCu2bfC~rx}2kae9Nzrz9xKX zxScOjG%!&fWRI$0U*ni*?BDioOXaBzjNuqb%O{SPx^_Mt75>GlVhfcuPt>B9IzPUJWHV?{C>vY27Qtypd~noNKTbAUo% zGp^tf1;vBN$pwy_o*EarY+o0&?_MPwLu%8p;>NN);Qt4|1RBs?1u9`@{+x`j`=Rz* zDBC@5o{sO_aN)img+$qweDxc#qIw(YeqXiW9^`@Vw8m7ZsGdln``4!Y-5>iK8Rq0Q zr)SD%M;CicnXbZr^mZ2f6KOeEx52pz%8(7s0M4zd&pOEJF)+b0&|J#Jps2x zaN)>HG5*`zGv`W~<43@`^^GT{(gh40MfHL?eZ$IW;YEa~*-0x4ux%i}SI>S4(rg1| zCUYc{G0^h<^B~LwuVd1@F`S4Hhli-56W!3Hh;w3;SGLh2=kojbZr}uLsqG8wY1|n z%LLb!fsjj2pX4T#Ex$UkXCq6=x>!R}LU(t>OIVYB5EU2P&S9JOaLL#mZ78WUep$wM z2m$IT8w)ZAa4W4=MgfT9W??t&0%k0KUtm@jBRE}$DJ+H}`a!7pM{1qH9K`vUti}=i z*zLxIfAzdyPErq^Zi<7o7?>247(xz+f{>JhF=g9wABC*azbFsBgeIBH6vj)yIx*;r zjp#OPTI{2aA`VCEtzu7X#DjAr>igM#5JDsKTnn4;HP3f4hU<@=**WdIz=nS9CjSgi z9X)HmmT9Z6q8RKS4g=XY{0{kYJE@-{lGz#<%B`8~V*Bvl75V9e0QZApz_yYx88%F< zDSTr=1umfqj#LnvpZ{oGl8-xKre5dVm_glf67`505>K4?Ly1HgdTK9UNbz4#)fV)g zWtbK{N66H%aKY{nN-z$aiL3d$Rf41&UXPQrNg*m>X#jYYuY9oa@IVB!R=pF|o4Ssm zO~T#+$dDIEFrA)k+HF49U9ncA!Zl>?N}C~e4DcBe75_1ifI7|4%k*4liG$-Eg-=Qj ziF8(&?oK|w$VaWb0;?5!d*9@Jey z8{gaUToH8i3TN)$qS}=GzJC&n^g;kDHO653QltuwO+uLI*$@|Zrfx`Mv1|C}qN(ER zX$#ubWm8|quPNq^ZEWNhk&IvjK0y8)n|DsZiU;F_FMnXVakjCG$ZRpaql*8FP5i#o z@DFHJV?s8)lWU?QC+7C-=g)=G;#>9EVSo4R;g^{%sC&x4-~-e_z_E%4+o&%o8!dS<|hl-RARv?|Ejyg2n+P(`$|^D z4FrRWd|F1h6{wbVgATZqh!=AmnhpOoV{cB2EAYh%J1EbY2<^p3CufKszJ@U(WgC=F z!I70Q5Ge zE>N7YN~u$cSxp#JD6K&F8PeFEX)(+*m;@%RcV)Hn@uPBf^Ubezwcm1RUxFAsNfF_B z-W|=`VL+0KGd2c)magODbJ?#tzw5g5sL6=16 zB5Yi+sX@!EiiTwtSDy`b^n8dBxFwkziAOq}&Exh)?ZpC`9^-@?O5DOFw^eXx)L)4o z^?RXu^#J^&?W-O3JAV+?W4!cSP!Zl&b8ae`soJYOB1pj&upc3CE~c?@M4I+b>;A_Y z?p_Pmne}(*V>w~-`YzZtFH2)C<>Bm`kMlYCubrYO8Kgi#s)_*M!CYl(a)Bsa_; z5ly$V3;n2$!hb_0cwDI0MHn{L)JL8{Z#rLl*-0_RMYM2XYFe>NEu~Y2p;^FlA9yBw@)seK;TF896hPX%Ko>Vxcw@_{3+*J6N(=B zPX<`3e#@F`=D_ivBIqdSfPRuUn82>Axlm^EM*yjaf zr68XI{Uz~<{%aE`QhKAzcAL77@z{^9iukv%Q`Qb7a4=>gTy4{*oeMS=0NiN;;U8?R zD`^W1DD9!r#*3yNSw`DPe%8<#HFkok1%nStM$b^PRaN=Os^_FC#* zR_^D$ai+W%6f%4ct6o#}{Vn^s(L5PbJweR;rZ0p5zgO?L{$!Ar*(!sLD@CSSUl}@6id3;Z{AizB7og|(=+>Easb3dM+AKS#KS1sZR!`#0QVL=n zpkRDajIm>U)O(8Yikr_OROt}A1}Nc4wEGWT?0YopXQ$6*uhmx47J61nf}4ZTEevlo z*1e3~c!ov9pQJix!0XwAf!6_jTHw%XqE1A&d~h}IN2PfogNmygEe5GR`;z~@m3Yyp zf~Iv`NEvpAGHflIrjofm!z|y9Y8J_^vChu?r^eQbK829p&`f2%e4t-WB5^Qt6AprR ze)lW1h}6&k1>KOTCX4%Cc7?$s;4-fN0uZ|%EdpgWE@&`rjl$A5-&f@ zqaHFP+{a%W9DXQVV-x58CY2x!&W6jg$XnD6jKf0E@Q(8uG8C+0C$NH}D$pe`4~j)< zUd5eq6bgX)!+7#nkb$m}3EC(nb9XW)HI{o|(oLdo@X1WL{_u12S*#krXNUi*8V3r) z3diRNz6#$hCA(8LM;d*K&y-o^zu$~Q=M2|(C9>3hl2iC7WJeI-(2Ig(@f?uflFX@U z0dTZm7wKI;t9gv3{lFDhh^}MwUm9>~x2O)-&x)I6eu-qVEAPm7x_ob_nt~?j;syee z9Ur5~y=H=n0rfTZ=8C0)z(?&&ao+mAf|*ST%vG^CCbW<6fq1 zEhIZcO#ZZp6fsuX&Aq@jJmJVmOkBaf!%>=N@&)1~jJ5m5FO_ zv>yX0OSID2dl0s9AP0GXRp8nyi8<`oqKh5?B-whVWXGw(d4}m1V<6j5kyujyt{WtP z1ipz+5O^6~mwdMQNhRY`{6TPT(v`^yI_)DpJiNOHT>;RI-(KgSoZw7)J6+3Rv{^%0 z@ZGan&6B@O=o`Ni)F2g2DFvIpU0_y@34f%i=;xa;%O^+Z79;&%!MY#5c-$J@P>grY zA~AVSSkS&j^EHc%!}C;j<6NvQ#(ilN7D?0r=N4H7cOkqRf5(B^g?#q+f!vp6JKA~3 z^&JW4&3Lu|n_LpR56#z72sV|KNEz{63?iY{-%23#N~ZwmMYF z*;HGhXMmMHM>tp0u-XZp2s{#3tvrV2GD0Zc>wQg8$T%Od!dVr2S|~d2j7)T7bYVJc z=>G%-Ha@jw19Vn`mX@tu%FQX+-jdHuv0uyOn5jMZQj>wi26TEGw>dba6@?pE4wUF< zij@mh@hDWO87m@gzs$*SPXW~xq#)s{YAuI89}7J0JN7FPz0cXG8?Rx7T!fT@*W8iofvQY}h5qfvLLAvL6Y*40PjOhVtnSmOS9BYS zR<0zh^LKG5N=_EJjBjpxYIe03`?1gc3+oWoGUP%-K0#F{dJLEw14;|yY~E28zz-S+ zQ(1pLe(h1nBM%Nvqc%8a^3E*=jRk?Q+)}YR%w(Mb+0o0-#5yqV^@@iXa3#uDWevllzAQ#}m)+0&zVAdxz4A6697)Ya8~4eJ(*kLjvN!lN0Lsb@00j zC}OW?BFpeW!9@O}>yiC_7eC!-JmxG@k|X)-h|r~V=LTYKZC3)R^CFSnQT1A%pIg`2 z;O%uwzo%3RBi~g6^bMofx%EdVNY`LbtVhQtekCcxzD5IZKW~qx7n><31f>gfI%LYr zkFg0Srz}TCU?IhN-W_D~Xm7sJcKTZZM$bgniy3w0STt!Oo|3t-(K(6J<#rrU`y~m! zHsnr-?`FR*PnL$Xs^l3&)-AJs*^RZvmAuFO0M-%Y9OEuVt(?wp_k-{m*^(sC03O=< z(7O6*PLQ}zHa_H;^d6o$EkM0+lZ=g$>q3-_j|yFdlT$RshoowyPF>;o%>w0DCL`HJ zCrX%-YFy=TwuNf(m|@cGM_#JALj~~P)~L>N+1E-;iU-BewfhyYGZ~L_M)3dPQ00Z<9a++#2hX~rvS!u1a z#={yf*d*)pfgbFX4=hk=`sH{yWOFR-qJg#R-mJ&1j)BnfoP9_}L~X}JxW24@(~4PO zB~`!b2=nXwE&xABI+(B8*1M%5u3yo;rmIxv8av6qS*u|&TIU=s{f3#(tA<^V&8USK zB4;~5*baxQH~%fYBgBQw5P7R+DLZ@h3_EeErQI=nsgo^5THBJOH0*)F>6%wsg5msFsi3G9urN+K_4eEHzFfTJB_eNhRTw%yDIL!K4U zfFdD?uGFfK<=*>HI;2%pr{jV=a#2?a#^NZCR`sP&Uzm+7A+Sd5_tgJ1s3^&~0CY+A z6--(_=M^R>%-r%_r>^2Z}yfwWgKPwDvIo{I8V|aQ;o#S#3{I z4uUsL(6H=;?iw#vJXM#k!O73fDDkwtzC;8Re6*5w%xc-utM7%0h;s)t*4+7c(vo>%DC zKhpGEhgh}c>QOJ(BrzMDe_#LEcz{HJNh)C^Y!%xx@-s)z)_Q{Kd(orjt~Cals)C$h ziP3C(@Ii0K3N$jyNg__`S_R~f;%Fk1Q?*6+GI`u*YRY+|ZPNoSsKKtw9bA(Ihhfqz ztSsf9-C2|RNDD>Ev$9E~g01^#?{fDq0 z)7e(r56IJ)5I_FxS}-;PIj`S=!qzJ$mcOVbRVvSyf{GHF@XMg?DrS&e5bshn<3$co zco$HO=^roPC_IQ6E0=kWsRwpG%3@_}_cBX5W?jhil#lg+a!gE}XFq@S$FYmVI|~5j z`Jz{zN{`ce`>3vscZB~G9eHd$S=`p1@eM(S{CLLK=;=%Vg%64IBlGIi+v2=D1HJxP z2#Hs4m}Q=#W14j9Xg2~iEF%2vcSB?P7WDKg=FibZPbbEr*9x{*@fE;F4B+vfvWc($ zr~|6`-l)N(I7dOgwQE?Z!&bPqEmbhrjc#>xKcmm)kPoHB3w8>%CSE z&V}c`)HHz=xE&kag|3?8eM#z&HZG-0h)>asM#HPDBxv~n;PY9mwokw*=ISPqjH!>zlY=4o z?DZe?f2)XzCoKlmYxmPoS+iay5613_{}{0&w``}`Kw5##8%TclUn;3jHD zrRCwiMQkp8oEC^iChrzq8>P3PrS(P?)&S`3qx}8;S2u`>AM{NO)Ut(C2oAPw-?^rK zEur#XVz4~9n2;6t-YdrYh0}y{>o!C%ULZrL^VA|@qNFEaXG8ijy5bDNjfk$MU|o?D zPN&?|bQGG%9v}iw1k_at6jsH6I@im{0cIglpFr<9%HoNCyszl}g_TAuo0;Z`hd{+P zhI#g%-_2>LLK-)e6=Rno0fE!7RA6EXLVZo=AalcZ$)QL7UH_2-tCl$Q~QcUgxvbc7RTfWAHZvy3^WJ2 z2*u4_eGOf6ck{t46=$SyBjJOkQM)kVX&c>Fy5CQ;7f0E#Wk=1Ea2(;hv*Mniq%MKK zR&pX$ob~{5aBQ(&`VIM7r6;s2;M0{r%t-GnFnTwY6Wx6VJHqFzFDz1AMr2^~#XE^v z-cL@AjDzp3pFy*59NU_vTM&#QeMxd!?sr%mLE${K>{^mLiMxm)KRLW&Xv(i2+ItZU z;BWV%I6AHGa&EPPKt}J!LLsv@Is*+^Fm;22M~L;_0bKWc1tcVVA*<~g2GTUUe#iwJ zNSnEb=ML_Q)`JxjdY1uY{r4pIkdH2EH#H6Gy;(3i7_^HEVF7$6m>Ev~ z5f^Mrh_lDT0soa5C7pNP)$o^?xp631qjx7u*_Cp&dP9$@xbBt-jpGbNJAR9f?ur+* zBQCL*uSae(NKbBZ&z#6+#bvEC$GkOLHF95E+PjESU;bt-x;--hN1^I5^pMvqXR&%V zZfeK-^#1G}FUdSShOq!wX4AVoRDLw73EwZNS??!3BV*YsloPD9(xHh;IVMh7H zESrMii+z4<4BgtfH!e$k(Phjl^#1HFH3+S_ui@#70rYl@G)j z$H)?c6T6WgfnKKkWejb^*H;3Ha-`r}kpnt6SQZeuf$aq!6oPK$fJoq3xu^x>Ynzz@ z9au&O^IXh_yRw`=hhBYse&WrIuc&}@oFzbSqYhCz2d@fOr}0{vC{wl6HlB!792n3K zxjWGq|3}hQ$8{QS@cR*jqzeP*Xl*~yVd{e^FYKW9RD6thi)cL}X2jHzW4K-UxU%&w zGqDuUP*={ZkpvD4l+geADW%5);#zD37;}j9u)?Q~y>G&6C^b+!LF?Ir@OCv}oyrTt z=8Mury$com^puG!PBj~09jY8*<0!kGOt@1W2h})y#YsJ9JLM8cC`hc27I)c15@yM( z1$<|%%j-j^NIG{y1CXb8e$i-XOnn$>hN`RJKefCAc0@akCE?>8|!F90@9GH51H8X(TVD)unXb6sN3fmm5xm!OVJPw4ZmSg-F?I>;` zzE(0CY?H^#e%J?ABQRscK-7^_0O{niF`v!RX*U1&SZ;K*IJq3gd=+n0^aM0P2djn} z0N;p~sSx7TA1Z7m2F{`i|L#hTX*DR^7$!!SHYnV(8sIMeMCM5cm;Rjh{0RM ztrM+qsI6p>BYbz-!S0||2%Y~Tab#qOX||a5IL#N`pA5iErh!Vil#g+lcxjwN1uay&}Wcd}CCB-^;7Cm;q`W^Cy(&&Y-U zK<27j%-@FQQDYFngB*2`MlTzf!(EvgTCk?A=P_pnc00^13tSHX{Ve(sT9_1~@y0lh zh$P1nn!99%QuBw5<|i&%>#?9;tNK)WG(rwp*ouF%tNOX7mp<=>Ti-RGnW~$zdr+~i9W@I=@OI*!6kuM7Vt-P$c zR<%v&TxvZMYg1*(EI!2D_}ksBjE?t?5At*d(LgPjSF%n`T4Fnu1w7`w1L3TA7D~A=EQfSESCo~^nt_?;ut)?zH_{cC$C6G#S~69&O3p@IlC{9zbTvLQ zc}Y$Qz-y2{P)H=ag|-9nON&kX*We*I1ZUE>TZ3(d9n^oNjoR~xO(4a_X^v}4hWNZC zHqktPfSaPEARqmWGvo0nYH^3&1HkJGbebvpLxKXR)ACEwu9XXt&mYouC$jpqIC;1!%U)^T!Gm=Bj0s@{g5)!+iLk87z4mKqgamsu0SYJRe zJTXN**V+bu0dcU#+%H$kfa=^>$ufyGQV`KN?_1sARzkcKzr7Q(!k(a^X*sq;3ZF3Y zfisNUHGx%kJ1{V+f&Ti090kPmDRuoJiw1MOGqPLJcNK}KbRnFi8MqqR1)l9K6$FKy zHVyER{@!EcJB`c_Hetx|Ra=1Mb=EAsUJk)6U!1M6#a1>wEP5_7l~Uj)%!Yo<+^U^o zgj{h(1@7(kgcJo({)Qy_F(coKe{c$JHxsQE>nx;Z$Hex&YJkorsFRtir2C(2Q?JjB%0f|TPO z#Bqd-1EuTg{^PJ+W^dPgrf6JBAG4|!CFKh6G1?dNg4LTBb?G1dO+dUEBB&M_6uXlY zoxJWB4Y+Op-c^!4>b%Nnsz)bP%9PnJ!UN%?k?0(OxF`p<9AbeL=Q=P3ZQS;0_G6-e z{(GjVWc?dI+@Y@Ho^uk#c^0;JSzE}s>_C6l(a|BLpt1#^vxvL}Ej$`&YgCwwX*AtD zJ|76@tcRb-VITj=0MVmh%l9q8+7S6b!nDV!?(?(QBE`%>3h6hr-x3{CLQWS)wOluu zz+4pyHc1r-q_FLBzO~8CxW~}L?w$S$HNnwc0q{h5*~YSpWK{*amyiln3MSM&Zi9>p zvvYd+{ph9JX7VTE<-r-sob{gzYSQX^TNU(jqH@x;7zO9u5*<9a~-f%T!y2)1xLBIO6cn&(@q*Cf6^*|=hR4x1i& z3{d#ZI)xzQXdc|&0qy1(1cph8E|csWD0M~~cXth+gu?7#x<`)yl4-#+-lXf@FG+O7 zfgfy9jw#$Bwg!@^JXDbdsM|PX7)3AV33N3jB4g|}N_G?eioVssTQN(#>9@AMZrJu$ zuixezD+Ku;ymV!y%1GEk-x#ZA<`JW6uW|G)TDIZg9!2+_$Blv&&K|M@!J%#aWo7fX z%s69*c(BQ(CV)I`*X<5vRA39Xxs>bF=HoR(M#B4jB<`za73?l9U|5(S6FD=rPJ(k} zYc~Qkrp<}baeblP;gAZo5eoxHI36K~hrW?o2qZM%bZ-Fjh;uB=3x*M^HJR3W<-wku z1y&4L=e2-Wvw;aFD4!Izl5d-*Nyb0JRn0dNF01eXewFQC(@|>I8e+Eti=|pH(ltpW z?3j9=bH?snz9rPHpAYr))85VLe6(@0N(X#F#_v(0{1eybqLs6f+RK+D*oDGDfX;fR zRvBli;84z%ClwV9zONc|L2>X8C%|PaWuO;Q8n0B8V$&wVs3@xX|_^k zT`aEOa;N;yYjM-=@#XEsBz`u%$mEoB_+W(xA=}ZUIDHd;N;?xVf!snj5b_7E2`Y#z z?Xi4U)Xs$pd!K0+(b>tVNWI}O!%^TOFyr?|2BfRngxxIx{!Y%vHqK}EOH!9dskA&B zY+=tDomd-n94K9p>zhZ8hm9jW#=p=F8qe0xf)N?@I4mT$XU&Z62ea*R0y6ijH3DM1 zDSFhX-)DbwuU`iwM9R{MdAuIMC9K_f_MH69OKeW=kx4TCL zfYJ}ewz>I|>*y1qi4&(cisXmm>*ze!9VriSD}U7f;jJfZ zi`?M4`~CeD*I!!Lz)A>7O!@=YwqZQ+4dC+uB_WOJ$nYQu>405XXxlQy^b04rlt}T1 zj^ZMSwAZ%PU*`bd<-RK@tWaNQ{RdBZ8vE2uWxKiZ#Ndpqf=2Wlwr$%J+qP}nw#|ucPBJkjwr$%u`+RxcU(na; zuC5!^tLjP^)ii~GY0xX!spn3(`BBYf`KaIQ4#g5ZG;}T~WT<-P(h{(5P2^80<&feW zG(q#=-gox}7{tv2iJe0WWZEL_*FKTY=_hqoPZljT;oPr=0iF}ito`j!ZZ&1%Cb$Kl${^9A&g2FGY)7g8R z*lKdxplhO%GA3YTf(SQZ;wwE8{oB6nmQdrzNH<2Ghs+B>Txfl5x6&bJ%oJ&jaDW{m zAk}AlR0g%&s*h*r@8REg@wxgvS>SZiCV57x42Ww!mK)5i$rFj-#F4u{xM$zP+1|vV zhT1+Iyp6<4f_@BIu7BAolek|&A1%fD#$+)iP!NOS4EVY;3Sh)2HHy{$`I*$7*VOwalydIgg(9o1-5nNuYE6D} zJUAQ{^X#DXddt+|U1f@H)n>2z20TgJ<*RMdyIIy;TDoK%eFUtCu^y9okAsu!0-^@kUEoj@^+%X%)C((%HzK{BAU@ ziWr}OYN$um=cXmAZ@;ARyKi6lK z>v4{bTAWpfV+7!KvH%f1$IkF}s7{z5XUU8gdIJ^YR$hFge9qCHw?D{rCzYp>N^P|2 zUZogwZuVagA}Va$KW^uk70wLw^8*%Yy>cbAHOcy|cV_Xf2$-0&a}IqvGFs4Dxl+Ph z5<~_79sFMSB^aA<+GEPC?V8-QswSD}CTt}PR4>ta04E*8DLlr`p@2IKtK+~9cA(LmRI$DK0~&1~Sv@-zU!Pknu>6u=XO zB7mK?TDPj)TH#>KWrhtEMr&|qv$?*NxSRR>#aA2eJL@%RCJOej7>)W^7}XJR=`JQu z=uhb~*ya=+gjW630#hS?6MI4voHVj+yaVBuk#u(gV@+8NncHcvUr+<`+msP4me>^u{32m?gUJy3@bM})^!1<7{ckhKG*ekyA*J#BT znHB#oG8PQU_ALj(xF>I;bB1jykDU?B)C-#AF4n~f;{x4u!*^978FUzO!o0_B!*GFO ztp~$esp3>Ay>|0u?KoD;Wf%P=4O&^9M2b|fMFWWIa=9}2vyu93;HsN#pEL77nb^G$rT`-6ThJ@;X(OhjT(cF6x9ER`w6+JfY>U5;jIfR>N&81d- zMZJ(Gj$waEsLnY}6CVQQ$>JV3J|1s?Zq$!^fU7ob@mjF3-DaG?{x_RR8;1YleFtZQ z*D=7>1=;vNbA|ej80%luzjz8&HN^$KZOBMU;#jQ&(B2vk z8b7F1`2?$@5m+=El(EStS%QEtoAHAt2ATYwA`!n>YrGBBroq zx)2L~Aq%vwiP=?bI-(x#F+LJ%){c7R&vbTz|$_yi!Ej1 zhdTW#5#6U!>>tK2V`n{lcgt)fz5&97?=6XV;yYwdwM4PvUuF!ZZ67HF9FbraHowX3NHsd_Nys;iIyt6Z(ctZcZ=HG%e(HdG&HtO0bZLN*3B>?m zW*i3SFNpN$Z>-o| z4W?UKrY21Nt!bSVXN{ip4qAT6D|3J;zyYtXb&+8RsbVmbr8b)1U;f$W#)Dbnt%}^0 zV3)GKu|Tx7>uTWi;Aq;Zb$ACB%;gE8tC@(__f=!@gF zA^oz4=$cEg$QjaHA6ZiVd9ohiQIbE`u@ouIBzZ%hky}KfJ-f;MeR|j%L5bjKjky?9w5%xzxs<+EP8V06PGbpId}^@SV>fWE zxJ-2dE;Z#U@se_*;u-@BF~4RZsixE1nd2LW!PCyZNuspmO%XG_PZh6$iERNm*KRyl zEEBak=e40i6c=zdS*OZoUbO|SE%Z;rN^(P#-IYqfd^3s)) ztCJ()3B5^bdQP1qU{rzR5=+f#wBfBK8hJ>7-)q8m9t2s_Bl}8pQbWic4VO}~wHSa; zUF2pg&qJdyCxVTTa~EZAwSxX+sLP6L08Vpk$@z%TJmPGU)`y{3+#&_j0E;R$>YYLP z3sL}I_d$(baK)zOtGHAFdK{zx6~Nz?XJ9nYrbJ%}HIs}y=x5&-D#(7c@(#a*IhFT&zEDd#m>O=;h1Cs2Q zYu#E)#+9Nd=v~TGv7%jz(X?F#VWG<01^0~;zEB;F>neh(EP_KYD?JrmLH1d1YDB|J zAgx&Y7%^q|0eN&uDfyVyI;!`=wuxjG-0`QEc7@EkKqat`3_`&wjxvQ{)$t)f%CEuY)dE{O-E9%LP#~NpB&9 zQT}(kNy>D}pn>LD%%#3T&`cw=GNyA%4h*sO-p6A{^k?G_bW&wpzz{(f1Thyu@SvY)y~-{&6E_3(*!nr8o#F4YawDRVIZ2lFmAPL znN!K<>6E8}=u*OHOHuQduVh%3&V~L_Oz?~o90#I<^b=|UKaEx47{K?KnLe=mZ6ljg z)}OWfRP`0eP9W;)jZx>l(8DqpMu{~v3EYPDeu9+nY!!o0H|s}lDh=nkpPJ~)FQ(}T z-fz?uPMqgM{fn_ZJAppNNuPe(0!&k3A&&p-LNAWkDrvjSfFugcJdVfW)45J+6*u%lRoO3N*iynKe@hY}(o zu{{V?lxE8XS9XZcf^;BYv_=+a=o5 zaPfRZ5}cp!L*z0FfQK;NAr zGaZ}v`_peuy&k};ddtj?+13xNKYbu8Cn^2jBm!A=%0ONm=-#*zxMr&4rq(M0ge`#& z!qQfQ&CtDp9dDs`7fJ@^inISV*oZf99NcIk=w9zalPOy{PkzF5DYJ|yJ$frr$%nrH z1@zAXd`o61;my~2rw?}&O}50v1%nZ2FS15yADIQe0_0$O(lWO>J7u<{m24+o#EScP z1NfN|Z)uUPHuE*BL>aURJh3idVLt?`AxzW_Y}}RiJTxFnjpp=-`=R*0s!(E@|IPcr zjjU!;4b}G1a`>-jsm3fO#{`*SSz$hFP~`d_TQbbPewGuV%N#pCOgH7n3Py40ZfzaQ zN;$b#IIL{zq8P50Ba&$(%o)aN#m4 zyG_oVbO_@pYG&Mg9SU-Qbq96!`%=zPF3X^L)01C`-#{#? znKy4aY&&7Hqt_b7J@f84V>UI+gti^P-{E@2G%vPmD_HJ!3^|OE_r@0b5Gb6YnsU)} z-5lh<#t@S;GfPL#;M18^?_+iYL6l+t+`J;N3*|MsMM}b$*-D(C?AqxXN&q7vp_OC4 zfH^$3lN2y9zX*dzB1K^RA5RQ=degj(;$exml+kwQHd6Cvko<_XkMY*Y*AnJJx}0ay z7#6T`Nc(vHTT+-?K7eSPv$x=Ukv}3S<1L*)%VXq6q#z-;ALACgY=M3fLVWUUl6n`x zc|G^@G-Ilj2;K24;Gi<6P4XR1hSH`Q8j--Dz=iy*RLpdq^G9R*#ah;w*he- zN#A1U^@WTY<#XEflk+4j?6PX8wrHbkYZwmJNhFu7AN4_~^KZ&M>)}xW-?Rj3mrpQ@ zu0QO2;7K0SMwR{c^Q%CgO+0*WCS@18!8@wg>$&c|w(S+Bx9Dsbo&*Je3tG%a_O(K* zDFY}UeiEdvjC{3NNa0rQI@J8Vx6gn5&R<6@x03`5&U&Z7(8kF z9i?tRPjQzP+Lp*y^q|T;?`Q>VClkc940q`4@Z$uNBzq6hflWxZ?@ z+i03Wz#QH5LMq2v?9@Uazc@I2pGKa5eU|z|Kf?Iy5#TXYcL3`s9q0;ybL_aCyD0pc zOx}G;pW*N@n?Rof)^b_o#8fx(>t2@zoKMwZJ_NO}XqiDX-s7Z9le*iu431&r5j_Pp zHyYWQ=gSdVavRN8E0<#&YEb%b2_Ur;>n%IEuFQ)r8H@3{QB0eBx#@&%|1*oaPOI|m zZLKuRP4a^b3@TOux~`;^cmNOi34APj6J9lEQxabsH0gxpI?pa&6st@`#y1s3Bpstg zOG-}$%2TuhIwxtoRG}Z15)tykJYj!(mC^U9F*$|gIiy`sLT{+#K{@2_ToKd;rHmE} z=ifU|&_(Zys3k_K&YwYTT!?Ydf3-+vITc&E>G_?u^<=yi`V(Ty4mD4u=BzvAO7G~dq*G$Dv1Yo7UE?Y$iL>|99ES-dsES?OlfgTu$d) zczNAA*lE|o8p*|GwLpaW`zI7olG?HE&;`dUEzUGjpo$aLXW zv+xEZJN}-aDA=i1GHK5&wYjdX{@FbH08pp>{=iP&PN;PnKbH_HGN|JMiTg#l)?9e7 zgJ2y0Dc^hxoucvU7Yjr#boq~8PDl%q{dEp6&&V|LQ29ZJ)3|0nbE0{QcDk+Ln!(^_ z%Yqdb#n!695A9ZQjO4*|H&{4;za3&bh?QUlgGFPP{}6`!IW<+*|9K#@e5Pl{O>rh2 zaq93zu;(LL2_%n)*5_--29HMkz4d9>mm|4(oedqphbh8{Xh^-at+r8isZQACHRt8WCQ?V&h!C@1q)!^}6dX zbd_%eB6VrZ8YwD#DggB?BQMtRa(_&qwJ5@nOe~5xK6TKy(;=dhsH+q>)UxYC`E@R3RaR+TC#F(AKb)?-XY zVg|8Jl(%&WC-B5IP9YP>N0>(AS!vsWs!hl5$Z)jo;(Mq@i9QwFImkorO=RH|i3OQP z@DINbCLGWcHe-i>=?^;7SIJ{@+dQ3SvJ;|pTGg$yYNtMHdGB0@-DdO%XD!N7wuNIlf8pKD4w|GWRX z*YM`4o+W)YuV0JvM0Am0-RJ%d^;kMT4rR)s9v#Za2*8Eb@WB7#u&@2q@^iaKB>>|q@=>tH>7|!uO%n*1rl|BykP+1`q{Z89Q#Asv%vd#R)_g+m@u3Sx%uiZ zaaXjd)3w2PDM-TQqAHQl#7Bl0luB0#Dm53K=J{8_dUsP2`0oYG(6e0Nz0<$l)WEh_ zJag06E<8*i8R@g>d$>grk9$4;t2h4Au=E@3#$B&GS)i#YUPb2B6v>v}H!Lf!`6D_7J(L|*{HHIzcp$%bm_3`8UiQ_}TLgO3sXW;GBz z{ygKGK-t;Wmv6Q0z2=%tCB@l3>W{CB#Zd)OZ!6JO};I`}h+e*!w){vhAyuxO$Sa<3Bly}q{z-WS-N)oII1mXAU-ZL(O6 zeu&a@F5vB{GsaN+)&C}8JBp-*52s$>;;-|9JY9}n@kWwUeyS(W!epX{TPy(arkeg< zN)YITXwJA6kjZY3m)tWIjk!LKK|8s>rf^YLrj-?$`!NEwq8+Pfn9-U6`w&4aB8&mj z29ch04+{H^Vc}uH+H+DUGnww7NRr^H`JlJc?tG=%dKLqjYWlYxuy4Cx24!@u=;fF1 zFXtyYbq7qvNTQrV^Qa!U8ZyqC7d@t^OU%9=iAaSmc9Kq`?+763wHte-g0M(XHJInh zL}{2sPHfbZ;)ueBnY>xS?0nFBlX213*@i-3JA5_HJ>$6l(zkGxBR+>Um* z@fBW~`itd(isg4f4!`4X)Lm#RX?dxu^85>+E_qF4odzI15x-#(C%uvbp5Pi~C2LvV z!v{$Ra&=m3Cb?!Mw;zG^5TU!G zePBr_jkyR4C8mlPB~d|^jJI4H&vY}>2_&+_?Y6voaZ3*~sU3WJjqb^gT9XPwez5ad z0lgQv9jQC5#U42D57MOKt{&pDH++5{) zIfGftxFUhY1IVKoDCWQoZ3IK(4o{ZxHRa0D4>vsRs_8Ks5$C=Ix)XCUtjwIYtG`_x ztF+?dl@qXgHV<-R33@#Ffm?zVA(gYFa5}ve>5fqvP(k8TOp^v3An}Q0Ek`~0?j;lp z+@=BRgvRUDtq-}-V+KOpN^!B&gzE3BY{QHJL%ET!SXX<=aeM35pGqW4qy;-xtb~w5 z?x+glFq~=_%??H*Dr;^q0(p9rL)@eM!L7Ek*(eJd1f?}Uzi8-=Jl#U~wkBr<#PyKW z)sOSgeE0Ic)1PO|eyp?~1Ni@n%JBw$|IrTFlGaI^f>WNaZeL8=HfM82=AvB0DY&HXlo96Py&%1fN)ph0?L3Px+HAZ1u81)V;z28f zhJh2Rx1gSIPF)dA<&-LJ@@FrHNczS)WKMHO2XnVI*d-3IZ)z#gi=JpJS~s?-@L&ZR z4;&b{b2>l1&bi_%6!hSqLDH1!(qS;q4<)C&S62Os}q$G*`Mmt!+YIieZ5 zSXWQ;hQs0k7>m^Rse;5j&QpYMT!r#P!>Ev*e9*V3Gt$XC(UI z`CLd4|w6QH9bW4LFZu&|yaKTcigfl2?@kRJUU&jC;*#r}w0_*K# zztm2xw}cG(Sg65ev?zcBbT9_t&FJBWOI0zI+s3j___h)Lrg0qjLmyQI^ngUI&Ig|U zlpp7~syK8z!@L)gArOOPtn&g0F9wr=y$$Y(s01Z*# zQiu)E+v`SoiMdI_1;ayZ{By55cwemWB<`1)uEUU^P=4{OE10$NBL?U)-oiPe%+x^J zm`>gO_;v>$IXQYo`Pi$)m)gg(%OO0iDouatQxI!`P@t~8zzJwbFy*_5G=0TO0lrHX zl`rD>c6hd9np8u;vQ^JvsPbbEC89b7gk6AnhFkH9>NPADQ>4kfqPy9&>ls`oN3lOC zhdRVJHKby;?wbv3ClY8aRTnDW_Ln>%XQz5REzC@~`HK~LRcuv{S0kW~!6zwvP7>-N z6VzJ5z29w0`P{*!AW@+&pzovpyE6(Iz&cfdZMD2a%kwD)Pe@gD zf9u!=vHI9yApHCklQlM@W1WdwVs0O2Agc4~AoI=(1waYy$f>W5l-1_bFaPwY1$Sch zCqTc;=l@bA?ovQ}@}s4+USSur3jVJFPIFQK88U$P4lwObr^^SnH?q6Kq${tg_qDU5 zii9gs39m}@c^<>j%E8Y6;f{?}(ewq0rmX~lT`~ibaCLD%>{7l%vEYr02_p3A<~!&* z4K(m~<8Y|^ml3(&gl`_7f)l14Pu;%_z=a-mqzeLKzADKAU|XJ!z>D$lm74b5Uw zXu>h~4~Ir16a@g{dTN?AWQWxNvuU-q5sj9KC80S%?7+>6W+V{X4=ADOShZ31St=%8%7_CxLLClEK$X&$Hxk8n&lXBm8nke8B#-gm6}51UspnG<=hpwWzP}V z&`*jF;Cvv2oh}3YoJb_h-4aweizMzH80kZ0%v3N%DIcR)>{OaPSMs>gN8|Mc-(5gR z7r?3#1p>dm&C8mpwCu+RzNBsIex0Ir!w2JWMYSspAv^wl^Gjj-S>;=ezWA|dP+Nw4_+H(wL}AXqK6U$I13wncw#X%#d7kgR@Di{A|y zSt$dy4h@V8%Niw7QUT*ljoL;yn`^DVu?@v_AV*A!H!yNkCfxIJN}pEb zUjJ`)5$@AvU67gQVyyJzk^}&^^DzFdUJ!8nX(iWqeiJ?6q4TAMO0Cz38H4&6rC}ei zRy7Msw0FbXSS!Z*>`H2(eg&8|dB)d>%aI;aDoE;F;$^G7OMz-^^ys;)Zz-;0m z=?t9iHj!oTI|^3=_&Zd=>nN|rDn|o?T0`)I6o~ay^6Muu z>q0tTTGi(3%wXV%6yN#77(%oUu4OwW?@6yR;;ic}R+gQmOI&X|f=Z`Fqf}5vEc_ML zqPdv{{QzB(0DeWcGY({2UNpT;Ks;F#M7ce7I;ShrgD&AY;gd0G2RwDe)SIW6vODC2 zJ5Yu__*b5xn@n^#|G#097oslDVW!%()tRd-SUz;G%{_Ax(KyI^Q16#YCxX=0>6X#oFYh%2OL{Vo!`c07HJxd-5NBp3i5*k@`rR=mnZh6k*P^WR2a?3uz-x9*&ScIn$i51_8;+b%%0 z|J9E0J-F^iPi0}DX_sq*zbnt~jTa^=Yhu31dJz^938S8H14iV)6_$f+sI^ju9lB9$ zKO5>@u(YKhE{U;0ET#a-a&jV-%Wj$fDQrlCx(3GZh#1RI+YbZqVF{1VuXga{{+r^X zF#LI@HJ4( zk{p@3Q{Q=3Y5Z06-ZX!|I2WyXkstQT7}iV|Nf057*hxH#P^44vOCrzO1nY*hE^Jjg zXS-chZVU$1_LeRj>bXT`(SE3&q0u`tvDH5SJhd-`eRm5zl!NmixfUOhJ5Y4LxM{9OzHAxXN;({C{66&pxXc~3q{J7G+igdF0YUWQ?py%v?0^q`1qalC)U0JygTfi)JaZ2KW6v}6}Lw;onj2Kd; z^*9o2y+;_38oo_Gn2DU^eFIXpyW*i>Sx160xy{2)1jJ<3rf-P`r9J)#t0nJ47Va=l z3LBy^wv!=NT~toXS~`HgX=gUb3ap=sBlW=kh6@-9n}k}fT3 zkqUfNYn}bC4|=K~w$iPW!|(ODp3~WL(8Zgkr)x#EjJJhceqg8w2{VP2wwT6vd{n5Xc9hTJ-yW_5ZapNhm=QO`3R}U3ZRW z_yy3xwjqHc9=PSd*1rx-=OMpx)DC3n9azEU_)}`#b+p&))IZ1}e6UmQp1wBC&WBLZ z8-osOj5^JXDYhZH%AWSrj+!oC4YNpkKd78Fos(v$73!1@-jJdrmE5J#Vr9|*bpA@gL(r+4yQ&w2#tx#on+$M3QMqJ#u}_0g+_ z3QJdk>sC!)j3>mV3r=AR4x*}pFzk08frKjWmnVIR)Bd~ z^(}!#_RWC6JVBSzDKOVi++0?=J^^%a7(5}aX^I5ufpm4-6vB~K>-Jc-^gn3UYo<1n zt&B3F9zDBM3;mttbpm`3R~tACS#hh%?Zn_b-#$Y*r9dPpj#4^qd!4H5cr^7n6(=8# z9;G?%M9jN7K2Pn}R+f1{elx`!6FoYZ@fLB^{e%r`6*T4x*CHF4)!{<1RXqY%Q|@Af z6G_T@v|m!XR8G-{3Df~$9fBk zp1oEaL-qO<2gnC94JffzLe{9>7kl^UtjE+}c#pOuVNb&X9V2A~_Px+badTJ9SgrKi zP8%#7y*n7R`?OPctqMN2jM0$$FLIs+9@vQ{>a4b9NP~LLUUjNAw6pEinrW0brC+L<#2Q|H0u06hIB z@c*xEsUaSWyLvtN*Bcd0xh?d_WkY%p+wDj9QRsU+0SfoI#QwwUXU4e{2M*AcckgKk z3KwfXE-Mn1@yG4_x%zCR)$3#;@DQsr^k~S5o{3U6?RWzF@t}=nWdwk~k+@i=fM{@o zutjEB57YgsQXktMmI%yh*VQYyQMV>g>&xOaW3zh?d%`WZ>Q6ZUODawNfVcsJtGD6$ z8=i-r-YBst8C#c)6v6RXs2IywGY%R4)1|FLpfd60u7|q?$UD&8x9VW4poY$!?9&89 zQn!p*maOq#2h{pkI8dEw2G;Z;%GZX zO=;aA5YsOVnsRD#{H@7sjFVHt{bY7aJqm(~zSlFIK)t*}cgY%hSzu;wSzg13+ z*ffkQV^MVZ6yZqkjH%JgSx>Q@8yW9(%VT{Jru>}i3f%U% zl+|^!$?s3{4G=GsiW!KV5f9!jyXOhn+vQ}JlZ8C_lr@!qgu!$mINBuSZo0`Z52*pN zUR@M+1E5Cy0k?qrL-|D)@9oa^qprQsLeEGBk2~)2Zkek}(cRTtCh0wzluSXh{tuQG zeTn(9Ru>) zUa?<7hs~@w$^pLxNcArg>F$cfN)~sF)WfhVMqqKHfi!gjbzxrIISu4H@go5c=3IB; zm`;kroXS%1le5lya^^x&SQ|-fY;sj)4Kce7VevRY#@o=_$OvMavtSbdPu!*K5~8De zQfAVPM4`iz!=NmlZ6JO0KjN15krUEmTkqlXBd(FWp9eu*tn+7~fK|Gs)j{2A9TAs*JLDAHjZ+bmtd<+NGvoM6?K%zLn${F7sin}k@t@?&vj^94^}sA}I)Q)Ljw zXj-y^O15t+fmnfXh56o*AO`4QTl5`1iGGr)e?DH0po~13jDmeDFS&&zCK~7tm* zEKtOc>GL35qP5^FJkWZGRevBCdfrDU^cqXcQlj9joQ`74PqtORS213}gxmUbU`-u$UgH*J(_Af16k zEM^+%i(~_zam;UKG?{7~>B91Ia_p|03Xmz?Cra8QYGH;W*daAS%}H*M%ZP#1k!uoe zsQh`T41iCe|8$@;-mV9}B)P@2Ljhz0#ne^zE+raKd^ZligH85dDRib)oTBgzmk{@P zCu9xI39fJQL3G^)tVXfn2QzKfNFAtiErpkr2>ffIa@4nH|3qK_TW%F9SUR|NA_yWSM_+~^a+MxO>^VOgHb)hhysr&`(of9yG5B|RAlau|k;rx77#4wVq8lXkW^%Z&X#zr?lzfUyXzFo+HwqCI*yoNlZra^3 zoQO<>t%Lzp=t4@Ds9(6ets#THrVV*c7)4dkmXe&IfOR5cbU^_?rDUtJGzQf)f=qV|kAHFlk9_`>f< z3ybTR@0XaV$4b{PhG7l(LfPR)kPx+4CkEuVKaoKuD+jJT+=fbUISaS#+STw6Gyo7Qp5KUyd;^#pgX3-J+2%0{-YX>clBsJ^ z7;%>l%`NDyZ_n3)gRv%chmUOmJS5(iwrm4Y9{!l)y*5|_GMTiL9r)jtiEsYxHkYBn zzfy{BL~>r2O;P9>mOX`YH2Aplnzlag&fgwSh?TehRRiqwP~UUwfUUo5pj*QJz399z z9LSsdimS7H1Ve0iAp-8tAxWiuLI18?DV_4H6H880@8F*oIqgL`%ioy}kauwiFp=OO2(`Bo%2I90Oq&-7zgkxpikoBO z|K&4e4Z2yrXuddnuxg=YguCdb@exm4Abom|krh}hA1SaGfQKW^-0p_9MH&VSBr zlU!l_fk3#A1NMJCVJLciHPjH*_}kkLzzkG%0_s0Z+?9~IXF)CyQP`Xr+CqsAQg5ns za#9j*z$Q&you}Xf5YV%fL1&8z9PAfuk|-GSdEWy`H6wBI<>gZx?k)zaUJ#|eTS8Xp zByqaEx;(iYCYTq7?$jcU_u<-57JmSKd|2d$d0O*57rY%hS9WB7(-CPSrkJBwuuxjq z7utb=+}a#)hj#SgI9PwHT>ZE=iXGavu(kA!Qn&{j;=z&NeR#)E&Kt6b(u9MxsFTp=({dftKCtR~(5u>2lfrA!t)sZD?H&djx z#(2BT8|!cBEnMVigF^F+$DYaa#-=)^E9^cqP;>C3r1zv&c}>#%2Umi}=#zz!N>>~F zJuG?9j?d+e2@1&9aQRnM3or4qw(UR=Ls$E9ygka={p$!BFaAH6n7|k*9NsqAf&{%+ zSv`Z0&FtYYd)oyj#f&kQGx_`U;rl!z^N#<*E>WZY+)q8LvNj6;4083(45&ruZ&-H> z$awy*PYGGNI>A02=jP5|$g0Ec3!LTs=^^@l7mQS3OdY#f{9xs@BCtkZMZ-ac z^3-*}$~~9d446%+J~3dy7d-azZ9$seaZc5xFVx$H8&6>9r^2xq{=M|^Y6GhyAs#>$=G%DON7~K)C6XKe1Vo0<)+0}Z2E$Ehh#W5Vi7>$+@(%xmcK;)KF59e%N zgSfYBgiRQPI5cpn)xKwvK%Sg!_>KI(KJ};CNQ!M>N;kqn8=GnIw>>&bEakjkafU1o zC;}8U^{CLsS4#!;Mpp$3@v~`;kNKUmf453`Phq@U7kd`GxuP=D zt}FynMKBssVp_$c+nWY(EdW0GkBVKfxtq5dOC=6EWd%Fb7{fp0U}iF(t+~CPulLgh zpTBQhSELZ3iZ>$d2oz0VMyWQdh+u{`BcTMy;vh5w;Dx+Cw$CfD1^lVfV=wEpnp(&{ zkzH54|c-1NGH6MP0(N6>7GU-A!g=fFwGQJI?rY z-*`O1xBs;{3T+@az9{h&MH!XzSt`FPg|?7Fhom{}jS2_(EjcBm7>HtDLNp6;fw;jL!_h0u=zpRjzA=cUQ1Mr+x6|15;AvYdC(TpQRIAhMJa=x)EEayn z8{3sPnoIEbZv=XDqHMT*J+&R{vFcDzcA*hA3mgr$26c1MCp>P&d*>NW9Uy z#yX~OE3nU#?+FxvIAVWI@YnR?{-T_13%D~+_R;L1Mz{zm-N}Lyp7yy%GN3{f}J>}e^1#Q38tumR4@x~&-yghlgxY& zF4?@!IJQ}`LPa{s1L_MBN(V6aHSoiuo8eK$$mpq*nnd6T7r%@+`P{p=t4!!fpv36t0(W5+FySYNHBP^i}k<)S@$ppq0w<0PIcrBn2il2yg1%N zUC=r4wWrh}aC_!gLr}Q=8ot8=J4102=d2vl+ z=dhkmZiQ|rgIrcwO$408ZDhl(cLELO5#n8D9{ZjO7b8W*Q8-jh>gl^Pd5)@NqySP~ z-$ABVDssau**Z7FYe4Iz;q3qS(X9m$84kF9+POgmM6G`ptHI+y=SxLOktfw~*gjSb zKG3gl7IdRF_I8nxAwa)cK!QW}TH!bVI|yEnw5a6;svrn0pA5+<)8)~I zr!;gx^)v4Fx5jop0{+jO1P9OgTVBt(0-0`?W9yOEVqfz%TFkUs*0?unxm6C>Hq47S zWX@(*!@$03>4NcH-FKhU)*oaU-_*14-cAbf1UaRaOu}clvZ&H&lD_T>y8U5yZ6zL}KMD zilq-uR10t6*D1GRK(TwT!ecucqs}Ym2*eSK=pA{_Z5wR>f(k@XdfpOLUdTNb7Of;o zNhNMH^cr-@OZ=8NnI|}@L_EV7Q7IR!(~=X@ZK%fkibhGOQY#rC-q^W~EzA`irq=&^ zlm)D44qVN8P{d}U=9sH9rBW<&wB;|o8&ATX+(1k9RBk9U75H-`dQE0Zl39eHGo$gg z92`dfPOlw*G1UPQn*LKewT6Wt9)y#f+n9^tZObXFE(TV$E>ZWP9@zGRlFd~gI8Vqkj@cArp7hX%kiL-S9u{Q4euTrp`K*>ryTwi&D#C7 znjPs7fmjS=okH(;{@yfB7(4hCSe5pDSv3vtceWRy#=8pmNYoh9MN`<(4$CszlhhCi zZ)dDd_|RyN+M%`7FEUY}-hug_O@`;(;bta@oer5@{86*wtPtGDxoPBleal#0=iAG@IQ+-Oot%_Qh3EFP@m4GTyG zsu_;%MQN?klhtDW`^+OKWO?68s*n2Hk^BZmfT*b48U$16GJO((2j#qUD|W^l;9nES z>FHD+W3eK{JM6Xv_}?}NMK|3Gf}jXsU)5)YrDBK-BIuKMe$B^L%7NI7NMVuWfc2Zj zlPDJd5<=Xm@X3J+l!<1zVPgm^kVt3DJ=_f0T9X-E6b_7prF*7cHUfM%5s~FrrPM^d z;A7I0;?9pN_$}A@f3;!`kJ|N}6~}OhhB2oFGEZqc!777s}L?7sFunhVJfXhgtX_ysNYU{*F$ATdLGDQ|S4RKXaGB zh3{&P`n+Dh!>4lEomw@7lpiDh^X|Kh@zGHws~O~ZFq+lyq{Q@NsIu@Z(udrG>5*k_ ze3oK7#;)NH3FTUDYyZpUHh<_^!0r7^HEV@~e9q1MD)% zNxL>xV->Y3?2KGF$%=^BAAkqka)LKp7xG*Dt6(uV$@`ye1u^_#|L!aTf7|!=A7CNi zioJxL7#93@#(GCWi`XB^A+CgUlMA*v-el})Bg~3ee9+-YF(h{5X~L+s$YiW;rJxwD zAw?nXlVQa?Tp$&&AMuCKXBm)*IL$#&m+ zp_3q60rf}cSUJO4P9iydSTgZi_I=XbPss7>bT4|OmG$$Zc=+UJ6iluWQ!wOyQA2;N z%p8c=^556*o5gwK41_2gJprio2>(~f`ofm14<#qL60j>TWM5D-!Ga}7&))yWXm|ng z6v0fwxAW%wBU9IkWMZJ|52olRKiOGFvY@J!vOja?P-Q8~fo{ll8_$hX@8r%ioVygL z8b#{)mqAks&2)mJHF~Z-M6}F(0@C)YzRpW1Nd!V(s;Z$>n1ro*e(Uk%VQ6bZwT#n9 z>*KH;_hpEAFMxmiI>l@Bndo5gA<-@hr#P7w#mw<|KK8*=KHGaVa`L8LUW62~%q5HW z%aw>2zl?4cH1iE0<4i1z6H_f_l!c5HMh>ET2!2n4QUJ^*M zai^hj;BZ{=&}dmsVcLQo?69>16bGb}#rMw8HhGbL7ullI?AE7J%Sg$e-pN4TF;WwI zp8KCaHcqc@3RX)|hLjh9%JX*TFj3iTJ}3@hf+ep`6-*s1Pa9IvG35=X z-d^FVl)WyQgHSIsXC_{Nnuyb`3Ay5ZZCgS)xr_s^#Dgx@69=F4BH%R=lZ-p~cNkso zx22p~YJcA|YWE*x01wHlUB8RA0V*g6fYqwl-rP)O(lc~aymVr!V*>^MVb%KUyuZ`) z2O90zpDd@<@!YWr(djM>oS}`zugk=q6Q@T&0f>HlI>?ut%yAa>Z%8 zKXIvG51tV|D>jO|;{5nk-$1Ylt^QJRy?PMxFiNUcFq$N+vRu8oI1%O+g=!JUSM;a= zA8A4a)Q<+z?n1qada>FxZ-XC({_;eSlRt#t#LSn~!Tq335%`ut)b-I|Uhwn<2)zX6 zzehevF0o9?aDiBaz{BJ3wO}q*VR|oh3;#PZ3*6s4uH3q^-@?Z1RQoAQ7X;uT*I}OC za>*IXG8f-@eU&<%>`ZNwQ4`t=)5(}P{=R*8pc2%?0HEo1l-0X{Y4hDEg3hulfCkQJl*eAxJPu#UlLK( zLSO)~N9;06^rD~Yrs`ZMe#>>RIlBFhd_@?y+*9SZ?7T!ufC9>MkN6l5VHCr=`13T$ z4^albLlbNf>?n5p*LuJmdAl4Zr^a<5qNM}MAPjF22B5Q8Nug=MA6lwk>y3YPj)3hx z&6>L9{g!%?gbC(=iZZNvd3FEs&i!wYc2X$Qaw9Rgz`C1q1Kg*`L}^))@*IXZ47|P` z64fsS!G1?uh|A2||h?v`>|GI`}X1 z)F5q7t9_^!7$k2&B#ecg=^%oEL>;r63^MV3-=FGeCNH?u@JO7Up7$58^LFM^A0ki> z)h`M(F6$5J`RmN->ZDB5nCf~%ctHKxHY?yHHGCGb!L6r<4lOY93NAriI1-?X9U}v; zq68}vd&;*KkYsb=c25D@uL)H0F6}tP&zF?GKU?#GvjLz zCH;Kk@vn(d5)juBpKH$H7mB+rzKGh$-&r<|&OK!H(Hqe$Omg_vO`}Z3f1Leb zyXMU3WP(tJuL&#YtHO+pZ+`zf=Fn?L4uq0-;h*zbV;%POC~I0n+QiMbx^kdc3WdoE z5m*N3g@#1wx9Edb&vKMy*Fsv2`!Gt}a!*f#7KC#5b+{TUSvpx(=cA#$x`1$!GS@dk zwEPuC{+~@|6X)S&zdy~uW+{+nFa30>7XI|mB$)?$OQc2KV?;;4a{~T*2vY+78Q_m@ zq^@CvrgxzrLio-PWm_0T*D@|_(rm_;Kaw7nx(zHy;i>nNrv zo&pH0uc?6?bjM~w29@5o9pK%W)oluD$fa$XUt~3Zl6Ki#10ffp5%UlIV7;_%;c30T zodx_~h*UU=X-X3N=~ln!kjz;&H1yv>aKJFZ7+;SpNp~im0eR|4&h%-HQIoMLS*)+l zldnTg4xyGRWI6d0qs;hr^T~BNRH&Kr1xJOTOPq;!%@5)G(X+o!=2L*h(Gy~XSG=gN z8yZo`K}Ctx`vdE?^6m&JIj0qf*{ltNKynO3#18mw2Hjt=@>G8ndoBb=7MW^u^H+K* zw1j~O&1?#}$v55n1TCBNw%8wb+MEaeI;wjE?PLm~>QD>_D23jg=`gE(>!axIIKK=u zR{ib#1ToX34UbEv`d8Fhnhf+1C*9=<@R6VochMlk!tD?VpTg|F4ZWI05J9$k5?S7- zwBPFvVb%R5>4W!gTU)HMk|NUxfZ*DgNuvk~(DV96f(ANNaS9`s{nZ#=FARnIr+oQ&E`FhEOUw{|epwn8Czsif0nH4uR#}m(eSN&H{$f7KhOV94e2I zMkZIQ(Xq-QD7xsjMqHq~ibFGn1$6B^2L-h^c$r$);Ol*HkQY2pHG7ry z^n?Gbc1U+=X_qZ)&M~+u8uULAOHn~mVie-BOUhmr3OD`TaKZ$p6tudA&nNgS4+qrK z82U^bkey9T3ZK$dx^C#}XQ9qicdWPpJ5(%xD$gM&4^)feXccTU982vv442n*d%V_1U(2H9e;rv$som z_{(w{YQ~m5CP*T7UwpP^_%s3eu{*d;1_j{}gQ@EKS%tZ|;~d$NOF;WzN7P z!5q4n_?PITxm)G(m>&|Ne15mT59}+D>0d1>HYnEE?Gd_Y!VI(;F4Vfgc{;hpVbD3N zSCcaVA?v@rVpv4WldQ0QCg9C<-S0RuH~@Z-1k7zi3VW_-c%%rXiXtOY=A~uNnq$;^ zjNb0#*8!5#E;6Ve+acXl22@FgvYQT6xgS4;;!sMTKdm472=d=`hev$xfPcXugMVj- zly=L*$qjt`h>0G=vq*R48%Tfv_~wzAaHf`!c^3tTZ#M1kln5YpD_UIJ7yN1@%$7N2#)v!&Tr-I!f$-iv}2xf9*3$B4ow5Zp@)0J=jI- zM`S!*B`3aN)PfuW!7^vtu5zCm!OTX`=^qI|Gk!M^(XMgx0 zL%z9RK}iGRS~p}h3R@VaMjs3wgjx6$gw0onx)kT{Y3pK-YcGmncY!n5{-C+kYX>xDYJ3ZrWhaZ?1%Y&(V}1R&j~`5k{AYu(u&tI}HERKlPF4nZeF6Lf{=O~A zCcg=DSmz6N;B60A3ck!fTEZYk2(KrP=hL>P6g zhlpi(wxxfJm88%^m=O^G(RHgUT1oH zZI_dCL(*RU$hMjCvptrA5`tGGW=LcoeXuoXI=4`Ak0Q2QT`im$16B9&0gOV*g!aM_ zy9wtWSU_t*Ke&I}9xqb(>0dJ|pf2DJzqT4VV@QpM!|Ex;ll0Q*=@yb634ruzECC0) z6i%gRk;){l_mGFe7k$bUXrjO+h=&@({>Y>roRhWtyyd{6k*5a`HQ%Jwx4L)WT+IW& zlBX#2hWi{SdW6-xq62h&aV*@Efq=^v2U&PEBvD7At6lU)r9%P-t{TFI^D;|K<l^Pr-V08o&<_WN1^cyT#Sq&Fp<4M#l}u^Z0s_{-TGx+Gl@l! zZQ-d74H+GPUo-a%g~qhy@_zjBkLpIeyf#ORf8H=FX>s#==;&fy2*9^7G$xXWZ?EU5 zrz9nqL#x)Ri5#H-8ih%-{M#%w%L=`3BNi*@E##XRPMC<(|GQSfq-hM3uW;GzRiDWO%`}LSRy{@y%R14v*d;JR z=^&_djW4J2cXy)3uGW|NDi&XT@rjp~dC2pYJYL6hhA?UxL1<)TJs!Q*|2Y77FBp{D zLdAd_mBQy(ka6U*y4UR-|b}COa8PU9+6ZY`9(i;`3Xazw2q_KB|9pv}z@ABp}-hnd- zaod5<`_&*oUkeUM04q}-!zvaf(pN(m+r)Z5j2mO7))0?b_lY> z;--J_^VH;o@UuSR1lPQr8N(yAO6@W#L0k?1@GX^HoJUr1GtBWpP!u1NJQ?3*Dq-V( zoMu%uy^2TX?oYxUF)X*`?Z}~l+zsDYlt%A>sv9J3XrFx`Y9u`Y>>hEO&|HrN)V##Fv`~-3>ODn(r88?M=cNO6^FPR88mkEurTg-Wz-l4bAuHH|eL7Eo4n5htv zz@5J4w#J2aIK{ZV*7yXhLqF(&NRQJEu_u2et!73oR$0+5&?gw6ao)O}>8HA_b;h)W zWmh0Ylu86e*Qa2KynOkV5YM(jR{mSAXmyIO&qc-+jRNU{7c6Q|y-$zP@#xDMVK7TE z-^oBES|w}+kf*Ucf;AP};VqnL*L2^9FH%ZGb^Hb#7xb?K|z{EH~NCY*P?1$AIoV=_LxczKc*)Ixa>^@5_Gz|<2T6nl2!LLQ{v%DPL|^)q zMy8@=h(uTbHufxbFH$9;e39hcTxU1CrJt`_+rF`Olx28sa(u3;R)+rtl2g znH=4IkC0%ggfOhs1ue0jtS^blFD3o(YLY;uApo9eSr?rO!kcjAEXK!fZS`C_TQH%# zL0NyvX|52n!AZvkX%kU4CBz_2k}w5Vo97GRYIwx#GgmZLU$EphPi-G#oFPOm!17&4 z;@{&R3Izqc4yBDoC16ZrD4);c(hddSZwIY<4cfF7)iwuWgvb#BlC#1*&flzcP9|P4 z%*Rapp@d)wU@G?z7yC6^h%6$f(AGYFAGJSe$}QC80_&~l&1fP!cMjmFy8Z2Ys~uRL zc)9r8rw|oQ!KfUtd3U)`A!jeRYd1dQVFru5Ru!8+1#c5pN5IJ8WNx z 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

%!P7?zlZ|S`L;UYdbsNggS_of0SF) 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

hm;=<=^nA_fJbG*_Y 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 z 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 { cycle_track!( zktrie .update_account(addr.as_slice(), &acc_data) - .expect("failed to update account"), + .unwrap_or_else(|_| panic!("failed to update account: {}", addr)), "Zktrie::update_account" ); From ebc5a4099a00031abf9a7c3c6df81034ad8e3fd9 Mon Sep 17 00:00:00 2001 From: kukoo Date: Sun, 16 Feb 2025 16:27:58 +0800 Subject: [PATCH 26/33] Lido Gateway Audit Fix (#709) Co-authored-by: JOMOKING <83915728+RedHorse823@users.noreply.github.com> Co-authored-by: vincent --- bindings/bin/l1lidogateway_deployed.hex | 2 +- bindings/bin/l2lidogateway_deployed.hex | 2 +- bindings/bin/l2wstethtoken_deployed.hex | 2 +- bindings/bindings/l1lidogateway.go | 4 +- bindings/bindings/l1lidogateway_more.go | 2 +- bindings/bindings/l2lidogateway.go | 4 +- bindings/bindings/l2lidogateway_more.go | 2 +- bindings/bindings/l2wstethtoken.go | 4 +- bindings/bindings/l2wstethtoken_more.go | 2 +- contracts/contracts/lido/L1LidoGateway.sol | 13 +- contracts/contracts/lido/L2LidoGateway.sol | 15 ++- contracts/contracts/lido/L2WstETHToken.sol | 25 +++- .../contracts/lido/LidoBridgeableTokens.sol | 6 + .../contracts/lido/LidoGatewayManager.sol | 5 +- contracts/contracts/lido/README.md | 112 ++++++++++++++++++ 15 files changed, 172 insertions(+), 28 deletions(-) create mode 100644 contracts/contracts/lido/README.md diff --git a/bindings/bin/l1lidogateway_deployed.hex b/bindings/bin/l1lidogateway_deployed.hex index 6033c4702..16f3a6fac 100644 --- a/bindings/bin/l1lidogateway_deployed.hex +++ b/bindings/bin/l1lidogateway_deployed.hex @@ -1 +1 @@ -0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063d547741f11610092578063f27ebced11610062578063f27ebced14610574578063f2fde38b14610593578063f887ea40146105b2578063fadcc54a146105d1575f80fd5b8063d547741f146104fb578063e3b523e31461051a578063e8bac93b1461054d578063f219fa6614610561575f80fd5b8063c01e1bd6116100cd578063c01e1bd61461046b578063c0c53b8b1461049e578063c676ad29146104bd578063ca15c873146104dc575f80fd5b80639010d07c1461040557806391d1485414610424578063ac67e1af14610443578063ad960ce114610457575f80fd5b80635e4c57a411610173578063797594b011610143578063797594b01461038357806384bd13b0146103a25780638d7601c0146103b55780638da5cb5b146103e8575f80fd5b80635e4c57a4146102df5780635ed2c220146102f35780636f18bd221461032e578063715018a61461036f575f80fd5b80632f2ff15d116101ae5780632f2ff15d1461020f5780633cb747bf1461022e57806356eff2671461026a5780635777bf501461029d575f80fd5b80630aea8c26146101d457806314298c51146101e957806321425ee0146101fc575b5f80fd5b6101e76101e23660046129e2565b610604565b005b6101e76101f7366004612a96565b610618565b6101e761020a366004612ad5565b61089d565b34801561021a575f80fd5b506101e7610229366004612b07565b6108d6565b348015610239575f80fd5b5060995461024d906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610275575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a8575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610261565b3480156102ea575f80fd5b506101e76108ec565b3480156102fe575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102cf565b348015610339575f80fd5b506103617f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610261565b34801561037a575f80fd5b506101e7610a1e565b34801561038e575f80fd5b5060975461024d906001600160a01b031681565b6101e76103b0366004612b35565b610a31565b3480156103c0575f80fd5b506103617f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103f3575f80fd5b506065546001600160a01b031661024d565b348015610410575f80fd5b5061024d61041f366004612bc7565b610c21565b34801561042f575f80fd5b506102cf61043e366004612b07565b610c60565b34801561044e575f80fd5b506101e7610c96565b348015610462575f80fd5b506101e7610dc4565b348015610476575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104a9575f80fd5b506101e76104b8366004612be7565b610eda565b3480156104c8575f80fd5b5061024d6104d7366004612c2f565b611018565b3480156104e7575f80fd5b506103616104f6366004612c51565b6110ad565b348015610506575f80fd5b506101e7610515366004612b07565b6110e2565b348015610525575f80fd5b506103617f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610558575f80fd5b506101e76110f4565b6101e761056f366004612c68565b61120f565b34801561057f575f80fd5b506101e761058e366004612cab565b61121b565b34801561059e575f80fd5b506101e76105ad366004612c2f565b611330565b3480156105bd575f80fd5b5060985461024d906001600160a01b031681565b3480156105dc575f80fd5b506103617f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b61061185858585856113c0565b5050505050565b6099546001600160a01b03163381146106785760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d89190612d04565b6001600160a01b0316736f297c61b5c92ef107ffd30cd56affe5a273e8416001600160a01b03161461074c5760405162461bcd60e51b815260206004820152601b60248201527f6f6e6c792063616c6c656420696e2064726f7020636f6e746578740000000000604482015260640161066f565b610754611780565b7f8431f5c10000000000000000000000000000000000000000000000000000000061078260045f8587612d1f565b61078b91612d46565b7fffffffff0000000000000000000000000000000000000000000000000000000016146107fa5760405162461bcd60e51b815260206004820152601060248201527f696e76616c69642073656c6563746f7200000000000000000000000000000000604482015260640161066f565b5f808061080a8560048189612d1f565b8101906108179190612d8e565b50945050935050925061082b8383836117d9565b61083f6001600160a01b038416838361187d565b816001600160a01b0316836001600160a01b03167fdbdf8eb487847e4c0f22847f5dac07f2d3690f96f581a6ae4b102769917645a88360405161088491815260200190565b60405180910390a350505061089860018055565b505050565b6108988333845f5b6040519080825280601f01601f1916602001820160405280156108cf576020820181803683370190505b50856113c0565b6108de61192c565b6108e88282611986565b5050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610948576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109727f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c60565b6109a8576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b610a2661192c565b610a2f5f6119fc565b565b6099546001600160a01b0316338114610a8c5760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c000000000000000000604482015260640161066f565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ac8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aec9190612d04565b6097546001600160a01b03908116911614610b495760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e746572706172740000000000000000604482015260640161066f565b610b51611780565b610b6088888888888888611a65565b610b746001600160a01b038916868661187d565b610bb38584848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611be092505050565b856001600160a01b0316876001600160a01b0316896001600160a01b03167fc6f985873b37805705f6bce756dce3d1ff4b603e298d506288cce499926846a788888888604051610c069493929190612e19565b60405180910390a4610c1760018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c74565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c7f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610cf1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d1b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c60565b610d51576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e24576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c60565b610e84576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ef857505f54600160ff909116105b80610f115750303b158015610f1157505f5460ff166001145b610f835760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fc2575f805461ff0019166101001790555b610fcd848484611ca0565b8015611012575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611085576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c5a90611de3565b6110ea61192c565b6108e88282611dec565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611155576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61117f7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c60565b6111b5576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b6110128484845f6108a5565b5f54600290610100900460ff1615801561123b57505f5460ff8083169116105b6112ad5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112e985858585611e62565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b61133861192c565b6001600160a01b0381166113b45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161066f565b6113bd816119fc565b50565b6113c8611780565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611434576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611475576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff166114d0576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f03611509576040517f14fc8bd900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f611515888787612043565b8051919850965090915015611556576040517fb286dd6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f887f0000000000000000000000000000000000000000000000000000000000000000838a8a8a60405160240161159296959493929190612eab565b60408051601f19818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8431f5c10000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa15801561164b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061166f9190612ef8565b6099546097546040517f5f7b15770000000000000000000000000000000000000000000000000000000081529293506001600160a01b0391821692635f7b15779234926116c9929116905f9088908d908b90600401612f0f565b5f604051808303818588803b1580156116e0575f80fd5b505af11580156116f2573d5f803e3d5ffd5b5050505050826001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168b6001600160a01b03167f1a6c38816de45937fd5cd974f9694fe10e64163ba12a92abf0f4b6b23ad886728c8c8c8760405161176a9493929190612f51565b60405180910390a4505050505061061160018055565b6002600154036117d25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161066f565b6002600155565b827f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611845576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611012576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040516001600160a01b0383166024820152604481018290526108989084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152612299565b60018055565b6065546001600160a01b03163314610a2f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161066f565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206119bc908261237f565b156108e85760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611ad1576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611b3d576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611b9d576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611bd5576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050565b5f8151118015611bf957505f826001600160a01b03163b115b156108e8576040517f444b281f0000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063444b281f90611c43908490600401612f89565b5f604051808303815f87803b158015611c5a575f80fd5b505af1158015611c6c573d5f803e3d5ffd5b505050505050565b5f610c578383612393565b6001600160a01b0381165f9081526001830160205260408120541515610c57565b6001600160a01b038316611cf65760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e7465727061727420616464726573730000000000000000604482015260640161066f565b6001600160a01b038116611d4c5760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e676572206164647265737300000000000000000000604482015260640161066f565b611d546123b9565b611d5c61243d565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561089857609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c5a825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611e2290826124c1565b156108e85760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611ede5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611f663390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611fc57f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a86611986565b611fef7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d685611986565b6120197f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d84611986565b6106117f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c83611986565b6098545f908190606090339081906001600160a01b031681900361211357858060200190518101906120759190612f9b565b6040517fc52a3bbc0000000000000000000000000000000000000000000000000000000081526001600160a01b0380841660048301528b81166024830152604482018b905291985091925083169063c52a3bbc906064016020604051808303815f875af11580156120e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061210c9190612ef8565b965061223d565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038a16906370a0823190602401602060405180830381865afa158015612170573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121949190612ef8565b90506121ab6001600160a01b038a1683308b6124d5565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038b16906370a0823190602401602060405180830381865afa158015612208573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061222c9190612ef8565b90506122388282613023565b985050505b5f871161228c5760405162461bcd60e51b815260206004820152601360248201527f6465706f736974207a65726f20616d6f756e7400000000000000000000000000604482015260640161066f565b9795965093949350505050565b5f6122ed826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166125269092919063ffffffff16565b905080515f148061230d57508080602001905181019061230d919061305b565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f74207375636365656400000000000000000000000000000000000000000000606482015260840161066f565b5f610c57836001600160a01b03841661253c565b5f825f0182815481106123a8576123a861307a565b905f5260205f200154905092915050565b5f54610100900460ff166124355760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f612588565b5f54610100900460ff166124b95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f612604565b5f610c57836001600160a01b038416612689565b6040516001600160a01b03808516602483015283166044820152606481018290526110129085907f23b872dd00000000000000000000000000000000000000000000000000000000906084016118c2565b606061253484845f8561276c565b949350505050565b5f81815260018301602052604081205461258157508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c5a565b505f610c5a565b5f54610100900460ff166119265760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b5f54610100900460ff166126805760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f336119fc565b5f8181526001830160205260408120548015612763575f6126ab600183613023565b85549091505f906126be90600190613023565b905081811461271d575f865f0182815481106126dc576126dc61307a565b905f5260205f200154905080875f0184815481106126fc576126fc61307a565b5f918252602080832090910192909255918252600188019052604090208390555b855486908061272e5761272e6130a7565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c5a565b5f915050610c5a565b6060824710156127e45760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c0000000000000000000000000000000000000000000000000000606482015260840161066f565b5f80866001600160a01b031685876040516127ff91906130d4565b5f6040518083038185875af1925050503d805f8114612839576040519150601f19603f3d011682016040523d82523d5f602084013e61283e565b606091505b509150915061284f8783838761285a565b979650505050505050565b606083156128c85782515f036128c1576001600160a01b0385163b6128c15760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161066f565b5081612534565b61253483838151156128dd5781518083602001fd5b8060405162461bcd60e51b815260040161066f9190612f89565b6001600160a01b03811681146113bd575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156129615761296161290b565b604052919050565b5f67ffffffffffffffff8211156129825761298261290b565b50601f01601f191660200190565b5f82601f83011261299f575f80fd5b81356129b26129ad82612969565b612938565b8181528460208386010111156129c6575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a086880312156129f6575f80fd5b8535612a01816128f7565b94506020860135612a11816128f7565b935060408601359250606086013567ffffffffffffffff811115612a33575f80fd5b612a3f88828901612990565b95989497509295608001359392505050565b5f8083601f840112612a61575f80fd5b50813567ffffffffffffffff811115612a78575f80fd5b602083019150836020828501011115612a8f575f80fd5b9250929050565b5f8060208385031215612aa7575f80fd5b823567ffffffffffffffff811115612abd575f80fd5b612ac985828601612a51565b90969095509350505050565b5f805f60608486031215612ae7575f80fd5b8335612af2816128f7565b95602085013595506040909401359392505050565b5f8060408385031215612b18575f80fd5b823591506020830135612b2a816128f7565b809150509250929050565b5f805f805f805f60c0888a031215612b4b575f80fd5b8735612b56816128f7565b96506020880135612b66816128f7565b95506040880135612b76816128f7565b94506060880135612b86816128f7565b93506080880135925060a088013567ffffffffffffffff811115612ba8575f80fd5b612bb48a828b01612a51565b989b979a50959850939692959293505050565b5f8060408385031215612bd8575f80fd5b50508035926020909101359150565b5f805f60608486031215612bf9575f80fd5b8335612c04816128f7565b92506020840135612c14816128f7565b91506040840135612c24816128f7565b809150509250925092565b5f60208284031215612c3f575f80fd5b8135612c4a816128f7565b9392505050565b5f60208284031215612c61575f80fd5b5035919050565b5f805f8060808587031215612c7b575f80fd5b8435612c86816128f7565b93506020850135612c96816128f7565b93969395505050506040820135916060013590565b5f805f8060808587031215612cbe575f80fd5b8435612cc9816128f7565b93506020850135612cd9816128f7565b92506040850135612ce9816128f7565b91506060850135612cf9816128f7565b939692955090935050565b5f60208284031215612d14575f80fd5b8151612c4a816128f7565b5f8085851115612d2d575f80fd5b83861115612d39575f80fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612d865780818660040360031b1b83161692505b505092915050565b5f805f805f8060c08789031215612da3575f80fd5b8635612dae816128f7565b95506020870135612dbe816128f7565b94506040870135612dce816128f7565b93506060870135612dde816128f7565b92506080870135915060a087013567ffffffffffffffff811115612e00575f80fd5b612e0c89828a01612990565b9150509295509295509295565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f909201601f191601019392505050565b5f5b83811015612e78578181015183820152602001612e60565b50505f910152565b5f8151808452612e97816020860160208601612e5e565b601f01601f19169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612eec60c0830184612e80565b98975050505050505050565b5f60208284031215612f08575f80fd5b5051919050565b5f6001600160a01b03808816835286602084015260a06040840152612f3760a0840187612e80565b606084019590955292909216608090910152509392505050565b6001600160a01b0385168152836020820152608060408201525f612f786080830185612e80565b905082606083015295945050505050565b602081525f610c576020830184612e80565b5f8060408385031215612fac575f80fd5b8251612fb7816128f7565b602084015190925067ffffffffffffffff811115612fd3575f80fd5b8301601f81018513612fe3575f80fd5b8051612ff16129ad82612969565b818152866020838501011115613005575f80fd5b613016826020830160208601612e5e565b8093505050509250929050565b81810381811115610c5a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6020828403121561306b575f80fd5b81518015158114612c4a575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82516130e5818460208701612e5e565b919091019291505056fea164736f6c6343000818000a +0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063d547741f11610092578063f27ebced11610062578063f27ebced14610574578063f2fde38b14610593578063f887ea40146105b2578063fadcc54a146105d1575f80fd5b8063d547741f146104fb578063e3b523e31461051a578063e8bac93b1461054d578063f219fa6614610561575f80fd5b8063c01e1bd6116100cd578063c01e1bd61461046b578063c0c53b8b1461049e578063c676ad29146104bd578063ca15c873146104dc575f80fd5b80639010d07c1461040557806391d1485414610424578063ac67e1af14610443578063ad960ce114610457575f80fd5b80635e4c57a411610173578063797594b011610143578063797594b01461038357806384bd13b0146103a25780638d7601c0146103b55780638da5cb5b146103e8575f80fd5b80635e4c57a4146102df5780635ed2c220146102f35780636f18bd221461032e578063715018a61461036f575f80fd5b80632f2ff15d116101ae5780632f2ff15d1461020f5780633cb747bf1461022e57806356eff2671461026a5780635777bf501461029d575f80fd5b80630aea8c26146101d457806314298c51146101e957806321425ee0146101fc575b5f80fd5b6101e76101e23660046129c6565b610604565b005b6101e76101f7366004612a7a565b610618565b6101e761020a366004612ab9565b61089d565b34801561021a575f80fd5b506101e7610229366004612aeb565b6108d6565b348015610239575f80fd5b5060995461024d906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610275575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a8575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610261565b3480156102ea575f80fd5b506101e76108ec565b3480156102fe575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102cf565b348015610339575f80fd5b506103617f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610261565b34801561037a575f80fd5b506101e7610a1e565b34801561038e575f80fd5b5060975461024d906001600160a01b031681565b6101e76103b0366004612b19565b610a31565b3480156103c0575f80fd5b506103617f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103f3575f80fd5b506065546001600160a01b031661024d565b348015610410575f80fd5b5061024d61041f366004612bab565b610c21565b34801561042f575f80fd5b506102cf61043e366004612aeb565b610c60565b34801561044e575f80fd5b506101e7610c96565b348015610462575f80fd5b506101e7610dc4565b348015610476575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104a9575f80fd5b506101e76104b8366004612bcb565b610eda565b3480156104c8575f80fd5b5061024d6104d7366004612c13565b611018565b3480156104e7575f80fd5b506103616104f6366004612c35565b6110ad565b348015610506575f80fd5b506101e7610515366004612aeb565b6110e2565b348015610525575f80fd5b506103617f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610558575f80fd5b506101e76110f4565b6101e761056f366004612c4c565b61120f565b34801561057f575f80fd5b506101e761058e366004612c8f565b61121b565b34801561059e575f80fd5b506101e76105ad366004612c13565b611330565b3480156105bd575f80fd5b5060985461024d906001600160a01b031681565b3480156105dc575f80fd5b506103617f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b61061185858585856113c0565b5050505050565b6099546001600160a01b03163381146106785760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d89190612ce8565b6001600160a01b0316736f297c61b5c92ef107ffd30cd56affe5a273e8416001600160a01b03161461074c5760405162461bcd60e51b815260206004820152601b60248201527f6f6e6c792063616c6c656420696e2064726f7020636f6e746578740000000000604482015260640161066f565b610754611764565b7f8431f5c10000000000000000000000000000000000000000000000000000000061078260045f8587612d03565b61078b91612d2a565b7fffffffff0000000000000000000000000000000000000000000000000000000016146107fa5760405162461bcd60e51b815260206004820152601060248201527f696e76616c69642073656c6563746f7200000000000000000000000000000000604482015260640161066f565b5f808061080a8560048189612d03565b8101906108179190612d72565b50945050935050925061082b8383836117bd565b61083f6001600160a01b0384168383611861565b816001600160a01b0316836001600160a01b03167fdbdf8eb487847e4c0f22847f5dac07f2d3690f96f581a6ae4b102769917645a88360405161088491815260200190565b60405180910390a350505061089860018055565b505050565b6108988333845f5b6040519080825280601f01601f1916602001820160405280156108cf576020820181803683370190505b50856113c0565b6108de611910565b6108e8828261196a565b5050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610948576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109727f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c60565b6109a8576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b610a26611910565b610a2f5f6119e0565b565b6099546001600160a01b0316338114610a8c5760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c000000000000000000604482015260640161066f565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ac8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aec9190612ce8565b6097546001600160a01b03908116911614610b495760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e746572706172740000000000000000604482015260640161066f565b610b51611764565b610b6088888888888888611a49565b610b746001600160a01b0389168686611861565b610bb38584848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611bc492505050565b856001600160a01b0316876001600160a01b0316896001600160a01b03167fc6f985873b37805705f6bce756dce3d1ff4b603e298d506288cce499926846a788888888604051610c069493929190612dfd565b60405180910390a4610c1760018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c58565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c63565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610cf1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d1b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c60565b610d51576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e24576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c60565b610e84576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ef857505f54600160ff909116105b80610f115750303b158015610f1157505f5460ff166001145b610f835760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fc2575f805461ff0019166101001790555b610fcd848484611c84565b8015611012575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611085576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c5a90611dc7565b6110ea611910565b6108e88282611dd0565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611155576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61117f7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c60565b6111b5576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b6110128484845f6108a5565b5f54600290610100900460ff1615801561123b57505f5460ff8083169116105b6112ad5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112e985858585611e46565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b611338611910565b6001600160a01b0381166113b45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161066f565b6113bd816119e0565b50565b6113c8611764565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611434576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611475576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff166114d0576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f03611509576040517f14fc8bd900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f611515888787612027565b8051919850965090915015611556576040517fb286dd6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f0000000000000000000000000000000000000000000000000000000000000000905f90611595908b90849086908d908d908d90602401612e8f565b60408051601f19818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8431f5c10000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa15801561164e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116729190612edc565b6099546097546040517f5f7b15770000000000000000000000000000000000000000000000000000000081529293506001600160a01b0391821692635f7b15779234926116cc929116905f9088908e908c90600401612ef3565b5f604051808303818588803b1580156116e3575f80fd5b505af11580156116f5573d5f803e3d5ffd5b5050505050836001600160a01b0316836001600160a01b03168c6001600160a01b03167f1a6c38816de45937fd5cd974f9694fe10e64163ba12a92abf0f4b6b23ad886728d8d8d8760405161174d9493929190612f35565b60405180910390a450505050505061061160018055565b6002600154036117b65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161066f565b6002600155565b827f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611829576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611012576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040516001600160a01b0383166024820152604481018290526108989084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915261227d565b60018055565b6065546001600160a01b03163314610a2f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161066f565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206119a09082612363565b156108e85760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611ab5576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611b21576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611b81576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611bb9576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050565b5f8151118015611bdd57505f826001600160a01b03163b115b156108e8576040517f444b281f0000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063444b281f90611c27908490600401612f6d565b5f604051808303815f87803b158015611c3e575f80fd5b505af1158015611c50573d5f803e3d5ffd5b505050505050565b5f610c578383612377565b6001600160a01b0381165f9081526001830160205260408120541515610c57565b6001600160a01b038316611cda5760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e7465727061727420616464726573730000000000000000604482015260640161066f565b6001600160a01b038116611d305760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e676572206164647265737300000000000000000000604482015260640161066f565b611d3861239d565b611d40612421565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561089857609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c5a825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611e0690826124a5565b156108e85760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611ec25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611f4a3390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611fa97f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a8661196a565b611fd37f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d68561196a565b611ffd7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d8461196a565b6106117f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c8361196a565b6098545f908190606090339081906001600160a01b03168190036120f757858060200190518101906120599190612f7f565b6040517fc52a3bbc0000000000000000000000000000000000000000000000000000000081526001600160a01b0380841660048301528b81166024830152604482018b905291985091925083169063c52a3bbc906064016020604051808303815f875af11580156120cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120f09190612edc565b9650612221565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038a16906370a0823190602401602060405180830381865afa158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190612edc565b905061218f6001600160a01b038a1683308b6124b9565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038b16906370a0823190602401602060405180830381865afa1580156121ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122109190612edc565b905061221c8282613007565b985050505b5f87116122705760405162461bcd60e51b815260206004820152601360248201527f6465706f736974207a65726f20616d6f756e7400000000000000000000000000604482015260640161066f565b9795965093949350505050565b5f6122d1826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661250a9092919063ffffffff16565b905080515f14806122f15750808060200190518101906122f1919061303f565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f74207375636365656400000000000000000000000000000000000000000000606482015260840161066f565b5f610c57836001600160a01b038416612520565b5f825f01828154811061238c5761238c61305e565b905f5260205f200154905092915050565b5f54610100900460ff166124195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f61256c565b5f54610100900460ff1661249d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f6125e8565b5f610c57836001600160a01b03841661266d565b6040516001600160a01b03808516602483015283166044820152606481018290526110129085907f23b872dd00000000000000000000000000000000000000000000000000000000906084016118a6565b606061251884845f85612750565b949350505050565b5f81815260018301602052604081205461256557508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c5a565b505f610c5a565b5f54610100900460ff1661190a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b5f54610100900460ff166126645760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f336119e0565b5f8181526001830160205260408120548015612747575f61268f600183613007565b85549091505f906126a290600190613007565b9050818114612701575f865f0182815481106126c0576126c061305e565b905f5260205f200154905080875f0184815481106126e0576126e061305e565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806127125761271261308b565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c5a565b5f915050610c5a565b6060824710156127c85760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c0000000000000000000000000000000000000000000000000000606482015260840161066f565b5f80866001600160a01b031685876040516127e391906130b8565b5f6040518083038185875af1925050503d805f811461281d576040519150601f19603f3d011682016040523d82523d5f602084013e612822565b606091505b50915091506128338783838761283e565b979650505050505050565b606083156128ac5782515f036128a5576001600160a01b0385163b6128a55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161066f565b5081612518565b61251883838151156128c15781518083602001fd5b8060405162461bcd60e51b815260040161066f9190612f6d565b6001600160a01b03811681146113bd575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612945576129456128ef565b604052919050565b5f67ffffffffffffffff821115612966576129666128ef565b50601f01601f191660200190565b5f82601f830112612983575f80fd5b81356129966129918261294d565b61291c565b8181528460208386010111156129aa575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a086880312156129da575f80fd5b85356129e5816128db565b945060208601356129f5816128db565b935060408601359250606086013567ffffffffffffffff811115612a17575f80fd5b612a2388828901612974565b95989497509295608001359392505050565b5f8083601f840112612a45575f80fd5b50813567ffffffffffffffff811115612a5c575f80fd5b602083019150836020828501011115612a73575f80fd5b9250929050565b5f8060208385031215612a8b575f80fd5b823567ffffffffffffffff811115612aa1575f80fd5b612aad85828601612a35565b90969095509350505050565b5f805f60608486031215612acb575f80fd5b8335612ad6816128db565b95602085013595506040909401359392505050565b5f8060408385031215612afc575f80fd5b823591506020830135612b0e816128db565b809150509250929050565b5f805f805f805f60c0888a031215612b2f575f80fd5b8735612b3a816128db565b96506020880135612b4a816128db565b95506040880135612b5a816128db565b94506060880135612b6a816128db565b93506080880135925060a088013567ffffffffffffffff811115612b8c575f80fd5b612b988a828b01612a35565b989b979a50959850939692959293505050565b5f8060408385031215612bbc575f80fd5b50508035926020909101359150565b5f805f60608486031215612bdd575f80fd5b8335612be8816128db565b92506020840135612bf8816128db565b91506040840135612c08816128db565b809150509250925092565b5f60208284031215612c23575f80fd5b8135612c2e816128db565b9392505050565b5f60208284031215612c45575f80fd5b5035919050565b5f805f8060808587031215612c5f575f80fd5b8435612c6a816128db565b93506020850135612c7a816128db565b93969395505050506040820135916060013590565b5f805f8060808587031215612ca2575f80fd5b8435612cad816128db565b93506020850135612cbd816128db565b92506040850135612ccd816128db565b91506060850135612cdd816128db565b939692955090935050565b5f60208284031215612cf8575f80fd5b8151612c2e816128db565b5f8085851115612d11575f80fd5b83861115612d1d575f80fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612d6a5780818660040360031b1b83161692505b505092915050565b5f805f805f8060c08789031215612d87575f80fd5b8635612d92816128db565b95506020870135612da2816128db565b94506040870135612db2816128db565b93506060870135612dc2816128db565b92506080870135915060a087013567ffffffffffffffff811115612de4575f80fd5b612df089828a01612974565b9150509295509295509295565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f909201601f191601019392505050565b5f5b83811015612e5c578181015183820152602001612e44565b50505f910152565b5f8151808452612e7b816020860160208601612e42565b601f01601f19169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612ed060c0830184612e64565b98975050505050505050565b5f60208284031215612eec575f80fd5b5051919050565b5f6001600160a01b03808816835286602084015260a06040840152612f1b60a0840187612e64565b606084019590955292909216608090910152509392505050565b6001600160a01b0385168152836020820152608060408201525f612f5c6080830185612e64565b905082606083015295945050505050565b602081525f610c576020830184612e64565b5f8060408385031215612f90575f80fd5b8251612f9b816128db565b602084015190925067ffffffffffffffff811115612fb7575f80fd5b8301601f81018513612fc7575f80fd5b8051612fd56129918261294d565b818152866020838501011115612fe9575f80fd5b612ffa826020830160208601612e42565b8093505050509250929050565b81810381811115610c5a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6020828403121561304f575f80fd5b81518015158114612c2e575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82516130c9818460208701612e42565b919091019291505056fea164736f6c6343000818000a diff --git a/bindings/bin/l2lidogateway_deployed.hex b/bindings/bin/l2lidogateway_deployed.hex index 68ff19c11..bd0fad2ac 100644 --- a/bindings/bin/l2lidogateway_deployed.hex +++ b/bindings/bin/l2lidogateway_deployed.hex @@ -1 +1 @@ -0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063ca15c87311610092578063f27ebced11610062578063f27ebced14610580578063f2fde38b1461059f578063f887ea40146105be578063fadcc54a146105dd575f80fd5b8063ca15c873146104fb578063d547741f1461051a578063e3b523e314610539578063e8bac93b1461056c575f80fd5b8063ad960ce1116100cd578063ad960ce114610476578063c01e1bd61461048a578063c0c53b8b146104bd578063c676ad29146104dc575f80fd5b80639010d07c1461041157806391d1485414610430578063a93a4af91461044f578063ac67e1af14610462575f80fd5b80635ed2c22011610173578063797594b011610143578063797594b01461038f5780638431f5c1146103ae5780638d7601c0146103c15780638da5cb5b146103f4575f80fd5b80635ed2c220146102ec5780636c07ea43146103275780636f18bd221461033a578063715018a61461037b575f80fd5b806356eff267116101ae57806356eff26714610250578063575361b6146102835780635777bf50146102965780635e4c57a4146102d8575f80fd5b80632f2ff15d146101d45780633cb747bf146101f557806354bbd59c14610231575b5f80fd5b3480156101df575f80fd5b506101f36101ee36600461211c565b610610565b005b348015610200575f80fd5b50609954610214906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561023c575f80fd5b5061021461024b36600461214a565b610626565b34801561025b575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b6101f36102913660046121b1565b6106bb565b3480156102a1575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610228565b3480156102e3575f80fd5b506101f3610706565b3480156102f7575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102c8565b6101f3610335366004612227565b610838565b348015610345575f80fd5b5061036d7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610228565b348015610386575f80fd5b506101f3610876565b34801561039a575f80fd5b50609754610214906001600160a01b031681565b6101f36103bc366004612259565b610889565b3480156103cc575f80fd5b5061036d7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103ff575f80fd5b506065546001600160a01b0316610214565b34801561041c575f80fd5b5061021461042b3660046122eb565b610bff565b34801561043b575f80fd5b506102c861044a36600461211c565b610c3e565b6101f361045d36600461230b565b610c74565b34801561046d575f80fd5b506101f3610c86565b348015610481575f80fd5b506101f3610db4565b348015610495575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b3480156104c8575f80fd5b506101f36104d736600461234e565b610eca565b3480156104e7575f80fd5b506102146104f636600461214a565b611007565b348015610506575f80fd5b5061036d610515366004612396565b61109c565b348015610525575f80fd5b506101f361053436600461211c565b6110d1565b348015610544575f80fd5b5061036d7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610577575f80fd5b506101f36110e3565b34801561058b575f80fd5b506101f361059a3660046123ad565b6111fe565b3480156105aa575f80fd5b506101f36105b936600461214a565b611313565b3480156105c9575f80fd5b50609854610214906001600160a01b031681565b3480156105e8575f80fd5b5061036d7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b6106186113a3565b61062282826113fd565b5050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610693576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b6106fe86868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250889250611473915050565b505050505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610762576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61078c7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c3e565b6107c2576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b6108718333845f5b6040519080825280601f01601f19166020018201604052801561086a576020820181803683370190505b5085611473565b505050565b61087e6113a3565b6108875f6118eb565b565b6099546001600160a01b03163381146108e95760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610925573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109499190612433565b6097546001600160a01b039081169116146109a65760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e74657270617274000000000000000060448201526064016108e0565b6109ae611954565b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a1a576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a86576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ae1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610b19576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f40c10f190000000000000000000000000000000000000000000000000000000081526001600160a01b038881166004830152602482018890528a16906340c10f19906044015f604051808303815f87803b158015610b79575f80fd5b505af1158015610b8b573d5f803e3d5ffd5b50505050876001600160a01b0316896001600160a01b03168b6001600160a01b03167f165ba69f6ab40c50cade6f65431801e5f9c7d7830b7545391920db039133ba348a8a8a8a604051610be2949392919061244e565b60405180910390a45050610bf560018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3590836119b3565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3590836119be565b610c808484845f610840565b50505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ce1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d0b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c3e565b610d41576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e14576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e3e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c3e565b610e74576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ee857505f54600160ff909116105b80610f015750303b158015610f0157505f5460ff166001145b610f735760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fb2575f805461ff0019166101001790555b610fbd8484846119df565b8015610c80575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611074576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3890611b22565b6110d96113a3565b6106228282611b2b565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611144576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116e7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c3e565b6111a4576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b5f54600290610100900460ff1615801561121e57505f5460ff8083169116105b6112905760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112cc85858585611ba1565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b61131b6113a3565b6001600160a01b0381166113975760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016108e0565b6113a0816118eb565b50565b6065546001600160a01b031633146108875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108e0565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206114339082611d82565b156106225760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b61147b611954565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316146114e7576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611528576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611588576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f036115c1576040517f6c18829600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60985433906001600160a01b03168190036115ef57848060200190518101906115ea91906124d3565b955090505b845115611628576040517f998bcee200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f9dc29fac0000000000000000000000000000000000000000000000000000000081526001600160a01b03828116600483015260248201889052891690639dc29fac906044015f604051808303815f87803b158015611688575f80fd5b505af115801561169a573d5f803e3d5ffd5b505050505f7f000000000000000000000000000000000000000000000000000000000000000089838a8a8a6040516024016116da969594939291906125f8565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f84bd13b00000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa1580156117b1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117d59190612645565b6099546097546040517fb2267a7b0000000000000000000000000000000000000000000000000000000081529293506001600160a01b039182169263b2267a7b92349261182d929116905f9088908d9060040161265c565b5f604051808303818588803b158015611844575f80fd5b505af1158015611856573d5f803e3d5ffd5b5050505050826001600160a01b03168a6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167fa9967b740f3fc69dfbf4744b4b1c7dfdb0b1b63f1fa4cf573bcdcb9f3ac687c48c8c8c876040516118ce949392919061265c565b60405180910390a450505050506118e460018055565b5050505050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6002600154036119a65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e0565b6002600155565b60018055565b5f610c358383611d96565b6001600160a01b0381165f9081526001830160205260408120541515610c35565b6001600160a01b038316611a355760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e746572706172742061646472657373000000000000000060448201526064016108e0565b6001600160a01b038116611a8b5760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e67657220616464726573730000000000000000000060448201526064016108e0565b611a93611dbc565b611a9b611e40565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561087157609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c38825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611b619082611ec4565b156106225760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611c1d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611ca53390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611d047f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a866113fd565b611d2e7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d6856113fd565b611d587f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d846113fd565b6118e47f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c836113fd565b5f610c35836001600160a01b038416611ed8565b5f825f018281548110611dab57611dab612694565b905f5260205f200154905092915050565b5f54610100900460ff16611e385760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611f24565b5f54610100900460ff16611ebc5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611fa0565b5f610c35836001600160a01b038416612025565b5f818152600183016020526040812054611f1d57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c38565b505f610c38565b5f54610100900460ff166119ad5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b5f54610100900460ff1661201c5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887336118eb565b5f81815260018301602052604081205480156120ff575f6120476001836126c1565b85549091505f9061205a906001906126c1565b90508181146120b9575f865f01828154811061207857612078612694565b905f5260205f200154905080875f01848154811061209857612098612694565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806120ca576120ca6126f9565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c38565b5f915050610c38565b6001600160a01b03811681146113a0575f80fd5b5f806040838503121561212d575f80fd5b82359150602083013561213f81612108565b809150509250929050565b5f6020828403121561215a575f80fd5b813561216581612108565b9392505050565b5f8083601f84011261217c575f80fd5b50813567ffffffffffffffff811115612193575f80fd5b6020830191508360208285010111156121aa575f80fd5b9250929050565b5f805f805f8060a087890312156121c6575f80fd5b86356121d181612108565b955060208701356121e181612108565b945060408701359350606087013567ffffffffffffffff811115612203575f80fd5b61220f89828a0161216c565b979a9699509497949695608090950135949350505050565b5f805f60608486031215612239575f80fd5b833561224481612108565b95602085013595506040909401359392505050565b5f805f805f805f60c0888a03121561226f575f80fd5b873561227a81612108565b9650602088013561228a81612108565b9550604088013561229a81612108565b945060608801356122aa81612108565b93506080880135925060a088013567ffffffffffffffff8111156122cc575f80fd5b6122d88a828b0161216c565b989b979a50959850939692959293505050565b5f80604083850312156122fc575f80fd5b50508035926020909101359150565b5f805f806080858703121561231e575f80fd5b843561232981612108565b9350602085013561233981612108565b93969395505050506040820135916060013590565b5f805f60608486031215612360575f80fd5b833561236b81612108565b9250602084013561237b81612108565b9150604084013561238b81612108565b809150509250925092565b5f602082840312156123a6575f80fd5b5035919050565b5f805f80608085870312156123c0575f80fd5b84356123cb81612108565b935060208501356123db81612108565b925060408501356123eb81612108565b915060608501356123fb81612108565b939692955090935050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f60208284031215612443575f80fd5b815161216581612108565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b838110156124cb5781810151838201526020016124b3565b50505f910152565b5f80604083850312156124e4575f80fd5b82516124ef81612108565b602084015190925067ffffffffffffffff8082111561250c575f80fd5b818501915085601f83011261251f575f80fd5b81518181111561253157612531612406565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561257757612577612406565b8160405282815288602084870101111561258f575f80fd5b6125a08360208301602088016124b1565b80955050505050509250929050565b5f81518084526125c68160208601602086016124b1565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a083015261263960c08301846125af565b98975050505050505050565b5f60208284031215612655575f80fd5b5051919050565b6001600160a01b0385168152836020820152608060408201525f61268360808301856125af565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81810381811115610c38577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a +0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063ca15c87311610092578063f27ebced11610062578063f27ebced14610580578063f2fde38b1461059f578063f887ea40146105be578063fadcc54a146105dd575f80fd5b8063ca15c873146104fb578063d547741f1461051a578063e3b523e314610539578063e8bac93b1461056c575f80fd5b8063ad960ce1116100cd578063ad960ce114610476578063c01e1bd61461048a578063c0c53b8b146104bd578063c676ad29146104dc575f80fd5b80639010d07c1461041157806391d1485414610430578063a93a4af91461044f578063ac67e1af14610462575f80fd5b80635ed2c22011610173578063797594b011610143578063797594b01461038f5780638431f5c1146103ae5780638d7601c0146103c15780638da5cb5b146103f4575f80fd5b80635ed2c220146102ec5780636c07ea43146103275780636f18bd221461033a578063715018a61461037b575f80fd5b806356eff267116101ae57806356eff26714610250578063575361b6146102835780635777bf50146102965780635e4c57a4146102d8575f80fd5b80632f2ff15d146101d45780633cb747bf146101f557806354bbd59c14610231575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004612100565b610610565b005b348015610200575f80fd5b50609954610214906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561023c575f80fd5b5061021461024b36600461212e565b610626565b34801561025b575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b6101f3610291366004612195565b6106bb565b3480156102a1575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610228565b3480156102e3575f80fd5b506101f3610706565b3480156102f7575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102c8565b6101f361033536600461220b565b610838565b348015610345575f80fd5b5061036d7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610228565b348015610386575f80fd5b506101f3610876565b34801561039a575f80fd5b50609754610214906001600160a01b031681565b6101f36103bc36600461223d565b610889565b3480156103cc575f80fd5b5061036d7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103ff575f80fd5b506065546001600160a01b0316610214565b34801561041c575f80fd5b5061021461042b3660046122cf565b610bff565b34801561043b575f80fd5b506102c861044a366004612100565b610c3e565b6101f361045d3660046122ef565b610c74565b34801561046d575f80fd5b506101f3610c86565b348015610481575f80fd5b506101f3610db4565b348015610495575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b3480156104c8575f80fd5b506101f36104d7366004612332565b610eca565b3480156104e7575f80fd5b506102146104f636600461212e565b611007565b348015610506575f80fd5b5061036d61051536600461237a565b61109c565b348015610525575f80fd5b506101f3610534366004612100565b6110d1565b348015610544575f80fd5b5061036d7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610577575f80fd5b506101f36110e3565b34801561058b575f80fd5b506101f361059a366004612391565b6111fe565b3480156105aa575f80fd5b506101f36105b936600461212e565b611313565b3480156105c9575f80fd5b50609854610214906001600160a01b031681565b3480156105e8575f80fd5b5061036d7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b6106186113a3565b61062282826113fd565b5050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610693576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b6106fe86868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250889250611473915050565b505050505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610762576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61078c7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c3e565b6107c2576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b6108718333845f5b6040519080825280601f01601f19166020018201604052801561086a576020820181803683370190505b5085611473565b505050565b61087e6113a3565b6108875f6118cf565b565b6099546001600160a01b03163381146108e95760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610925573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109499190612417565b6097546001600160a01b039081169116146109a65760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e74657270617274000000000000000060448201526064016108e0565b6109ae611938565b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a1a576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a86576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ae1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610b19576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f40c10f190000000000000000000000000000000000000000000000000000000081526001600160a01b038881166004830152602482018890528a16906340c10f19906044015f604051808303815f87803b158015610b79575f80fd5b505af1158015610b8b573d5f803e3d5ffd5b50505050876001600160a01b0316896001600160a01b03168b6001600160a01b03167f165ba69f6ab40c50cade6f65431801e5f9c7d7830b7545391920db039133ba348a8a8a8a604051610be29493929190612432565b60405180910390a45050610bf560018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c359083611997565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3590836119a2565b610c808484845f610840565b50505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ce1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d0b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c3e565b610d41576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e14576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e3e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c3e565b610e74576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ee857505f54600160ff909116105b80610f015750303b158015610f0157505f5460ff166001145b610f735760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fb2575f805461ff0019166101001790555b610fbd8484846119c3565b8015610c80575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611074576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3890611b06565b6110d96113a3565b6106228282611b0f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611144576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116e7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c3e565b6111a4576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b5f54600290610100900460ff1615801561121e57505f5460ff8083169116105b6112905760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112cc85858585611b85565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b61131b6113a3565b6001600160a01b0381166113975760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016108e0565b6113a0816118cf565b50565b6065546001600160a01b031633146108875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108e0565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206114339082611d66565b156106225760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b61147b611938565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316146114e7576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611528576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611588576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f036115c1576040517f6c18829600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60985433906001600160a01b03168190036115ef57848060200190518101906115ea91906124b7565b955090505b845115611628576040517f998bcee200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f9dc29fac0000000000000000000000000000000000000000000000000000000081526001600160a01b03828116600483015260248201889052891690639dc29fac906044015f604051808303815f87803b158015611688575f80fd5b505af115801561169a573d5f803e3d5ffd5b50506040517f000000000000000000000000000000000000000000000000000000000000000092505f91506116dd9083908c9086908d908d908d906024016125dc565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f84bd13b00000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa1580156117b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117d89190612629565b6099546097546040517fb2267a7b0000000000000000000000000000000000000000000000000000000081529293506001600160a01b039182169263b2267a7b923492611830929116905f9088908e90600401612640565b5f604051808303818588803b158015611847575f80fd5b505af1158015611859573d5f803e3d5ffd5b5050505050836001600160a01b03168b6001600160a01b0316846001600160a01b03167fa9967b740f3fc69dfbf4744b4b1c7dfdb0b1b63f1fa4cf573bcdcb9f3ac687c48d8d8d876040516118b19493929190612640565b60405180910390a45050505050506118c860018055565b5050505050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b60026001540361198a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e0565b6002600155565b60018055565b5f610c358383611d7a565b6001600160a01b0381165f9081526001830160205260408120541515610c35565b6001600160a01b038316611a195760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e746572706172742061646472657373000000000000000060448201526064016108e0565b6001600160a01b038116611a6f5760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e67657220616464726573730000000000000000000060448201526064016108e0565b611a77611da0565b611a7f611e24565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561087157609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c38825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611b459082611ea8565b156106225760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611c015760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611c893390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611ce87f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a866113fd565b611d127f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d6856113fd565b611d3c7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d846113fd565b6118c87f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c836113fd565b5f610c35836001600160a01b038416611ebc565b5f825f018281548110611d8f57611d8f612678565b905f5260205f200154905092915050565b5f54610100900460ff16611e1c5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611f08565b5f54610100900460ff16611ea05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611f84565b5f610c35836001600160a01b038416612009565b5f818152600183016020526040812054611f0157508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c38565b505f610c38565b5f54610100900460ff166119915760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b5f54610100900460ff166120005760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887336118cf565b5f81815260018301602052604081205480156120e3575f61202b6001836126a5565b85549091505f9061203e906001906126a5565b905081811461209d575f865f01828154811061205c5761205c612678565b905f5260205f200154905080875f01848154811061207c5761207c612678565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806120ae576120ae6126dd565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c38565b5f915050610c38565b6001600160a01b03811681146113a0575f80fd5b5f8060408385031215612111575f80fd5b823591506020830135612123816120ec565b809150509250929050565b5f6020828403121561213e575f80fd5b8135612149816120ec565b9392505050565b5f8083601f840112612160575f80fd5b50813567ffffffffffffffff811115612177575f80fd5b60208301915083602082850101111561218e575f80fd5b9250929050565b5f805f805f8060a087890312156121aa575f80fd5b86356121b5816120ec565b955060208701356121c5816120ec565b945060408701359350606087013567ffffffffffffffff8111156121e7575f80fd5b6121f389828a01612150565b979a9699509497949695608090950135949350505050565b5f805f6060848603121561221d575f80fd5b8335612228816120ec565b95602085013595506040909401359392505050565b5f805f805f805f60c0888a031215612253575f80fd5b873561225e816120ec565b9650602088013561226e816120ec565b9550604088013561227e816120ec565b9450606088013561228e816120ec565b93506080880135925060a088013567ffffffffffffffff8111156122b0575f80fd5b6122bc8a828b01612150565b989b979a50959850939692959293505050565b5f80604083850312156122e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215612302575f80fd5b843561230d816120ec565b9350602085013561231d816120ec565b93969395505050506040820135916060013590565b5f805f60608486031215612344575f80fd5b833561234f816120ec565b9250602084013561235f816120ec565b9150604084013561236f816120ec565b809150509250925092565b5f6020828403121561238a575f80fd5b5035919050565b5f805f80608085870312156123a4575f80fd5b84356123af816120ec565b935060208501356123bf816120ec565b925060408501356123cf816120ec565b915060608501356123df816120ec565b939692955090935050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f60208284031215612427575f80fd5b8151612149816120ec565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b838110156124af578181015183820152602001612497565b50505f910152565b5f80604083850312156124c8575f80fd5b82516124d3816120ec565b602084015190925067ffffffffffffffff808211156124f0575f80fd5b818501915085601f830112612503575f80fd5b815181811115612515576125156123ea565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561255b5761255b6123ea565b81604052828152886020848701011115612573575f80fd5b612584836020830160208801612495565b80955050505050509250929050565b5f81518084526125aa816020860160208601612495565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a083015261261d60c0830184612593565b98975050505050505050565b5f60208284031215612639575f80fd5b5051919050565b6001600160a01b0385168152836020820152608060408201525f6126676080830185612593565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81810381811115610c38577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a diff --git a/bindings/bin/l2wstethtoken_deployed.hex b/bindings/bin/l2wstethtoken_deployed.hex index 57abc8d42..2b66e449e 100644 --- a/bindings/bin/l2wstethtoken_deployed.hex +++ b/bindings/bin/l2wstethtoken_deployed.hex @@ -1 +1 @@ -0x608060405234801561000f575f80fd5b506004361061016e575f3560e01c806370a08231116100d25780639dc29fac11610088578063c820f14611610063578063c820f14614610354578063d505accf14610367578063dd62ed3e1461037a575f80fd5b80639dc29fac1461031b578063a457c2d71461032e578063a9059cbb14610341575f80fd5b80637ecebe00116100b85780637ecebe00146102e557806384b0196e146102f857806395d89b4114610313575f80fd5b806370a0823114610290578063797594b0146102c5575f80fd5b8063313ce56711610127578063395093511161010d57806339509351146102555780634000aea01461026857806340c10f191461027b575f80fd5b8063313ce5671461021d5780633644e5151461024d575f80fd5b8063116191b611610157578063116191b6146101b357806318160ddd146101f857806323b872dd1461020a575f80fd5b806306fdde0314610172578063095ea7b314610190575b5f80fd5b61017a6103bf565b6040516101879190611a7e565b60405180910390f35b6101a361019e366004611abf565b61044f565b6040519015158152602001610187565b60cc546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610187565b6035545b604051908152602001610187565b6101a3610218366004611ae7565b610468565b60cd5474010000000000000000000000000000000000000000900460ff1660405160ff9091168152602001610187565b6101fc61048b565b6101a3610263366004611abf565b610499565b6101a3610276366004611b20565b6104e4565b61028e610289366004611abf565b61054d565b005b6101fc61029e366004611ba0565b73ffffffffffffffffffffffffffffffffffffffff165f9081526033602052604090205490565b60cd546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b6101fc6102f3366004611ba0565b6105c7565b6103006105f1565b6040516101879796959493929190611bb9565b61017a6106ae565b61028e610329366004611abf565b6106bd565b6101a361033c366004611abf565b61072e565b6101a361034f366004611abf565b6107e4565b61028e610362366004611d5d565b6107f1565b61028e610375366004611ded565b610a08565b6101fc610388366004611e52565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260346020908152604080832093909416825291909152205490565b6060603680546103ce90611e83565b80601f01602080910402602001604051908101604052809291908181526020018280546103fa90611e83565b80156104455780601f1061041c57610100808354040283529160200191610445565b820191905f5260205f20905b81548152906001019060200180831161042857829003601f168201915b5050505050905090565b5f3361045c818585610bae565b60019150505b92915050565b5f33610475858285610d2d565b610480858585610de9565b506001949350505050565b5f61049461100f565b905090565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061045c90829086906104df908790611ece565b610bae565b5f6104ef85856107e4565b5073ffffffffffffffffffffffffffffffffffffffff85163b1561048057610480858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061101892505050565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146105b95760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6105c382826110a3565b5050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260996020526040812054610462565b5f6060805f805f60606065545f801b14801561060d5750606654155b6106595760405162461bcd60e51b815260206004820152601560248201527f4549503731323a20556e696e697469616c697a6564000000000000000000000060448201526064016105b0565b61066161117c565b61066961118b565b604080515f808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b6060603780546103ce90611e83565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146107245760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064016105b0565b6105c3828261119a565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156107d75760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016105b0565b6104808286868403610bae565b5f3361045c818585610de9565b5f54610100900460ff161580801561080f57505f54600160ff909116105b806108285750303b15801561082857505f5460ff166001145b61089a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105b0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156108f6575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6108ff86611327565b61090986866113e5565b60cd805460cc805473ffffffffffffffffffffffffffffffffffffffff8088167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925590851660ff88167401000000000000000000000000000000000000000002919091167fffffffffffffffffffffff000000000000000000000000000000000000000000909216919091171790558015610a00575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b83421115610a585760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016105b0565b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610a868c61146b565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f610aed8261149f565b60408051602081018790529081018590527fff0000000000000000000000000000000000000000000000000000000000000060f888901b166060820152909150610b4c908a9083906061016040516020818303038152906040526114e6565b610b985760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016105b0565b610ba3898989610bae565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316610c365760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610cbf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610de35781811015610dd65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105b0565b610de38484848403610bae565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610e725760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610efb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526033602052604090205481811015610f965760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8085165f8181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110029086815260200190565b60405180910390a3610de3565b5f61049461155e565b6040517fa4c0ed36000000000000000000000000000000000000000000000000000000008152839073ffffffffffffffffffffffffffffffffffffffff82169063a4c0ed369061107090339087908790600401611f06565b5f604051808303815f87803b158015611087575f80fd5b505af1158015611099573d5f803e3d5ffd5b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff82166111065760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105b0565b8060355f8282546111179190611ece565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6060606780546103ce90611e83565b6060606880546103ce90611e83565b73ffffffffffffffffffffffffffffffffffffffff82166112235760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260336020526040902054818110156112be5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f8181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610d20565b505050565b5f54610100900460ff166113a35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6113e2816040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506115d1565b50565b5f54610100900460ff166114615760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6105c38282611674565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526099602052604090208054600181018255905b50919050565b5f6104626114ab61100f565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b5f805f6114f38585611709565b90925090505f81600481111561150b5761150b611f43565b14801561154357508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b80611554575061155486868661174b565b9695505050505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6115886118a3565b6115906118fb565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b5f54610100900460ff1661164d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b60676116598382611fbb565b5060686116668282611fbb565b50505f606581905560665550565b5f54610100900460ff166116f05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b60366116fc8382611fbb565b5060376113228282611fbb565b5f80825160410361173d576020830151604084015160608501515f1a6117318782858561192b565b94509450505050611744565b505f905060025b9250929050565b5f805f8573ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b86866040516024016117809291906120d3565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317909252905161180991906120f3565b5f60405180830381855afa9150503d805f8114611841576040519150601f19603f3d011682016040523d82523d5f602084013e611846565b606091505b509150915081801561185a57506020815110155b8015611554575080517f1626ba7e0000000000000000000000000000000000000000000000000000000090611898908301602090810190840161210e565b149695505050505050565b5f806118ad61117c565b8051909150156118c4578051602090910120919050565b60655480156118d35792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b5f8061190561118b565b80519091501561191c578051602090910120919050565b60665480156118d35792915050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561196057505f90506003611a0a565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156119b1573d5f803e3d5ffd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff8116611a04575f60019250925050611a0a565b91505f90505b94509492505050565b5f5b83811015611a2d578181015183820152602001611a15565b50505f910152565b5f8151808452611a4c816020860160208601611a13565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f611a906020830184611a35565b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611aba575f80fd5b919050565b5f8060408385031215611ad0575f80fd5b611ad983611a97565b946020939093013593505050565b5f805f60608486031215611af9575f80fd5b611b0284611a97565b9250611b1060208501611a97565b9150604084013590509250925092565b5f805f8060608587031215611b33575f80fd5b611b3c85611a97565b935060208501359250604085013567ffffffffffffffff80821115611b5f575f80fd5b818701915087601f830112611b72575f80fd5b813581811115611b80575f80fd5b886020828501011115611b91575f80fd5b95989497505060200194505050565b5f60208284031215611bb0575f80fd5b611a9082611a97565b7fff00000000000000000000000000000000000000000000000000000000000000881681525f602060e06020840152611bf560e084018a611a35565b8381036040850152611c07818a611a35565b6060850189905273ffffffffffffffffffffffffffffffffffffffff8816608086015260a0850187905284810360c0860152855180825260208088019350909101905f5b81811015611c6757835183529284019291840191600101611c4b565b50909c9b505050505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112611cb5575f80fd5b813567ffffffffffffffff80821115611cd057611cd0611c79565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611d1657611d16611c79565b81604052838152866020858801011115611d2e575f80fd5b836020870160208301375f602085830101528094505050505092915050565b803560ff81168114611aba575f80fd5b5f805f805f60a08688031215611d71575f80fd5b853567ffffffffffffffff80821115611d88575f80fd5b611d9489838a01611ca6565b96506020880135915080821115611da9575f80fd5b50611db688828901611ca6565b945050611dc560408701611d4d565b9250611dd360608701611a97565b9150611de160808701611a97565b90509295509295909350565b5f805f805f805f60e0888a031215611e03575f80fd5b611e0c88611a97565b9650611e1a60208901611a97565b95506040880135945060608801359350611e3660808901611d4d565b925060a0880135915060c0880135905092959891949750929550565b5f8060408385031215611e63575f80fd5b611e6c83611a97565b9150611e7a60208401611a97565b90509250929050565b600181811c90821680611e9757607f821691505b602082108103611499577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b80820180821115610462577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f611f3a6060830184611a35565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b601f82111561132257805f5260205f20601f840160051c81016020851015611f955750805b601f840160051c820191505b81811015611fb4575f8155600101611fa1565b5050505050565b815167ffffffffffffffff811115611fd557611fd5611c79565b611fe981611fe38454611e83565b84611f70565b602080601f83116001811461203b575f84156120055750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610a00565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561208757888601518255948401946001909101908401612068565b50858210156120c357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f6120eb6040830184611a35565b949350505050565b5f8251612104818460208701611a13565b9190910192915050565b5f6020828403121561211e575f80fd5b505191905056fea164736f6c6343000818000a +0x608060405234801561000f575f80fd5b506004361061016e575f3560e01c806370a08231116100d25780639dc29fac11610088578063c820f14611610063578063c820f14614610354578063d505accf14610367578063dd62ed3e1461037a575f80fd5b80639dc29fac1461031b578063a457c2d71461032e578063a9059cbb14610341575f80fd5b80637ecebe00116100b85780637ecebe00146102e557806384b0196e146102f857806395d89b4114610313575f80fd5b806370a0823114610290578063797594b0146102c5575f80fd5b8063313ce56711610127578063395093511161010d57806339509351146102555780634000aea01461026857806340c10f191461027b575f80fd5b8063313ce5671461021d5780633644e5151461024d575f80fd5b8063116191b611610157578063116191b6146101b357806318160ddd146101f857806323b872dd1461020a575f80fd5b806306fdde0314610172578063095ea7b314610190575b5f80fd5b61017a6103bf565b6040516101879190611a52565b60405180910390f35b6101a361019e366004611a93565b61044f565b6040519015158152602001610187565b60cc546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610187565b6035545b604051908152602001610187565b6101a3610218366004611abb565b610468565b60cd5474010000000000000000000000000000000000000000900460ff1660405160ff9091168152602001610187565b6101fc61048b565b6101a3610263366004611a93565b610499565b6101a3610276366004611af4565b6104e4565b61028e610289366004611a93565b61054d565b005b6101fc61029e366004611b74565b73ffffffffffffffffffffffffffffffffffffffff165f9081526033602052604090205490565b60cd546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b6101fc6102f3366004611b74565b6105c7565b6103006105f1565b6040516101879796959493929190611b8d565b61017a6106ae565b61028e610329366004611a93565b6106bd565b6101a361033c366004611a93565b61072e565b6101a361034f366004611a93565b6107e4565b61028e610362366004611d31565b6107f1565b61028e610375366004611dc1565b610a08565b6101fc610388366004611e26565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260346020908152604080832093909416825291909152205490565b6060603680546103ce90611e57565b80601f01602080910402602001604051908101604052809291908181526020018280546103fa90611e57565b80156104455780601f1061041c57610100808354040283529160200191610445565b820191905f5260205f20905b81548152906001019060200180831161042857829003601f168201915b5050505050905090565b5f3361045c818585610b82565b60019150505b92915050565b5f33610475858285610d01565b610480858585610dbd565b506001949350505050565b5f610494610fe3565b905090565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061045c90829086906104df908790611ea2565b610b82565b5f6104ef85856107e4565b5073ffffffffffffffffffffffffffffffffffffffff85163b1561048057610480858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610fec92505050565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146105b95760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6105c38282611077565b5050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260996020526040812054610462565b5f6060805f805f60606065545f801b14801561060d5750606654155b6106595760405162461bcd60e51b815260206004820152601560248201527f4549503731323a20556e696e697469616c697a6564000000000000000000000060448201526064016105b0565b610661611150565b61066961115f565b604080515f808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b6060603780546103ce90611e57565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146107245760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064016105b0565b6105c3828261116e565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156107d75760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016105b0565b6104808286868403610b82565b5f3361045c818585610dbd565b5f54610100900460ff161580801561080f57505f54600160ff909116105b806108285750303b15801561082857505f5460ff166001145b61089a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105b0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156108f6575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6108ff866112fb565b61090986866113b9565b60cd805460cc805473ffffffffffffffffffffffffffffffffffffffff8088167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925590851660ff88167401000000000000000000000000000000000000000002919091167fffffffffffffffffffffff000000000000000000000000000000000000000000909216919091171790558015610a00575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b83421115610a42576040517fa5faea8300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610a708c61143f565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f610ad782611473565b60408051602081018790529081018590527fff0000000000000000000000000000000000000000000000000000000000000060f888901b166060820152909150610b36908a9083906061016040516020818303038152906040526114ba565b610b6c576040517f3f88fec700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b77898989610b82565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316610c0a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610c935760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610db75781811015610daa5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105b0565b610db78484848403610b82565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610e465760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610ecf5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526033602052604090205481811015610f6a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8085165f8181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fd69086815260200190565b60405180910390a3610db7565b5f610494611532565b6040517fa4c0ed36000000000000000000000000000000000000000000000000000000008152839073ffffffffffffffffffffffffffffffffffffffff82169063a4c0ed369061104490339087908790600401611eda565b5f604051808303815f87803b15801561105b575f80fd5b505af115801561106d573d5f803e3d5ffd5b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff82166110da5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105b0565b8060355f8282546110eb9190611ea2565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6060606780546103ce90611e57565b6060606880546103ce90611e57565b73ffffffffffffffffffffffffffffffffffffffff82166111f75760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260336020526040902054818110156112925760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f8181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610cf4565b505050565b5f54610100900460ff166113775760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6113b6816040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506115a5565b50565b5f54610100900460ff166114355760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6105c38282611648565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526099602052604090208054600181018255905b50919050565b5f61046261147f610fe3565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b5f805f6114c785856116dd565b90925090505f8160048111156114df576114df611f17565b14801561151757508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b80611528575061152886868661171f565b9695505050505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f61155c611877565b6115646118cf565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b5f54610100900460ff166116215760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b606761162d8382611f8f565b50606861163a8282611f8f565b50505f606581905560665550565b5f54610100900460ff166116c45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b60366116d08382611f8f565b5060376112f68282611f8f565b5f808251604103611711576020830151604084015160608501515f1a611705878285856118ff565b94509450505050611718565b505f905060025b9250929050565b5f805f8573ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b86866040516024016117549291906120a7565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290516117dd91906120c7565b5f60405180830381855afa9150503d805f8114611815576040519150601f19603f3d011682016040523d82523d5f602084013e61181a565b606091505b509150915081801561182e57506020815110155b8015611528575080517f1626ba7e000000000000000000000000000000000000000000000000000000009061186c90830160209081019084016120e2565b149695505050505050565b5f80611881611150565b805190915015611898578051602090910120919050565b60655480156118a75792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b5f806118d961115f565b8051909150156118f0578051602090910120919050565b60665480156118a75792915050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561193457505f905060036119de565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611985573d5f803e3d5ffd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166119d8575f600192509250506119de565b91505f90505b94509492505050565b5f5b83811015611a015781810151838201526020016119e9565b50505f910152565b5f8151808452611a208160208601602086016119e7565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f611a646020830184611a09565b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a8e575f80fd5b919050565b5f8060408385031215611aa4575f80fd5b611aad83611a6b565b946020939093013593505050565b5f805f60608486031215611acd575f80fd5b611ad684611a6b565b9250611ae460208501611a6b565b9150604084013590509250925092565b5f805f8060608587031215611b07575f80fd5b611b1085611a6b565b935060208501359250604085013567ffffffffffffffff80821115611b33575f80fd5b818701915087601f830112611b46575f80fd5b813581811115611b54575f80fd5b886020828501011115611b65575f80fd5b95989497505060200194505050565b5f60208284031215611b84575f80fd5b611a6482611a6b565b7fff00000000000000000000000000000000000000000000000000000000000000881681525f602060e06020840152611bc960e084018a611a09565b8381036040850152611bdb818a611a09565b6060850189905273ffffffffffffffffffffffffffffffffffffffff8816608086015260a0850187905284810360c0860152855180825260208088019350909101905f5b81811015611c3b57835183529284019291840191600101611c1f565b50909c9b505050505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112611c89575f80fd5b813567ffffffffffffffff80821115611ca457611ca4611c4d565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611cea57611cea611c4d565b81604052838152866020858801011115611d02575f80fd5b836020870160208301375f602085830101528094505050505092915050565b803560ff81168114611a8e575f80fd5b5f805f805f60a08688031215611d45575f80fd5b853567ffffffffffffffff80821115611d5c575f80fd5b611d6889838a01611c7a565b96506020880135915080821115611d7d575f80fd5b50611d8a88828901611c7a565b945050611d9960408701611d21565b9250611da760608701611a6b565b9150611db560808701611a6b565b90509295509295909350565b5f805f805f805f60e0888a031215611dd7575f80fd5b611de088611a6b565b9650611dee60208901611a6b565b95506040880135945060608801359350611e0a60808901611d21565b925060a0880135915060c0880135905092959891949750929550565b5f8060408385031215611e37575f80fd5b611e4083611a6b565b9150611e4e60208401611a6b565b90509250929050565b600181811c90821680611e6b57607f821691505b60208210810361146d577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b80820180821115610462577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f611f0e6060830184611a09565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b601f8211156112f657805f5260205f20601f840160051c81016020851015611f695750805b601f840160051c820191505b81811015611f88575f8155600101611f75565b5050505050565b815167ffffffffffffffff811115611fa957611fa9611c4d565b611fbd81611fb78454611e57565b84611f44565b602080601f83116001811461200f575f8415611fd95750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610a00565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561205b5788860151825594840194600190910190840161203c565b508582101561209757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f6120bf6040830184611a09565b949350505050565b5f82516120d88184602087016119e7565b9190910192915050565b5f602082840312156120f2575f80fd5b505191905056fea164736f6c6343000818000a diff --git a/bindings/bindings/l1lidogateway.go b/bindings/bindings/l1lidogateway.go index 70d975c81..70c4caf6e 100644 --- a/bindings/bindings/l1lidogateway.go +++ b/bindings/bindings/l1lidogateway.go @@ -31,8 +31,8 @@ var ( // L1LidoGatewayMetaData contains all meta data concerning the L1LidoGateway contract. var L1LidoGatewayMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"DepositAndCallIsNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorAccountIsZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositZeroAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNonZeroMsgValue\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL1Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL2Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsEnabled\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"DepositERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"DepositsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"DepositsEnabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"FinalizeWithdrawERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"RefundERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsEnabled\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEPOSITS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEPOSITS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"depositERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"depositERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"depositERC20AndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"finalizeWithdrawERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"}],\"name\":\"getL2ERC20Address\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getRoleMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"}],\"name\":\"getRoleMemberCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_counterpart\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_router\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_depositsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_depositsDisabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsDisabler\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isDepositsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isWithdrawalsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"}],\"name\":\"onDropMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"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\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"router\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", - Bin: "0x60c060405234801562000010575f80fd5b5060405162003368380380620033688339810160408190526200003391620001dc565b6001600160a01b03808316608081905290821660a0526200009b5760405162461bcd60e51b815260206004820152601460248201527f7a65726f206c31746f6b656e206164647265737300000000000000000000000060448201526064015b60405180910390fd5b6001600160a01b038116620000f35760405162461bcd60e51b815260206004820152601460248201527f7a65726f206c32546f6b656e2061646472657373000000000000000000000000604482015260640162000092565b620000fd62000105565b505062000212565b5f54610100900460ff16156200016e5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840162000092565b5f5460ff90811614620001be575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b0381168114620001d7575f80fd5b919050565b5f8060408385031215620001ee575f80fd5b620001f983620001c0565b91506200020960208401620001c0565b90509250929050565b60805160a0516130fc6200026c5f395f818161027b015281816110880152818161155a015281816117030152611ad401525f818161047c0152818161101c015281816113cb015281816117dc0152611a6801526130fc5ff3fe6080604052600436106101d0575f3560e01c80639010d07c116100fd578063d547741f11610092578063f27ebced11610062578063f27ebced14610574578063f2fde38b14610593578063f887ea40146105b2578063fadcc54a146105d1575f80fd5b8063d547741f146104fb578063e3b523e31461051a578063e8bac93b1461054d578063f219fa6614610561575f80fd5b8063c01e1bd6116100cd578063c01e1bd61461046b578063c0c53b8b1461049e578063c676ad29146104bd578063ca15c873146104dc575f80fd5b80639010d07c1461040557806391d1485414610424578063ac67e1af14610443578063ad960ce114610457575f80fd5b80635e4c57a411610173578063797594b011610143578063797594b01461038357806384bd13b0146103a25780638d7601c0146103b55780638da5cb5b146103e8575f80fd5b80635e4c57a4146102df5780635ed2c220146102f35780636f18bd221461032e578063715018a61461036f575f80fd5b80632f2ff15d116101ae5780632f2ff15d1461020f5780633cb747bf1461022e57806356eff2671461026a5780635777bf501461029d575f80fd5b80630aea8c26146101d457806314298c51146101e957806321425ee0146101fc575b5f80fd5b6101e76101e23660046129e2565b610604565b005b6101e76101f7366004612a96565b610618565b6101e761020a366004612ad5565b61089d565b34801561021a575f80fd5b506101e7610229366004612b07565b6108d6565b348015610239575f80fd5b5060995461024d906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610275575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a8575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610261565b3480156102ea575f80fd5b506101e76108ec565b3480156102fe575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102cf565b348015610339575f80fd5b506103617f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610261565b34801561037a575f80fd5b506101e7610a1e565b34801561038e575f80fd5b5060975461024d906001600160a01b031681565b6101e76103b0366004612b35565b610a31565b3480156103c0575f80fd5b506103617f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103f3575f80fd5b506065546001600160a01b031661024d565b348015610410575f80fd5b5061024d61041f366004612bc7565b610c21565b34801561042f575f80fd5b506102cf61043e366004612b07565b610c60565b34801561044e575f80fd5b506101e7610c96565b348015610462575f80fd5b506101e7610dc4565b348015610476575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104a9575f80fd5b506101e76104b8366004612be7565b610eda565b3480156104c8575f80fd5b5061024d6104d7366004612c2f565b611018565b3480156104e7575f80fd5b506103616104f6366004612c51565b6110ad565b348015610506575f80fd5b506101e7610515366004612b07565b6110e2565b348015610525575f80fd5b506103617f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610558575f80fd5b506101e76110f4565b6101e761056f366004612c68565b61120f565b34801561057f575f80fd5b506101e761058e366004612cab565b61121b565b34801561059e575f80fd5b506101e76105ad366004612c2f565b611330565b3480156105bd575f80fd5b5060985461024d906001600160a01b031681565b3480156105dc575f80fd5b506103617f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b61061185858585856113c0565b5050505050565b6099546001600160a01b03163381146106785760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d89190612d04565b6001600160a01b0316736f297c61b5c92ef107ffd30cd56affe5a273e8416001600160a01b03161461074c5760405162461bcd60e51b815260206004820152601b60248201527f6f6e6c792063616c6c656420696e2064726f7020636f6e746578740000000000604482015260640161066f565b610754611780565b7f8431f5c10000000000000000000000000000000000000000000000000000000061078260045f8587612d1f565b61078b91612d46565b7fffffffff0000000000000000000000000000000000000000000000000000000016146107fa5760405162461bcd60e51b815260206004820152601060248201527f696e76616c69642073656c6563746f7200000000000000000000000000000000604482015260640161066f565b5f808061080a8560048189612d1f565b8101906108179190612d8e565b50945050935050925061082b8383836117d9565b61083f6001600160a01b038416838361187d565b816001600160a01b0316836001600160a01b03167fdbdf8eb487847e4c0f22847f5dac07f2d3690f96f581a6ae4b102769917645a88360405161088491815260200190565b60405180910390a350505061089860018055565b505050565b6108988333845f5b6040519080825280601f01601f1916602001820160405280156108cf576020820181803683370190505b50856113c0565b6108de61192c565b6108e88282611986565b5050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610948576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109727f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c60565b6109a8576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b610a2661192c565b610a2f5f6119fc565b565b6099546001600160a01b0316338114610a8c5760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c000000000000000000604482015260640161066f565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ac8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aec9190612d04565b6097546001600160a01b03908116911614610b495760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e746572706172740000000000000000604482015260640161066f565b610b51611780565b610b6088888888888888611a65565b610b746001600160a01b038916868661187d565b610bb38584848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611be092505050565b856001600160a01b0316876001600160a01b0316896001600160a01b03167fc6f985873b37805705f6bce756dce3d1ff4b603e298d506288cce499926846a788888888604051610c069493929190612e19565b60405180910390a4610c1760018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c74565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c7f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610cf1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d1b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c60565b610d51576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e24576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c60565b610e84576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ef857505f54600160ff909116105b80610f115750303b158015610f1157505f5460ff166001145b610f835760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fc2575f805461ff0019166101001790555b610fcd848484611ca0565b8015611012575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611085576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c5a90611de3565b6110ea61192c565b6108e88282611dec565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611155576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61117f7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c60565b6111b5576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b6110128484845f6108a5565b5f54600290610100900460ff1615801561123b57505f5460ff8083169116105b6112ad5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112e985858585611e62565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b61133861192c565b6001600160a01b0381166113b45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161066f565b6113bd816119fc565b50565b6113c8611780565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611434576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611475576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff166114d0576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f03611509576040517f14fc8bd900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f611515888787612043565b8051919850965090915015611556576040517fb286dd6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f887f0000000000000000000000000000000000000000000000000000000000000000838a8a8a60405160240161159296959493929190612eab565b60408051601f19818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8431f5c10000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa15801561164b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061166f9190612ef8565b6099546097546040517f5f7b15770000000000000000000000000000000000000000000000000000000081529293506001600160a01b0391821692635f7b15779234926116c9929116905f9088908d908b90600401612f0f565b5f604051808303818588803b1580156116e0575f80fd5b505af11580156116f2573d5f803e3d5ffd5b5050505050826001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168b6001600160a01b03167f1a6c38816de45937fd5cd974f9694fe10e64163ba12a92abf0f4b6b23ad886728c8c8c8760405161176a9493929190612f51565b60405180910390a4505050505061061160018055565b6002600154036117d25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161066f565b6002600155565b827f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611845576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611012576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040516001600160a01b0383166024820152604481018290526108989084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152612299565b60018055565b6065546001600160a01b03163314610a2f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161066f565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206119bc908261237f565b156108e85760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611ad1576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611b3d576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611b9d576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611bd5576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050565b5f8151118015611bf957505f826001600160a01b03163b115b156108e8576040517f444b281f0000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063444b281f90611c43908490600401612f89565b5f604051808303815f87803b158015611c5a575f80fd5b505af1158015611c6c573d5f803e3d5ffd5b505050505050565b5f610c578383612393565b6001600160a01b0381165f9081526001830160205260408120541515610c57565b6001600160a01b038316611cf65760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e7465727061727420616464726573730000000000000000604482015260640161066f565b6001600160a01b038116611d4c5760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e676572206164647265737300000000000000000000604482015260640161066f565b611d546123b9565b611d5c61243d565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561089857609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c5a825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611e2290826124c1565b156108e85760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611ede5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611f663390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611fc57f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a86611986565b611fef7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d685611986565b6120197f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d84611986565b6106117f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c83611986565b6098545f908190606090339081906001600160a01b031681900361211357858060200190518101906120759190612f9b565b6040517fc52a3bbc0000000000000000000000000000000000000000000000000000000081526001600160a01b0380841660048301528b81166024830152604482018b905291985091925083169063c52a3bbc906064016020604051808303815f875af11580156120e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061210c9190612ef8565b965061223d565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038a16906370a0823190602401602060405180830381865afa158015612170573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121949190612ef8565b90506121ab6001600160a01b038a1683308b6124d5565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038b16906370a0823190602401602060405180830381865afa158015612208573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061222c9190612ef8565b90506122388282613023565b985050505b5f871161228c5760405162461bcd60e51b815260206004820152601360248201527f6465706f736974207a65726f20616d6f756e7400000000000000000000000000604482015260640161066f565b9795965093949350505050565b5f6122ed826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166125269092919063ffffffff16565b905080515f148061230d57508080602001905181019061230d919061305b565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f74207375636365656400000000000000000000000000000000000000000000606482015260840161066f565b5f610c57836001600160a01b03841661253c565b5f825f0182815481106123a8576123a861307a565b905f5260205f200154905092915050565b5f54610100900460ff166124355760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f612588565b5f54610100900460ff166124b95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f612604565b5f610c57836001600160a01b038416612689565b6040516001600160a01b03808516602483015283166044820152606481018290526110129085907f23b872dd00000000000000000000000000000000000000000000000000000000906084016118c2565b606061253484845f8561276c565b949350505050565b5f81815260018301602052604081205461258157508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c5a565b505f610c5a565b5f54610100900460ff166119265760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b5f54610100900460ff166126805760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f336119fc565b5f8181526001830160205260408120548015612763575f6126ab600183613023565b85549091505f906126be90600190613023565b905081811461271d575f865f0182815481106126dc576126dc61307a565b905f5260205f200154905080875f0184815481106126fc576126fc61307a565b5f918252602080832090910192909255918252600188019052604090208390555b855486908061272e5761272e6130a7565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c5a565b5f915050610c5a565b6060824710156127e45760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c0000000000000000000000000000000000000000000000000000606482015260840161066f565b5f80866001600160a01b031685876040516127ff91906130d4565b5f6040518083038185875af1925050503d805f8114612839576040519150601f19603f3d011682016040523d82523d5f602084013e61283e565b606091505b509150915061284f8783838761285a565b979650505050505050565b606083156128c85782515f036128c1576001600160a01b0385163b6128c15760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161066f565b5081612534565b61253483838151156128dd5781518083602001fd5b8060405162461bcd60e51b815260040161066f9190612f89565b6001600160a01b03811681146113bd575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156129615761296161290b565b604052919050565b5f67ffffffffffffffff8211156129825761298261290b565b50601f01601f191660200190565b5f82601f83011261299f575f80fd5b81356129b26129ad82612969565b612938565b8181528460208386010111156129c6575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a086880312156129f6575f80fd5b8535612a01816128f7565b94506020860135612a11816128f7565b935060408601359250606086013567ffffffffffffffff811115612a33575f80fd5b612a3f88828901612990565b95989497509295608001359392505050565b5f8083601f840112612a61575f80fd5b50813567ffffffffffffffff811115612a78575f80fd5b602083019150836020828501011115612a8f575f80fd5b9250929050565b5f8060208385031215612aa7575f80fd5b823567ffffffffffffffff811115612abd575f80fd5b612ac985828601612a51565b90969095509350505050565b5f805f60608486031215612ae7575f80fd5b8335612af2816128f7565b95602085013595506040909401359392505050565b5f8060408385031215612b18575f80fd5b823591506020830135612b2a816128f7565b809150509250929050565b5f805f805f805f60c0888a031215612b4b575f80fd5b8735612b56816128f7565b96506020880135612b66816128f7565b95506040880135612b76816128f7565b94506060880135612b86816128f7565b93506080880135925060a088013567ffffffffffffffff811115612ba8575f80fd5b612bb48a828b01612a51565b989b979a50959850939692959293505050565b5f8060408385031215612bd8575f80fd5b50508035926020909101359150565b5f805f60608486031215612bf9575f80fd5b8335612c04816128f7565b92506020840135612c14816128f7565b91506040840135612c24816128f7565b809150509250925092565b5f60208284031215612c3f575f80fd5b8135612c4a816128f7565b9392505050565b5f60208284031215612c61575f80fd5b5035919050565b5f805f8060808587031215612c7b575f80fd5b8435612c86816128f7565b93506020850135612c96816128f7565b93969395505050506040820135916060013590565b5f805f8060808587031215612cbe575f80fd5b8435612cc9816128f7565b93506020850135612cd9816128f7565b92506040850135612ce9816128f7565b91506060850135612cf9816128f7565b939692955090935050565b5f60208284031215612d14575f80fd5b8151612c4a816128f7565b5f8085851115612d2d575f80fd5b83861115612d39575f80fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612d865780818660040360031b1b83161692505b505092915050565b5f805f805f8060c08789031215612da3575f80fd5b8635612dae816128f7565b95506020870135612dbe816128f7565b94506040870135612dce816128f7565b93506060870135612dde816128f7565b92506080870135915060a087013567ffffffffffffffff811115612e00575f80fd5b612e0c89828a01612990565b9150509295509295509295565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f909201601f191601019392505050565b5f5b83811015612e78578181015183820152602001612e60565b50505f910152565b5f8151808452612e97816020860160208601612e5e565b601f01601f19169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612eec60c0830184612e80565b98975050505050505050565b5f60208284031215612f08575f80fd5b5051919050565b5f6001600160a01b03808816835286602084015260a06040840152612f3760a0840187612e80565b606084019590955292909216608090910152509392505050565b6001600160a01b0385168152836020820152608060408201525f612f786080830185612e80565b905082606083015295945050505050565b602081525f610c576020830184612e80565b5f8060408385031215612fac575f80fd5b8251612fb7816128f7565b602084015190925067ffffffffffffffff811115612fd3575f80fd5b8301601f81018513612fe3575f80fd5b8051612ff16129ad82612969565b818152866020838501011115613005575f80fd5b613016826020830160208601612e5e565b8093505050509250929050565b81810381811115610c5a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6020828403121561306b575f80fd5b81518015158114612c4a575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82516130e5818460208701612e5e565b919091019291505056fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"DepositAndCallIsNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorAccountIsZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositZeroAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNonZeroMsgValue\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL1Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL2Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"DepositERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"DepositsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"DepositsEnabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"FinalizeWithdrawERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"RefundERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsEnabled\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEPOSITS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEPOSITS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"depositERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"depositERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"depositERC20AndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"finalizeWithdrawERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"}],\"name\":\"getL2ERC20Address\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getRoleMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"}],\"name\":\"getRoleMemberCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_counterpart\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_router\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_depositsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_depositsDisabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsDisabler\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isDepositsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isWithdrawalsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"}],\"name\":\"onDropMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"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\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"router\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", + Bin: "0x60c060405234801562000010575f80fd5b50604051620032d1380380620032d1833981016040819052620000339162000168565b6001600160a01b03808316608081905290821660a05215806200005d57506001600160a01b038116155b156200007c5760405163a7f9319d60e01b815260040160405180910390fd5b620000866200008e565b50506200019e565b5f54610100900460ff1615620000fa5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200014a575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811462000163575f80fd5b919050565b5f80604083850312156200017a575f80fd5b62000185836200014c565b915062000195602084016200014c565b90509250929050565b60805160a0516130e0620001f15f395f818161027b015281816110880152818161155b0152611ab801525f818161047c0152818161101c015281816113cb015281816117c00152611a4c01526130e05ff3fe6080604052600436106101d0575f3560e01c80639010d07c116100fd578063d547741f11610092578063f27ebced11610062578063f27ebced14610574578063f2fde38b14610593578063f887ea40146105b2578063fadcc54a146105d1575f80fd5b8063d547741f146104fb578063e3b523e31461051a578063e8bac93b1461054d578063f219fa6614610561575f80fd5b8063c01e1bd6116100cd578063c01e1bd61461046b578063c0c53b8b1461049e578063c676ad29146104bd578063ca15c873146104dc575f80fd5b80639010d07c1461040557806391d1485414610424578063ac67e1af14610443578063ad960ce114610457575f80fd5b80635e4c57a411610173578063797594b011610143578063797594b01461038357806384bd13b0146103a25780638d7601c0146103b55780638da5cb5b146103e8575f80fd5b80635e4c57a4146102df5780635ed2c220146102f35780636f18bd221461032e578063715018a61461036f575f80fd5b80632f2ff15d116101ae5780632f2ff15d1461020f5780633cb747bf1461022e57806356eff2671461026a5780635777bf501461029d575f80fd5b80630aea8c26146101d457806314298c51146101e957806321425ee0146101fc575b5f80fd5b6101e76101e23660046129c6565b610604565b005b6101e76101f7366004612a7a565b610618565b6101e761020a366004612ab9565b61089d565b34801561021a575f80fd5b506101e7610229366004612aeb565b6108d6565b348015610239575f80fd5b5060995461024d906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610275575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a8575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610261565b3480156102ea575f80fd5b506101e76108ec565b3480156102fe575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102cf565b348015610339575f80fd5b506103617f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610261565b34801561037a575f80fd5b506101e7610a1e565b34801561038e575f80fd5b5060975461024d906001600160a01b031681565b6101e76103b0366004612b19565b610a31565b3480156103c0575f80fd5b506103617f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103f3575f80fd5b506065546001600160a01b031661024d565b348015610410575f80fd5b5061024d61041f366004612bab565b610c21565b34801561042f575f80fd5b506102cf61043e366004612aeb565b610c60565b34801561044e575f80fd5b506101e7610c96565b348015610462575f80fd5b506101e7610dc4565b348015610476575f80fd5b5061024d7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104a9575f80fd5b506101e76104b8366004612bcb565b610eda565b3480156104c8575f80fd5b5061024d6104d7366004612c13565b611018565b3480156104e7575f80fd5b506103616104f6366004612c35565b6110ad565b348015610506575f80fd5b506101e7610515366004612aeb565b6110e2565b348015610525575f80fd5b506103617f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610558575f80fd5b506101e76110f4565b6101e761056f366004612c4c565b61120f565b34801561057f575f80fd5b506101e761058e366004612c8f565b61121b565b34801561059e575f80fd5b506101e76105ad366004612c13565b611330565b3480156105bd575f80fd5b5060985461024d906001600160a01b031681565b3480156105dc575f80fd5b506103617f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b61061185858585856113c0565b5050505050565b6099546001600160a01b03163381146106785760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d89190612ce8565b6001600160a01b0316736f297c61b5c92ef107ffd30cd56affe5a273e8416001600160a01b03161461074c5760405162461bcd60e51b815260206004820152601b60248201527f6f6e6c792063616c6c656420696e2064726f7020636f6e746578740000000000604482015260640161066f565b610754611764565b7f8431f5c10000000000000000000000000000000000000000000000000000000061078260045f8587612d03565b61078b91612d2a565b7fffffffff0000000000000000000000000000000000000000000000000000000016146107fa5760405162461bcd60e51b815260206004820152601060248201527f696e76616c69642073656c6563746f7200000000000000000000000000000000604482015260640161066f565b5f808061080a8560048189612d03565b8101906108179190612d72565b50945050935050925061082b8383836117bd565b61083f6001600160a01b0384168383611861565b816001600160a01b0316836001600160a01b03167fdbdf8eb487847e4c0f22847f5dac07f2d3690f96f581a6ae4b102769917645a88360405161088491815260200190565b60405180910390a350505061089860018055565b505050565b6108988333845f5b6040519080825280601f01601f1916602001820160405280156108cf576020820181803683370190505b50856113c0565b6108de611910565b6108e8828261196a565b5050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610948576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109727f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c60565b6109a8576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b610a26611910565b610a2f5f6119e0565b565b6099546001600160a01b0316338114610a8c5760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c000000000000000000604482015260640161066f565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ac8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aec9190612ce8565b6097546001600160a01b03908116911614610b495760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e746572706172740000000000000000604482015260640161066f565b610b51611764565b610b6088888888888888611a49565b610b746001600160a01b0389168686611861565b610bb38584848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611bc492505050565b856001600160a01b0316876001600160a01b0316896001600160a01b03167fc6f985873b37805705f6bce756dce3d1ff4b603e298d506288cce499926846a788888888604051610c069493929190612dfd565b60405180910390a4610c1760018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c58565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c579083611c63565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610cf1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d1b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c60565b610d51576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e24576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c60565b610e84576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ef857505f54600160ff909116105b80610f115750303b158015610f1157505f5460ff166001145b610f835760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fc2575f805461ff0019166101001790555b610fcd848484611c84565b8015611012575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611085576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c5a90611dc7565b6110ea611910565b6108e88282611dd0565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611155576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61117f7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c60565b6111b5576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b6110128484845f6108a5565b5f54600290610100900460ff1615801561123b57505f5460ff8083169116105b6112ad5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161066f565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112e985858585611e46565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b611338611910565b6001600160a01b0381166113b45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161066f565b6113bd816119e0565b50565b6113c8611764565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611434576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611475576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff166114d0576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f03611509576040517f14fc8bd900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f611515888787612027565b8051919850965090915015611556576040517fb286dd6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f0000000000000000000000000000000000000000000000000000000000000000905f90611595908b90849086908d908d908d90602401612e8f565b60408051601f19818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8431f5c10000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa15801561164e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116729190612edc565b6099546097546040517f5f7b15770000000000000000000000000000000000000000000000000000000081529293506001600160a01b0391821692635f7b15779234926116cc929116905f9088908e908c90600401612ef3565b5f604051808303818588803b1580156116e3575f80fd5b505af11580156116f5573d5f803e3d5ffd5b5050505050836001600160a01b0316836001600160a01b03168c6001600160a01b03167f1a6c38816de45937fd5cd974f9694fe10e64163ba12a92abf0f4b6b23ad886728d8d8d8760405161174d9493929190612f35565b60405180910390a450505050505061061160018055565b6002600154036117b65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161066f565b6002600155565b827f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611829576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611012576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040516001600160a01b0383166024820152604481018290526108989084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915261227d565b60018055565b6065546001600160a01b03163314610a2f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161066f565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206119a09082612363565b156108e85760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611ab5576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611b21576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611b81576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611bb9576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050565b5f8151118015611bdd57505f826001600160a01b03163b115b156108e8576040517f444b281f0000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063444b281f90611c27908490600401612f6d565b5f604051808303815f87803b158015611c3e575f80fd5b505af1158015611c50573d5f803e3d5ffd5b505050505050565b5f610c578383612377565b6001600160a01b0381165f9081526001830160205260408120541515610c57565b6001600160a01b038316611cda5760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e7465727061727420616464726573730000000000000000604482015260640161066f565b6001600160a01b038116611d305760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e676572206164647265737300000000000000000000604482015260640161066f565b611d3861239d565b611d40612421565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561089857609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c5a825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611e0690826124a5565b156108e85760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611ec25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611f4a3390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611fa97f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a8661196a565b611fd37f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d68561196a565b611ffd7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d8461196a565b6106117f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c8361196a565b6098545f908190606090339081906001600160a01b03168190036120f757858060200190518101906120599190612f7f565b6040517fc52a3bbc0000000000000000000000000000000000000000000000000000000081526001600160a01b0380841660048301528b81166024830152604482018b905291985091925083169063c52a3bbc906064016020604051808303815f875af11580156120cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120f09190612edc565b9650612221565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038a16906370a0823190602401602060405180830381865afa158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190612edc565b905061218f6001600160a01b038a1683308b6124b9565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f906001600160a01b038b16906370a0823190602401602060405180830381865afa1580156121ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122109190612edc565b905061221c8282613007565b985050505b5f87116122705760405162461bcd60e51b815260206004820152601360248201527f6465706f736974207a65726f20616d6f756e7400000000000000000000000000604482015260640161066f565b9795965093949350505050565b5f6122d1826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661250a9092919063ffffffff16565b905080515f14806122f15750808060200190518101906122f1919061303f565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f74207375636365656400000000000000000000000000000000000000000000606482015260840161066f565b5f610c57836001600160a01b038416612520565b5f825f01828154811061238c5761238c61305e565b905f5260205f200154905092915050565b5f54610100900460ff166124195760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f61256c565b5f54610100900460ff1661249d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f6125e8565b5f610c57836001600160a01b03841661266d565b6040516001600160a01b03808516602483015283166044820152606481018290526110129085907f23b872dd00000000000000000000000000000000000000000000000000000000906084016118a6565b606061251884845f85612750565b949350505050565b5f81815260018301602052604081205461256557508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c5a565b505f610c5a565b5f54610100900460ff1661190a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b5f54610100900460ff166126645760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161066f565b610a2f336119e0565b5f8181526001830160205260408120548015612747575f61268f600183613007565b85549091505f906126a290600190613007565b9050818114612701575f865f0182815481106126c0576126c061305e565b905f5260205f200154905080875f0184815481106126e0576126e061305e565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806127125761271261308b565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c5a565b5f915050610c5a565b6060824710156127c85760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c0000000000000000000000000000000000000000000000000000606482015260840161066f565b5f80866001600160a01b031685876040516127e391906130b8565b5f6040518083038185875af1925050503d805f811461281d576040519150601f19603f3d011682016040523d82523d5f602084013e612822565b606091505b50915091506128338783838761283e565b979650505050505050565b606083156128ac5782515f036128a5576001600160a01b0385163b6128a55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161066f565b5081612518565b61251883838151156128c15781518083602001fd5b8060405162461bcd60e51b815260040161066f9190612f6d565b6001600160a01b03811681146113bd575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612945576129456128ef565b604052919050565b5f67ffffffffffffffff821115612966576129666128ef565b50601f01601f191660200190565b5f82601f830112612983575f80fd5b81356129966129918261294d565b61291c565b8181528460208386010111156129aa575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a086880312156129da575f80fd5b85356129e5816128db565b945060208601356129f5816128db565b935060408601359250606086013567ffffffffffffffff811115612a17575f80fd5b612a2388828901612974565b95989497509295608001359392505050565b5f8083601f840112612a45575f80fd5b50813567ffffffffffffffff811115612a5c575f80fd5b602083019150836020828501011115612a73575f80fd5b9250929050565b5f8060208385031215612a8b575f80fd5b823567ffffffffffffffff811115612aa1575f80fd5b612aad85828601612a35565b90969095509350505050565b5f805f60608486031215612acb575f80fd5b8335612ad6816128db565b95602085013595506040909401359392505050565b5f8060408385031215612afc575f80fd5b823591506020830135612b0e816128db565b809150509250929050565b5f805f805f805f60c0888a031215612b2f575f80fd5b8735612b3a816128db565b96506020880135612b4a816128db565b95506040880135612b5a816128db565b94506060880135612b6a816128db565b93506080880135925060a088013567ffffffffffffffff811115612b8c575f80fd5b612b988a828b01612a35565b989b979a50959850939692959293505050565b5f8060408385031215612bbc575f80fd5b50508035926020909101359150565b5f805f60608486031215612bdd575f80fd5b8335612be8816128db565b92506020840135612bf8816128db565b91506040840135612c08816128db565b809150509250925092565b5f60208284031215612c23575f80fd5b8135612c2e816128db565b9392505050565b5f60208284031215612c45575f80fd5b5035919050565b5f805f8060808587031215612c5f575f80fd5b8435612c6a816128db565b93506020850135612c7a816128db565b93969395505050506040820135916060013590565b5f805f8060808587031215612ca2575f80fd5b8435612cad816128db565b93506020850135612cbd816128db565b92506040850135612ccd816128db565b91506060850135612cdd816128db565b939692955090935050565b5f60208284031215612cf8575f80fd5b8151612c2e816128db565b5f8085851115612d11575f80fd5b83861115612d1d575f80fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612d6a5780818660040360031b1b83161692505b505092915050565b5f805f805f8060c08789031215612d87575f80fd5b8635612d92816128db565b95506020870135612da2816128db565b94506040870135612db2816128db565b93506060870135612dc2816128db565b92506080870135915060a087013567ffffffffffffffff811115612de4575f80fd5b612df089828a01612974565b9150509295509295509295565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f909201601f191601019392505050565b5f5b83811015612e5c578181015183820152602001612e44565b50505f910152565b5f8151808452612e7b816020860160208601612e42565b601f01601f19169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612ed060c0830184612e64565b98975050505050505050565b5f60208284031215612eec575f80fd5b5051919050565b5f6001600160a01b03808816835286602084015260a06040840152612f1b60a0840187612e64565b606084019590955292909216608090910152509392505050565b6001600160a01b0385168152836020820152608060408201525f612f5c6080830185612e64565b905082606083015295945050505050565b602081525f610c576020830184612e64565b5f8060408385031215612f90575f80fd5b8251612f9b816128db565b602084015190925067ffffffffffffffff811115612fb7575f80fd5b8301601f81018513612fc7575f80fd5b8051612fd56129918261294d565b818152866020838501011115612fe9575f80fd5b612ffa826020830160208601612e42565b8093505050509250929050565b81810381811115610c5a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6020828403121561304f575f80fd5b81518015158114612c2e575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82516130c9818460208701612e42565b919091019291505056fea164736f6c6343000818000a", } // L1LidoGatewayABI is the input ABI used to generate the binding from. diff --git a/bindings/bindings/l1lidogateway_more.go b/bindings/bindings/l1lidogateway_more.go index bd41e634b..7d00319ce 100644 --- a/bindings/bindings/l1lidogateway_more.go +++ b/bindings/bindings/l1lidogateway_more.go @@ -13,7 +13,7 @@ const L1LidoGatewayStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract var L1LidoGatewayStorageLayout = new(solc.StorageLayout) -var L1LidoGatewayDeployedBin = "0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063d547741f11610092578063f27ebced11610062578063f27ebced146105a8578063f2fde38b146105c7578063f887ea40146105e6578063fadcc54a14610612575f80fd5b8063d547741f1461052f578063e3b523e31461054e578063e8bac93b14610581578063f219fa6614610595575f80fd5b8063c01e1bd6116100cd578063c01e1bd61461049f578063c0c53b8b146104d2578063c676ad29146104f1578063ca15c87314610510575f80fd5b80639010d07c1461043957806391d1485414610458578063ac67e1af14610477578063ad960ce11461048b575f80fd5b80635e4c57a411610173578063797594b011610143578063797594b01461039d57806384bd13b0146103c95780638d7601c0146103dc5780638da5cb5b1461040f575f80fd5b80635e4c57a4146102f95780635ed2c2201461030d5780636f18bd2214610348578063715018a614610389575f80fd5b80632f2ff15d116101ae5780632f2ff15d1461020f5780633cb747bf1461022e57806356eff267146102845780635777bf50146102b7575f80fd5b80630aea8c26146101d457806314298c51146101e957806321425ee0146101fc575b5f80fd5b6101e76101e236600461305d565b610645565b005b6101e76101f7366004613111565b610659565b6101e761020a366004613150565b610987565b34801561021a575f80fd5b506101e7610229366004613182565b6109c0565b348015610239575f80fd5b5060995461025a9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561028f575f80fd5b5061025a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102c2575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b604051901515815260200161027b565b348015610304575f80fd5b506101e76109d6565b348015610318575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102e9565b348015610353575f80fd5b5061037b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b60405190815260200161027b565b348015610394575f80fd5b506101e7610b08565b3480156103a8575f80fd5b5060975461025a9073ffffffffffffffffffffffffffffffffffffffff1681565b6101e76103d73660046131b0565b610b1b565b3480156103e7575f80fd5b5061037b7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b34801561041a575f80fd5b5060655473ffffffffffffffffffffffffffffffffffffffff1661025a565b348015610444575f80fd5b5061025a610453366004613242565b610d9a565b348015610463575f80fd5b506102e9610472366004613182565b610dd9565b348015610482575f80fd5b506101e7610e0f565b348015610496575f80fd5b506101e7610f3d565b3480156104aa575f80fd5b5061025a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104dd575f80fd5b506101e76104ec366004613262565b611070565b3480156104fc575f80fd5b5061025a61050b3660046132aa565b611202565b34801561051b575f80fd5b5061037b61052a3660046132cc565b6112b1565b34801561053a575f80fd5b506101e7610549366004613182565b6112e6565b348015610559575f80fd5b5061037b7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b34801561058c575f80fd5b506101e76112f8565b6101e76105a33660046132e3565b611430565b3480156105b3575f80fd5b506101e76105c2366004613326565b61143c565b3480156105d2575f80fd5b506101e76105e13660046132aa565b611588565b3480156105f1575f80fd5b5060985461025a9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561061d575f80fd5b5061037b7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b610652858585858561163f565b5050505050565b60995473ffffffffffffffffffffffffffffffffffffffff163381146106e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610729573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074d919061337f565b73ffffffffffffffffffffffffffffffffffffffff16736f297c61b5c92ef107ffd30cd56affe5a273e84173ffffffffffffffffffffffffffffffffffffffff16146107f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6f6e6c792063616c6c656420696e2064726f7020636f6e74657874000000000060448201526064016106d7565b6107fd611a85565b7f8431f5c10000000000000000000000000000000000000000000000000000000061082b60045f858761339a565b610834916133c1565b7fffffffff0000000000000000000000000000000000000000000000000000000016146108bd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f696e76616c69642073656c6563746f720000000000000000000000000000000060448201526064016106d7565b5f80806108cd856004818961339a565b8101906108da9190613409565b5094505093505092506108ee838383611af8565b61090f73ffffffffffffffffffffffffffffffffffffffff84168383611bb6565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fdbdf8eb487847e4c0f22847f5dac07f2d3690f96f581a6ae4b102769917645a88360405161096e91815260200190565b60405180910390a350505061098260018055565b505050565b6109828333845f5b6040519080825280601f01601f1916602001820160405280156109b9576020820181803683370190505b508561163f565b6109c8611c90565b6109d28282611d11565b5050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610a32576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a5c7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610dd9565b610a92576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b610b10611c90565b610b195f611d94565b565b60995473ffffffffffffffffffffffffffffffffffffffff16338114610b9d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064016106d7565b8073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610be6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c0a919061337f565b60975473ffffffffffffffffffffffffffffffffffffffff908116911614610c8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e74657270617274000000000000000060448201526064016106d7565b610c96611a85565b610ca588888888888888611e0a565b610cc673ffffffffffffffffffffffffffffffffffffffff89168686611bb6565b610d058584848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611fb992505050565b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fc6f985873b37805705f6bce756dce3d1ff4b603e298d506288cce499926846a788888888604051610d7f9493929190613494565b60405180910390a4610d9060018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610dd09083612067565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610dd09083612072565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610e6a576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e947f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610dd9565b610eca576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610f9d576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fc77f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610dd9565b610ffd576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff161580801561108e57505f54600160ff909116105b806110a75750303b1580156110a757505f5460ff166001145b611133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016106d7565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561118f575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61119a8484846120a0565b80156111fc575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b5f817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611289576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610dd39061224b565b6112ee611c90565b6109d28282612254565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611359576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113837f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610dd9565b6113b9576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b6111fc8484845f61098f565b5f54600290610100900460ff1615801561145c57505f5460ff8083169116105b6114e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016106d7565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611524858585856122d7565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b611590611c90565b73ffffffffffffffffffffffffffffffffffffffff8116611633576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106d7565b61163c81611d94565b50565b611647611a85565b847f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116cd576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff811661171b576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16611776576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f036117af576040517f14fc8bd900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6117bb8887876124fc565b80519198509650909150156117fc576040517fb286dd6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f887f0000000000000000000000000000000000000000000000000000000000000000838a8a8a6040516024016118389695949392919061356f565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8431f5c10000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f9373ffffffffffffffffffffffffffffffffffffffff9091169263ecc704289260048083019391928290030181865afa15801561191c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061194091906135c9565b6099546097546040517f5f7b157700000000000000000000000000000000000000000000000000000000815292935073ffffffffffffffffffffffffffffffffffffffff91821692635f7b15779234926119a7929116905f9088908d908b906004016135e0565b5f604051808303818588803b1580156119be575f80fd5b505af11580156119d0573d5f803e3d5ffd5b50505050508273ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167f1a6c38816de45937fd5cd974f9694fe10e64163ba12a92abf0f4b6b23ad886728c8c8c87604051611a6f949392919061362f565b60405180910390a4505050505061065260018055565b600260015403611af1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016106d7565b6002600155565b827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611b7e576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b34156111fc576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405173ffffffffffffffffffffffffffffffffffffffff83166024820152604481018290526109829084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526127ad565b60018055565b60655473ffffffffffffffffffffffffffffffffffffffff163314610b19576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d7565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611d4790826128ba565b156109d257604051339073ffffffffffffffffffffffffffffffffffffffff83169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b867f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611e90576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b867f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611f16576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611f76576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611fae576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050565b5f8151118015611fdf57505f8273ffffffffffffffffffffffffffffffffffffffff163b115b156109d2576040517f444b281f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83169063444b281f90612036908490600401613674565b5f604051808303815f87803b15801561204d575f80fd5b505af115801561205f573d5f803e3d5ffd5b505050505050565b5f610dd083836128db565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526001830160205260408120541515610dd0565b73ffffffffffffffffffffffffffffffffffffffff831661211d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f7a65726f20636f756e746572706172742061646472657373000000000000000060448201526064016106d7565b73ffffffffffffffffffffffffffffffffffffffff811661219a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f7a65726f206d657373656e67657220616464726573730000000000000000000060448201526064016106d7565b6121a2612901565b6121aa61299f565b6097805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609980548484169216919091179055821615610982576098805473ffffffffffffffffffffffffffffffffffffffff84167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610dd3825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed6020526040902061228a9082612a3d565b156109d257604051339073ffffffffffffffffffffffffffffffffffffffff83169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff1661236d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001781556124123390565b73ffffffffffffffffffffffffffffffffffffffff167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a261247e7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a86611d11565b6124a87f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d685611d11565b6124d27f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d84611d11565b6106527f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c83611d11565b6098545f9081906060903390819073ffffffffffffffffffffffffffffffffffffffff168190036125e6578580602001905181019061253b9190613686565b6040517fc52a3bbc00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80841660048301528b81166024830152604482018b905291985091925083169063c52a3bbc906064016020604051808303815f875af11580156125bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125df91906135c9565b9650612737565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f9073ffffffffffffffffffffffffffffffffffffffff8a16906370a0823190602401602060405180830381865afa158015612650573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061267491906135c9565b905061269873ffffffffffffffffffffffffffffffffffffffff8a1683308b612a5e565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f9073ffffffffffffffffffffffffffffffffffffffff8b16906370a0823190602401602060405180830381865afa158015612702573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061272691906135c9565b9050612732828261370e565b985050505b5f87116127a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f6465706f736974207a65726f20616d6f756e740000000000000000000000000060448201526064016106d7565b9795965093949350505050565b5f61280e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16612abc9092919063ffffffff16565b905080515f148061282e57508080602001905181019061282e9190613746565b610982576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016106d7565b5f610dd08373ffffffffffffffffffffffffffffffffffffffff8416612ad2565b5f825f0182815481106128f0576128f0613765565b905f5260205f200154905092915050565b5f54610100900460ff16612997576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b610b19612b1e565b5f54610100900460ff16612a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b610b19612bb4565b5f610dd08373ffffffffffffffffffffffffffffffffffffffff8416612c53565b60405173ffffffffffffffffffffffffffffffffffffffff808516602483015283166044820152606481018290526111fc9085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401611c08565b6060612aca84845f85612d36565b949350505050565b5f818152600183016020526040812054612b1757508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610dd3565b505f610dd3565b5f54610100900460ff16611c8a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b5f54610100900460ff16612c4a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b610b1933611d94565b5f8181526001830160205260408120548015612d2d575f612c7560018361370e565b85549091505f90612c889060019061370e565b9050818114612ce7575f865f018281548110612ca657612ca6613765565b905f5260205f200154905080875f018481548110612cc657612cc6613765565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080612cf857612cf8613792565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610dd3565b5f915050610dd3565b606082471015612dc8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016106d7565b5f808673ffffffffffffffffffffffffffffffffffffffff168587604051612df091906137bf565b5f6040518083038185875af1925050503d805f8114612e2a576040519150601f19603f3d011682016040523d82523d5f602084013e612e2f565b606091505b5091509150612e4087838387612e4b565b979650505050505050565b60608315612ee05782515f03612ed95773ffffffffffffffffffffffffffffffffffffffff85163b612ed9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106d7565b5081612aca565b612aca8383815115612ef55781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d79190613674565b73ffffffffffffffffffffffffffffffffffffffff8116811461163c575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fbe57612fbe612f4a565b604052919050565b5f67ffffffffffffffff821115612fdf57612fdf612f4a565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f83011261301a575f80fd5b813561302d61302882612fc6565b612f77565b818152846020838601011115613041575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a08688031215613071575f80fd5b853561307c81612f29565b9450602086013561308c81612f29565b935060408601359250606086013567ffffffffffffffff8111156130ae575f80fd5b6130ba8882890161300b565b95989497509295608001359392505050565b5f8083601f8401126130dc575f80fd5b50813567ffffffffffffffff8111156130f3575f80fd5b60208301915083602082850101111561310a575f80fd5b9250929050565b5f8060208385031215613122575f80fd5b823567ffffffffffffffff811115613138575f80fd5b613144858286016130cc565b90969095509350505050565b5f805f60608486031215613162575f80fd5b833561316d81612f29565b95602085013595506040909401359392505050565b5f8060408385031215613193575f80fd5b8235915060208301356131a581612f29565b809150509250929050565b5f805f805f805f60c0888a0312156131c6575f80fd5b87356131d181612f29565b965060208801356131e181612f29565b955060408801356131f181612f29565b9450606088013561320181612f29565b93506080880135925060a088013567ffffffffffffffff811115613223575f80fd5b61322f8a828b016130cc565b989b979a50959850939692959293505050565b5f8060408385031215613253575f80fd5b50508035926020909101359150565b5f805f60608486031215613274575f80fd5b833561327f81612f29565b9250602084013561328f81612f29565b9150604084013561329f81612f29565b809150509250925092565b5f602082840312156132ba575f80fd5b81356132c581612f29565b9392505050565b5f602082840312156132dc575f80fd5b5035919050565b5f805f80608085870312156132f6575f80fd5b843561330181612f29565b9350602085013561331181612f29565b93969395505050506040820135916060013590565b5f805f8060808587031215613339575f80fd5b843561334481612f29565b9350602085013561335481612f29565b9250604085013561336481612f29565b9150606085013561337481612f29565b939692955090935050565b5f6020828403121561338f575f80fd5b81516132c581612f29565b5f80858511156133a8575f80fd5b838611156133b4575f80fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156134015780818660040360031b1b83161692505b505092915050565b5f805f805f8060c0878903121561341e575f80fd5b863561342981612f29565b9550602087013561343981612f29565b9450604087013561344981612f29565b9350606087013561345981612f29565b92506080870135915060a087013567ffffffffffffffff81111561347b575f80fd5b61348789828a0161300b565b9150509295509295509295565b73ffffffffffffffffffffffffffffffffffffffff8516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b8381101561351e578181015183820152602001613506565b50505f910152565b5f815180845261353d816020860160208601613504565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f73ffffffffffffffffffffffffffffffffffffffff80891683528088166020840152808716604084015280861660608401525083608083015260c060a08301526135bd60c0830184613526565b98975050505050505050565b5f602082840312156135d9575f80fd5b5051919050565b5f73ffffffffffffffffffffffffffffffffffffffff808816835286602084015260a0604084015261361560a0840187613526565b606084019590955292909216608090910152509392505050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f6136636080830185613526565b905082606083015295945050505050565b602081525f610dd06020830184613526565b5f8060408385031215613697575f80fd5b82516136a281612f29565b602084015190925067ffffffffffffffff8111156136be575f80fd5b8301601f810185136136ce575f80fd5b80516136dc61302882612fc6565b8181528660208385010111156136f0575f80fd5b613701826020830160208601613504565b8093505050509250929050565b81810381811115610dd3577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f60208284031215613756575f80fd5b815180151581146132c5575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82516137d0818460208701613504565b919091019291505056fea164736f6c6343000818000a" +var L1LidoGatewayDeployedBin = "0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063d547741f11610092578063f27ebced11610062578063f27ebced146105a8578063f2fde38b146105c7578063f887ea40146105e6578063fadcc54a14610612575f80fd5b8063d547741f1461052f578063e3b523e31461054e578063e8bac93b14610581578063f219fa6614610595575f80fd5b8063c01e1bd6116100cd578063c01e1bd61461049f578063c0c53b8b146104d2578063c676ad29146104f1578063ca15c87314610510575f80fd5b80639010d07c1461043957806391d1485414610458578063ac67e1af14610477578063ad960ce11461048b575f80fd5b80635e4c57a411610173578063797594b011610143578063797594b01461039d57806384bd13b0146103c95780638d7601c0146103dc5780638da5cb5b1461040f575f80fd5b80635e4c57a4146102f95780635ed2c2201461030d5780636f18bd2214610348578063715018a614610389575f80fd5b80632f2ff15d116101ae5780632f2ff15d1461020f5780633cb747bf1461022e57806356eff267146102845780635777bf50146102b7575f80fd5b80630aea8c26146101d457806314298c51146101e957806321425ee0146101fc575b5f80fd5b6101e76101e2366004613041565b610645565b005b6101e76101f73660046130f5565b610659565b6101e761020a366004613134565b610987565b34801561021a575f80fd5b506101e7610229366004613166565b6109c0565b348015610239575f80fd5b5060995461025a9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561028f575f80fd5b5061025a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102c2575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b604051901515815260200161027b565b348015610304575f80fd5b506101e76109d6565b348015610318575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102e9565b348015610353575f80fd5b5061037b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b60405190815260200161027b565b348015610394575f80fd5b506101e7610b08565b3480156103a8575f80fd5b5060975461025a9073ffffffffffffffffffffffffffffffffffffffff1681565b6101e76103d7366004613194565b610b1b565b3480156103e7575f80fd5b5061037b7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b34801561041a575f80fd5b5060655473ffffffffffffffffffffffffffffffffffffffff1661025a565b348015610444575f80fd5b5061025a610453366004613226565b610d9a565b348015610463575f80fd5b506102e9610472366004613166565b610dd9565b348015610482575f80fd5b506101e7610e0f565b348015610496575f80fd5b506101e7610f3d565b3480156104aa575f80fd5b5061025a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104dd575f80fd5b506101e76104ec366004613246565b611070565b3480156104fc575f80fd5b5061025a61050b36600461328e565b611202565b34801561051b575f80fd5b5061037b61052a3660046132b0565b6112b1565b34801561053a575f80fd5b506101e7610549366004613166565b6112e6565b348015610559575f80fd5b5061037b7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b34801561058c575f80fd5b506101e76112f8565b6101e76105a33660046132c7565b611430565b3480156105b3575f80fd5b506101e76105c236600461330a565b61143c565b3480156105d2575f80fd5b506101e76105e136600461328e565b611588565b3480156105f1575f80fd5b5060985461025a9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561061d575f80fd5b5061037b7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b610652858585858561163f565b5050505050565b60995473ffffffffffffffffffffffffffffffffffffffff163381146106e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610729573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074d9190613363565b73ffffffffffffffffffffffffffffffffffffffff16736f297c61b5c92ef107ffd30cd56affe5a273e84173ffffffffffffffffffffffffffffffffffffffff16146107f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6f6e6c792063616c6c656420696e2064726f7020636f6e74657874000000000060448201526064016106d7565b6107fd611a69565b7f8431f5c10000000000000000000000000000000000000000000000000000000061082b60045f858761337e565b610834916133a5565b7fffffffff0000000000000000000000000000000000000000000000000000000016146108bd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f696e76616c69642073656c6563746f720000000000000000000000000000000060448201526064016106d7565b5f80806108cd856004818961337e565b8101906108da91906133ed565b5094505093505092506108ee838383611adc565b61090f73ffffffffffffffffffffffffffffffffffffffff84168383611b9a565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fdbdf8eb487847e4c0f22847f5dac07f2d3690f96f581a6ae4b102769917645a88360405161096e91815260200190565b60405180910390a350505061098260018055565b505050565b6109828333845f5b6040519080825280601f01601f1916602001820160405280156109b9576020820181803683370190505b508561163f565b6109c8611c74565b6109d28282611cf5565b5050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610a32576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a5c7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610dd9565b610a92576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b610b10611c74565b610b195f611d78565b565b60995473ffffffffffffffffffffffffffffffffffffffff16338114610b9d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064016106d7565b8073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610be6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c0a9190613363565b60975473ffffffffffffffffffffffffffffffffffffffff908116911614610c8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e74657270617274000000000000000060448201526064016106d7565b610c96611a69565b610ca588888888888888611dee565b610cc673ffffffffffffffffffffffffffffffffffffffff89168686611b9a565b610d058584848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611f9d92505050565b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fc6f985873b37805705f6bce756dce3d1ff4b603e298d506288cce499926846a788888888604051610d7f9493929190613478565b60405180910390a4610d9060018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610dd0908361204b565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610dd09083612056565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610e6a576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e947f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610dd9565b610eca576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610f9d576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fc77f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610dd9565b610ffd576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff161580801561108e57505f54600160ff909116105b806110a75750303b1580156110a757505f5460ff166001145b611133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016106d7565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561118f575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61119a848484612084565b80156111fc575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b5f817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611289576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610dd39061222f565b6112ee611c74565b6109d28282612238565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611359576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113837f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610dd9565b6113b9576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b6111fc8484845f61098f565b5f54600290610100900460ff1615801561145c57505f5460ff8083169116105b6114e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016106d7565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611524858585856122bb565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b611590611c74565b73ffffffffffffffffffffffffffffffffffffffff8116611633576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106d7565b61163c81611d78565b50565b611647611a69565b847f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116cd576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff811661171b576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16611776576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f036117af576040517f14fc8bd900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6117bb8887876124e0565b80519198509650909150156117fc576040517fb286dd6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f0000000000000000000000000000000000000000000000000000000000000000905f9061183b908b90849086908d908d908d90602401613553565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8431f5c10000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f9373ffffffffffffffffffffffffffffffffffffffff9091169263ecc704289260048083019391928290030181865afa15801561191f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061194391906135ad565b6099546097546040517f5f7b157700000000000000000000000000000000000000000000000000000000815292935073ffffffffffffffffffffffffffffffffffffffff91821692635f7b15779234926119aa929116905f9088908e908c906004016135c4565b5f604051808303818588803b1580156119c1575f80fd5b505af11580156119d3573d5f803e3d5ffd5b50505050508373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff168c73ffffffffffffffffffffffffffffffffffffffff167f1a6c38816de45937fd5cd974f9694fe10e64163ba12a92abf0f4b6b23ad886728d8d8d87604051611a529493929190613613565b60405180910390a450505050505061065260018055565b600260015403611ad5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016106d7565b6002600155565b827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611b62576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b34156111fc576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405173ffffffffffffffffffffffffffffffffffffffff83166024820152604481018290526109829084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152612791565b60018055565b60655473ffffffffffffffffffffffffffffffffffffffff163314610b19576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d7565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611d2b908261289e565b156109d257604051339073ffffffffffffffffffffffffffffffffffffffff83169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b867f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611e74576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b867f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611efa576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611f5a576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415611f92576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050565b5f8151118015611fc357505f8273ffffffffffffffffffffffffffffffffffffffff163b115b156109d2576040517f444b281f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83169063444b281f9061201a908490600401613658565b5f604051808303815f87803b158015612031575f80fd5b505af1158015612043573d5f803e3d5ffd5b505050505050565b5f610dd083836128bf565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526001830160205260408120541515610dd0565b73ffffffffffffffffffffffffffffffffffffffff8316612101576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f7a65726f20636f756e746572706172742061646472657373000000000000000060448201526064016106d7565b73ffffffffffffffffffffffffffffffffffffffff811661217e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f7a65726f206d657373656e67657220616464726573730000000000000000000060448201526064016106d7565b6121866128e5565b61218e612983565b6097805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609980548484169216919091179055821615610982576098805473ffffffffffffffffffffffffffffffffffffffff84167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610dd3825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed6020526040902061226e9082612a21565b156109d257604051339073ffffffffffffffffffffffffffffffffffffffff83169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16612351576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001781556123f63390565b73ffffffffffffffffffffffffffffffffffffffff167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a26124627f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a86611cf5565b61248c7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d685611cf5565b6124b67f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d84611cf5565b6106527f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c83611cf5565b6098545f9081906060903390819073ffffffffffffffffffffffffffffffffffffffff168190036125ca578580602001905181019061251f919061366a565b6040517fc52a3bbc00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80841660048301528b81166024830152604482018b905291985091925083169063c52a3bbc906064016020604051808303815f875af115801561259f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125c391906135ad565b965061271b565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f9073ffffffffffffffffffffffffffffffffffffffff8a16906370a0823190602401602060405180830381865afa158015612634573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061265891906135ad565b905061267c73ffffffffffffffffffffffffffffffffffffffff8a1683308b612a42565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201525f9073ffffffffffffffffffffffffffffffffffffffff8b16906370a0823190602401602060405180830381865afa1580156126e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061270a91906135ad565b905061271682826136f2565b985050505b5f8711612784576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f6465706f736974207a65726f20616d6f756e740000000000000000000000000060448201526064016106d7565b9795965093949350505050565b5f6127f2826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16612aa09092919063ffffffff16565b905080515f1480612812575080806020019051810190612812919061372a565b610982576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016106d7565b5f610dd08373ffffffffffffffffffffffffffffffffffffffff8416612ab6565b5f825f0182815481106128d4576128d4613749565b905f5260205f200154905092915050565b5f54610100900460ff1661297b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b610b19612b02565b5f54610100900460ff16612a19576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b610b19612b98565b5f610dd08373ffffffffffffffffffffffffffffffffffffffff8416612c37565b60405173ffffffffffffffffffffffffffffffffffffffff808516602483015283166044820152606481018290526111fc9085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401611bec565b6060612aae84845f85612d1a565b949350505050565b5f818152600183016020526040812054612afb57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610dd3565b505f610dd3565b5f54610100900460ff16611c6e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b5f54610100900460ff16612c2e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106d7565b610b1933611d78565b5f8181526001830160205260408120548015612d11575f612c596001836136f2565b85549091505f90612c6c906001906136f2565b9050818114612ccb575f865f018281548110612c8a57612c8a613749565b905f5260205f200154905080875f018481548110612caa57612caa613749565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080612cdc57612cdc613776565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610dd3565b5f915050610dd3565b606082471015612dac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016106d7565b5f808673ffffffffffffffffffffffffffffffffffffffff168587604051612dd491906137a3565b5f6040518083038185875af1925050503d805f8114612e0e576040519150601f19603f3d011682016040523d82523d5f602084013e612e13565b606091505b5091509150612e2487838387612e2f565b979650505050505050565b60608315612ec45782515f03612ebd5773ffffffffffffffffffffffffffffffffffffffff85163b612ebd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106d7565b5081612aae565b612aae8383815115612ed95781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d79190613658565b73ffffffffffffffffffffffffffffffffffffffff8116811461163c575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fa257612fa2612f2e565b604052919050565b5f67ffffffffffffffff821115612fc357612fc3612f2e565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f830112612ffe575f80fd5b813561301161300c82612faa565b612f5b565b818152846020838601011115613025575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a08688031215613055575f80fd5b853561306081612f0d565b9450602086013561307081612f0d565b935060408601359250606086013567ffffffffffffffff811115613092575f80fd5b61309e88828901612fef565b95989497509295608001359392505050565b5f8083601f8401126130c0575f80fd5b50813567ffffffffffffffff8111156130d7575f80fd5b6020830191508360208285010111156130ee575f80fd5b9250929050565b5f8060208385031215613106575f80fd5b823567ffffffffffffffff81111561311c575f80fd5b613128858286016130b0565b90969095509350505050565b5f805f60608486031215613146575f80fd5b833561315181612f0d565b95602085013595506040909401359392505050565b5f8060408385031215613177575f80fd5b82359150602083013561318981612f0d565b809150509250929050565b5f805f805f805f60c0888a0312156131aa575f80fd5b87356131b581612f0d565b965060208801356131c581612f0d565b955060408801356131d581612f0d565b945060608801356131e581612f0d565b93506080880135925060a088013567ffffffffffffffff811115613207575f80fd5b6132138a828b016130b0565b989b979a50959850939692959293505050565b5f8060408385031215613237575f80fd5b50508035926020909101359150565b5f805f60608486031215613258575f80fd5b833561326381612f0d565b9250602084013561327381612f0d565b9150604084013561328381612f0d565b809150509250925092565b5f6020828403121561329e575f80fd5b81356132a981612f0d565b9392505050565b5f602082840312156132c0575f80fd5b5035919050565b5f805f80608085870312156132da575f80fd5b84356132e581612f0d565b935060208501356132f581612f0d565b93969395505050506040820135916060013590565b5f805f806080858703121561331d575f80fd5b843561332881612f0d565b9350602085013561333881612f0d565b9250604085013561334881612f0d565b9150606085013561335881612f0d565b939692955090935050565b5f60208284031215613373575f80fd5b81516132a981612f0d565b5f808585111561338c575f80fd5b83861115613398575f80fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156133e55780818660040360031b1b83161692505b505092915050565b5f805f805f8060c08789031215613402575f80fd5b863561340d81612f0d565b9550602087013561341d81612f0d565b9450604087013561342d81612f0d565b9350606087013561343d81612f0d565b92506080870135915060a087013567ffffffffffffffff81111561345f575f80fd5b61346b89828a01612fef565b9150509295509295509295565b73ffffffffffffffffffffffffffffffffffffffff8516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b838110156135025781810151838201526020016134ea565b50505f910152565b5f81518084526135218160208601602086016134e8565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f73ffffffffffffffffffffffffffffffffffffffff80891683528088166020840152808716604084015280861660608401525083608083015260c060a08301526135a160c083018461350a565b98975050505050505050565b5f602082840312156135bd575f80fd5b5051919050565b5f73ffffffffffffffffffffffffffffffffffffffff808816835286602084015260a060408401526135f960a084018761350a565b606084019590955292909216608090910152509392505050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f613647608083018561350a565b905082606083015295945050505050565b602081525f610dd0602083018461350a565b5f806040838503121561367b575f80fd5b825161368681612f0d565b602084015190925067ffffffffffffffff8111156136a2575f80fd5b8301601f810185136136b2575f80fd5b80516136c061300c82612faa565b8181528660208385010111156136d4575f80fd5b6136e58260208301602086016134e8565b8093505050509250929050565b81810381811115610dd3577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6020828403121561373a575f80fd5b815180151581146132a9575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82516137b48184602087016134e8565b919091019291505056fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L1LidoGatewayStorageLayoutJSON), L1LidoGatewayStorageLayout); err != nil { diff --git a/bindings/bindings/l2lidogateway.go b/bindings/bindings/l2lidogateway.go index c89dfd68f..9fe8b16df 100644 --- a/bindings/bindings/l2lidogateway.go +++ b/bindings/bindings/l2lidogateway.go @@ -31,8 +31,8 @@ var ( // L2LidoGatewayMetaData contains all meta data concerning the L2LidoGateway contract. var L2LidoGatewayMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrorAccountIsZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNonZeroMsgValue\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL1Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL2Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawZeroAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"WithdrawAndCallIsNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"DepositsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"DepositsEnabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"FinalizeDepositERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"WithdrawERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsEnabled\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEPOSITS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEPOSITS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"finalizeDepositERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"}],\"name\":\"getL1ERC20Address\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"}],\"name\":\"getL2ERC20Address\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getRoleMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"}],\"name\":\"getRoleMemberCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_counterpart\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_router\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_depositsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_depositsDisabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsDisabler\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isDepositsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isWithdrawalsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"router\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"withdrawERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"withdrawERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"withdrawERC20AndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}]", - Bin: "0x60c060405234801562000010575f80fd5b50604051620029a6380380620029a68339810160408190526200003391620001dc565b6001600160a01b03808316608081905290821660a0526200009b5760405162461bcd60e51b815260206004820152601460248201527f7a65726f206c31746f6b656e206164647265737300000000000000000000000060448201526064015b60405180910390fd5b6001600160a01b038116620000f35760405162461bcd60e51b815260206004820152601460248201527f7a65726f206c32546f6b656e2061646472657373000000000000000000000000604482015260640162000092565b620000fd62000105565b505062000212565b5f54610100900460ff16156200016e5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840162000092565b5f5460ff90811614620001be575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b0381168114620001d7575f80fd5b919050565b5f8060408385031215620001ee575f80fd5b620001f983620001c0565b91506200020960208401620001c0565b90509250929050565b60805160a051612733620002735f395f81816102610152818161062a01528181610a1d01528181611077015261147e01525f818161049b01528181610696015281816109b10152818161100b015281816116a1015261187101526127335ff3fe6080604052600436106101d0575f3560e01c80639010d07c116100fd578063ca15c87311610092578063f27ebced11610062578063f27ebced14610580578063f2fde38b1461059f578063f887ea40146105be578063fadcc54a146105dd575f80fd5b8063ca15c873146104fb578063d547741f1461051a578063e3b523e314610539578063e8bac93b1461056c575f80fd5b8063ad960ce1116100cd578063ad960ce114610476578063c01e1bd61461048a578063c0c53b8b146104bd578063c676ad29146104dc575f80fd5b80639010d07c1461041157806391d1485414610430578063a93a4af91461044f578063ac67e1af14610462575f80fd5b80635ed2c22011610173578063797594b011610143578063797594b01461038f5780638431f5c1146103ae5780638d7601c0146103c15780638da5cb5b146103f4575f80fd5b80635ed2c220146102ec5780636c07ea43146103275780636f18bd221461033a578063715018a61461037b575f80fd5b806356eff267116101ae57806356eff26714610250578063575361b6146102835780635777bf50146102965780635e4c57a4146102d8575f80fd5b80632f2ff15d146101d45780633cb747bf146101f557806354bbd59c14610231575b5f80fd5b3480156101df575f80fd5b506101f36101ee36600461211c565b610610565b005b348015610200575f80fd5b50609954610214906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561023c575f80fd5b5061021461024b36600461214a565b610626565b34801561025b575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b6101f36102913660046121b1565b6106bb565b3480156102a1575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610228565b3480156102e3575f80fd5b506101f3610706565b3480156102f7575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102c8565b6101f3610335366004612227565b610838565b348015610345575f80fd5b5061036d7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610228565b348015610386575f80fd5b506101f3610876565b34801561039a575f80fd5b50609754610214906001600160a01b031681565b6101f36103bc366004612259565b610889565b3480156103cc575f80fd5b5061036d7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103ff575f80fd5b506065546001600160a01b0316610214565b34801561041c575f80fd5b5061021461042b3660046122eb565b610bff565b34801561043b575f80fd5b506102c861044a36600461211c565b610c3e565b6101f361045d36600461230b565b610c74565b34801561046d575f80fd5b506101f3610c86565b348015610481575f80fd5b506101f3610db4565b348015610495575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b3480156104c8575f80fd5b506101f36104d736600461234e565b610eca565b3480156104e7575f80fd5b506102146104f636600461214a565b611007565b348015610506575f80fd5b5061036d610515366004612396565b61109c565b348015610525575f80fd5b506101f361053436600461211c565b6110d1565b348015610544575f80fd5b5061036d7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610577575f80fd5b506101f36110e3565b34801561058b575f80fd5b506101f361059a3660046123ad565b6111fe565b3480156105aa575f80fd5b506101f36105b936600461214a565b611313565b3480156105c9575f80fd5b50609854610214906001600160a01b031681565b3480156105e8575f80fd5b5061036d7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b6106186113a3565b61062282826113fd565b5050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610693576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b6106fe86868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250889250611473915050565b505050505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610762576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61078c7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c3e565b6107c2576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b6108718333845f5b6040519080825280601f01601f19166020018201604052801561086a576020820181803683370190505b5085611473565b505050565b61087e6113a3565b6108875f6118eb565b565b6099546001600160a01b03163381146108e95760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610925573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109499190612433565b6097546001600160a01b039081169116146109a65760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e74657270617274000000000000000060448201526064016108e0565b6109ae611954565b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a1a576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a86576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ae1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610b19576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f40c10f190000000000000000000000000000000000000000000000000000000081526001600160a01b038881166004830152602482018890528a16906340c10f19906044015f604051808303815f87803b158015610b79575f80fd5b505af1158015610b8b573d5f803e3d5ffd5b50505050876001600160a01b0316896001600160a01b03168b6001600160a01b03167f165ba69f6ab40c50cade6f65431801e5f9c7d7830b7545391920db039133ba348a8a8a8a604051610be2949392919061244e565b60405180910390a45050610bf560018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3590836119b3565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3590836119be565b610c808484845f610840565b50505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ce1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d0b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c3e565b610d41576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e14576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e3e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c3e565b610e74576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ee857505f54600160ff909116105b80610f015750303b158015610f0157505f5460ff166001145b610f735760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fb2575f805461ff0019166101001790555b610fbd8484846119df565b8015610c80575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611074576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3890611b22565b6110d96113a3565b6106228282611b2b565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611144576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116e7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c3e565b6111a4576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b5f54600290610100900460ff1615801561121e57505f5460ff8083169116105b6112905760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112cc85858585611ba1565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b61131b6113a3565b6001600160a01b0381166113975760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016108e0565b6113a0816118eb565b50565b6065546001600160a01b031633146108875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108e0565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206114339082611d82565b156106225760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b61147b611954565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316146114e7576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611528576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611588576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f036115c1576040517f6c18829600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60985433906001600160a01b03168190036115ef57848060200190518101906115ea91906124d3565b955090505b845115611628576040517f998bcee200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f9dc29fac0000000000000000000000000000000000000000000000000000000081526001600160a01b03828116600483015260248201889052891690639dc29fac906044015f604051808303815f87803b158015611688575f80fd5b505af115801561169a573d5f803e3d5ffd5b505050505f7f000000000000000000000000000000000000000000000000000000000000000089838a8a8a6040516024016116da969594939291906125f8565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f84bd13b00000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa1580156117b1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117d59190612645565b6099546097546040517fb2267a7b0000000000000000000000000000000000000000000000000000000081529293506001600160a01b039182169263b2267a7b92349261182d929116905f9088908d9060040161265c565b5f604051808303818588803b158015611844575f80fd5b505af1158015611856573d5f803e3d5ffd5b5050505050826001600160a01b03168a6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167fa9967b740f3fc69dfbf4744b4b1c7dfdb0b1b63f1fa4cf573bcdcb9f3ac687c48c8c8c876040516118ce949392919061265c565b60405180910390a450505050506118e460018055565b5050505050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6002600154036119a65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e0565b6002600155565b60018055565b5f610c358383611d96565b6001600160a01b0381165f9081526001830160205260408120541515610c35565b6001600160a01b038316611a355760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e746572706172742061646472657373000000000000000060448201526064016108e0565b6001600160a01b038116611a8b5760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e67657220616464726573730000000000000000000060448201526064016108e0565b611a93611dbc565b611a9b611e40565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561087157609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c38825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611b619082611ec4565b156106225760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611c1d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611ca53390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611d047f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a866113fd565b611d2e7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d6856113fd565b611d587f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d846113fd565b6118e47f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c836113fd565b5f610c35836001600160a01b038416611ed8565b5f825f018281548110611dab57611dab612694565b905f5260205f200154905092915050565b5f54610100900460ff16611e385760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611f24565b5f54610100900460ff16611ebc5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611fa0565b5f610c35836001600160a01b038416612025565b5f818152600183016020526040812054611f1d57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c38565b505f610c38565b5f54610100900460ff166119ad5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b5f54610100900460ff1661201c5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887336118eb565b5f81815260018301602052604081205480156120ff575f6120476001836126c1565b85549091505f9061205a906001906126c1565b90508181146120b9575f865f01828154811061207857612078612694565b905f5260205f200154905080875f01848154811061209857612098612694565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806120ca576120ca6126f9565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c38565b5f915050610c38565b6001600160a01b03811681146113a0575f80fd5b5f806040838503121561212d575f80fd5b82359150602083013561213f81612108565b809150509250929050565b5f6020828403121561215a575f80fd5b813561216581612108565b9392505050565b5f8083601f84011261217c575f80fd5b50813567ffffffffffffffff811115612193575f80fd5b6020830191508360208285010111156121aa575f80fd5b9250929050565b5f805f805f8060a087890312156121c6575f80fd5b86356121d181612108565b955060208701356121e181612108565b945060408701359350606087013567ffffffffffffffff811115612203575f80fd5b61220f89828a0161216c565b979a9699509497949695608090950135949350505050565b5f805f60608486031215612239575f80fd5b833561224481612108565b95602085013595506040909401359392505050565b5f805f805f805f60c0888a03121561226f575f80fd5b873561227a81612108565b9650602088013561228a81612108565b9550604088013561229a81612108565b945060608801356122aa81612108565b93506080880135925060a088013567ffffffffffffffff8111156122cc575f80fd5b6122d88a828b0161216c565b989b979a50959850939692959293505050565b5f80604083850312156122fc575f80fd5b50508035926020909101359150565b5f805f806080858703121561231e575f80fd5b843561232981612108565b9350602085013561233981612108565b93969395505050506040820135916060013590565b5f805f60608486031215612360575f80fd5b833561236b81612108565b9250602084013561237b81612108565b9150604084013561238b81612108565b809150509250925092565b5f602082840312156123a6575f80fd5b5035919050565b5f805f80608085870312156123c0575f80fd5b84356123cb81612108565b935060208501356123db81612108565b925060408501356123eb81612108565b915060608501356123fb81612108565b939692955090935050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f60208284031215612443575f80fd5b815161216581612108565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b838110156124cb5781810151838201526020016124b3565b50505f910152565b5f80604083850312156124e4575f80fd5b82516124ef81612108565b602084015190925067ffffffffffffffff8082111561250c575f80fd5b818501915085601f83011261251f575f80fd5b81518181111561253157612531612406565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561257757612577612406565b8160405282815288602084870101111561258f575f80fd5b6125a08360208301602088016124b1565b80955050505050509250929050565b5f81518084526125c68160208601602086016124b1565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a083015261263960c08301846125af565b98975050505050505050565b5f60208284031215612655575f80fd5b5051919050565b6001600160a01b0385168152836020820152608060408201525f61268360808301856125af565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81810381811115610c38577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrorAccountIsZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotDepositsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsDisabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorCallerIsNotWithdrawalsEnabler\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorDepositsEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNonZeroMsgValue\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL1Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorUnsupportedL2Token\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawZeroAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorWithdrawalsEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"WithdrawAndCallIsNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"DepositsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"DepositsEnabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"FinalizeDepositERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l1Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"l2Token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"WithdrawERC20\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"disabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"enabler\",\"type\":\"address\"}],\"name\":\"WithdrawalsEnabled\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEPOSITS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEPOSITS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_DISABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WITHDRAWALS_ENABLER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableDeposits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableWithdrawals\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"finalizeDepositERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l2Token\",\"type\":\"address\"}],\"name\":\"getL1ERC20Address\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1Token\",\"type\":\"address\"}],\"name\":\"getL2ERC20Address\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getRoleMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"}],\"name\":\"getRoleMemberCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_counterpart\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_router\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messenger\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_depositsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_depositsDisabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsEnabler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawalsDisabler\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isDepositsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isWithdrawalsEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2Token\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"bytes32\",\"name\":\"_role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"router\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"withdrawERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"withdrawERC20\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_gasLimit\",\"type\":\"uint256\"}],\"name\":\"withdrawERC20AndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}]", + Bin: "0x60c060405234801562000010575f80fd5b506040516200290f3803806200290f833981016040819052620000339162000168565b6001600160a01b03808316608081905290821660a05215806200005d57506001600160a01b038116155b156200007c5760405163a7f9319d60e01b815260040160405180910390fd5b620000866200008e565b50506200019e565b5f54610100900460ff1615620000fa5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200014a575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811462000163575f80fd5b919050565b5f80604083850312156200017a575f80fd5b62000185836200014c565b915062000195602084016200014c565b90509250929050565b60805160a051612717620001f85f395f81816102610152818161062a01528181610a1d01528181611077015261147e01525f818161049b01528181610696015281816109b10152818161100b01526116a101526127175ff3fe6080604052600436106101d0575f3560e01c80639010d07c116100fd578063ca15c87311610092578063f27ebced11610062578063f27ebced14610580578063f2fde38b1461059f578063f887ea40146105be578063fadcc54a146105dd575f80fd5b8063ca15c873146104fb578063d547741f1461051a578063e3b523e314610539578063e8bac93b1461056c575f80fd5b8063ad960ce1116100cd578063ad960ce114610476578063c01e1bd61461048a578063c0c53b8b146104bd578063c676ad29146104dc575f80fd5b80639010d07c1461041157806391d1485414610430578063a93a4af91461044f578063ac67e1af14610462575f80fd5b80635ed2c22011610173578063797594b011610143578063797594b01461038f5780638431f5c1146103ae5780638d7601c0146103c15780638da5cb5b146103f4575f80fd5b80635ed2c220146102ec5780636c07ea43146103275780636f18bd221461033a578063715018a61461037b575f80fd5b806356eff267116101ae57806356eff26714610250578063575361b6146102835780635777bf50146102965780635e4c57a4146102d8575f80fd5b80632f2ff15d146101d45780633cb747bf146101f557806354bbd59c14610231575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004612100565b610610565b005b348015610200575f80fd5b50609954610214906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561023c575f80fd5b5061021461024b36600461212e565b610626565b34801561025b575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b6101f3610291366004612195565b6106bb565b3480156102a1575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610228565b3480156102e3575f80fd5b506101f3610706565b3480156102f7575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102c8565b6101f361033536600461220b565b610838565b348015610345575f80fd5b5061036d7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610228565b348015610386575f80fd5b506101f3610876565b34801561039a575f80fd5b50609754610214906001600160a01b031681565b6101f36103bc36600461223d565b610889565b3480156103cc575f80fd5b5061036d7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b3480156103ff575f80fd5b506065546001600160a01b0316610214565b34801561041c575f80fd5b5061021461042b3660046122cf565b610bff565b34801561043b575f80fd5b506102c861044a366004612100565b610c3e565b6101f361045d3660046122ef565b610c74565b34801561046d575f80fd5b506101f3610c86565b348015610481575f80fd5b506101f3610db4565b348015610495575f80fd5b506102147f000000000000000000000000000000000000000000000000000000000000000081565b3480156104c8575f80fd5b506101f36104d7366004612332565b610eca565b3480156104e7575f80fd5b506102146104f636600461212e565b611007565b348015610506575f80fd5b5061036d61051536600461237a565b61109c565b348015610525575f80fd5b506101f3610534366004612100565b6110d1565b348015610544575f80fd5b5061036d7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b348015610577575f80fd5b506101f36110e3565b34801561058b575f80fd5b506101f361059a366004612391565b6111fe565b3480156105aa575f80fd5b506101f36105b936600461212e565b611313565b3480156105c9575f80fd5b50609854610214906001600160a01b031681565b3480156105e8575f80fd5b5061036d7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b6106186113a3565b61062282826113fd565b5050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610693576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b6106fe86868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250889250611473915050565b505050505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff1615610762576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61078c7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610c3e565b6107c2576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b6108718333845f5b6040519080825280601f01601f19166020018201604052801561086a576020820181803683370190505b5085611473565b505050565b61087e6113a3565b6108875f6118cf565b565b6099546001600160a01b03163381146108e95760405162461bcd60e51b815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610925573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109499190612417565b6097546001600160a01b039081169116146109a65760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e74657270617274000000000000000060448201526064016108e0565b6109ae611938565b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a1a576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b877f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614610a86576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ae1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610b19576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f40c10f190000000000000000000000000000000000000000000000000000000081526001600160a01b038881166004830152602482018890528a16906340c10f19906044015f604051808303815f87803b158015610b79575f80fd5b505af1158015610b8b573d5f803e3d5ffd5b50505050876001600160a01b0316896001600160a01b03168b6001600160a01b03167f165ba69f6ab40c50cade6f65431801e5f9c7d7830b7545391920db039133ba348a8a8a8a604051610be29493929190612432565b60405180910390a45050610bf560018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c359083611997565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3590836119a2565b610c808484845f610840565b50505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610ce1576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d0b7f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610c3e565b610d41576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610e14576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e3e7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610c3e565b610e74576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff001916905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff1615808015610ee857505f54600160ff909116105b80610f015750303b158015610f0157505f5460ff166001145b610f735760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610fb2575f805461ff0019166101001790555b610fbd8484846119c3565b8015610c80575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b5f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611074576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610c3890611b06565b6110d96113a3565b6106228282611b0f565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff1615611144576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116e7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610c3e565b6111a4576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec805461ff00191661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b5f54600290610100900460ff1615801561121e57505f5460ff8083169116105b6112905760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108e0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556112cc85858585611b85565b5f805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b61131b6113a3565b6001600160a01b0381166113975760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016108e0565b6113a0816118cf565b50565b6065546001600160a01b031633146108875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108e0565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed602052604090206114339082611d66565b156106225760405133906001600160a01b0383169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b61147b611938565b847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316146114e7576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b038116611528576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611588576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f036115c1576040517f6c18829600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60985433906001600160a01b03168190036115ef57848060200190518101906115ea91906124b7565b955090505b845115611628576040517f998bcee200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f9dc29fac0000000000000000000000000000000000000000000000000000000081526001600160a01b03828116600483015260248201889052891690639dc29fac906044015f604051808303815f87803b158015611688575f80fd5b505af115801561169a573d5f803e3d5ffd5b50506040517f000000000000000000000000000000000000000000000000000000000000000092505f91506116dd9083908c9086908d908d908d906024016125dc565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f84bd13b00000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f936001600160a01b039091169263ecc704289260048083019391928290030181865afa1580156117b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117d89190612629565b6099546097546040517fb2267a7b0000000000000000000000000000000000000000000000000000000081529293506001600160a01b039182169263b2267a7b923492611830929116905f9088908e90600401612640565b5f604051808303818588803b158015611847575f80fd5b505af1158015611859573d5f803e3d5ffd5b5050505050836001600160a01b03168b6001600160a01b0316846001600160a01b03167fa9967b740f3fc69dfbf4744b4b1c7dfdb0b1b63f1fa4cf573bcdcb9f3ac687c48d8d8d876040516118b19493929190612640565b60405180910390a45050505050506118c860018055565b5050505050565b606580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b60026001540361198a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e0565b6002600155565b60018055565b5f610c358383611d7a565b6001600160a01b0381165f9081526001830160205260408120541515610c35565b6001600160a01b038316611a195760405162461bcd60e51b815260206004820152601860248201527f7a65726f20636f756e746572706172742061646472657373000000000000000060448201526064016108e0565b6001600160a01b038116611a6f5760405162461bcd60e51b815260206004820152601660248201527f7a65726f206d657373656e67657220616464726573730000000000000000000060448201526064016108e0565b611a77611da0565b611a7f611e24565b609780546001600160a01b038086167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925560998054848416921691909117905582161561087157609880546001600160a01b0384167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610c38825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611b459082611ea8565b156106225760405133906001600160a01b0383169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611c015760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2805461ff001916610100178155611c893390565b6001600160a01b03167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a2611ce87f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a866113fd565b611d127f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d6856113fd565b611d3c7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d846113fd565b6118c87f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c836113fd565b5f610c35836001600160a01b038416611ebc565b5f825f018281548110611d8f57611d8f612678565b905f5260205f200154905092915050565b5f54610100900460ff16611e1c5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611f08565b5f54610100900460ff16611ea05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887611f84565b5f610c35836001600160a01b038416612009565b5f818152600183016020526040812054611f0157508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610c38565b505f610c38565b5f54610100900460ff166119915760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b5f54610100900460ff166120005760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108e0565b610887336118cf565b5f81815260018301602052604081205480156120e3575f61202b6001836126a5565b85549091505f9061203e906001906126a5565b905081811461209d575f865f01828154811061205c5761205c612678565b905f5260205f200154905080875f01848154811061207c5761207c612678565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806120ae576120ae6126dd565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610c38565b5f915050610c38565b6001600160a01b03811681146113a0575f80fd5b5f8060408385031215612111575f80fd5b823591506020830135612123816120ec565b809150509250929050565b5f6020828403121561213e575f80fd5b8135612149816120ec565b9392505050565b5f8083601f840112612160575f80fd5b50813567ffffffffffffffff811115612177575f80fd5b60208301915083602082850101111561218e575f80fd5b9250929050565b5f805f805f8060a087890312156121aa575f80fd5b86356121b5816120ec565b955060208701356121c5816120ec565b945060408701359350606087013567ffffffffffffffff8111156121e7575f80fd5b6121f389828a01612150565b979a9699509497949695608090950135949350505050565b5f805f6060848603121561221d575f80fd5b8335612228816120ec565b95602085013595506040909401359392505050565b5f805f805f805f60c0888a031215612253575f80fd5b873561225e816120ec565b9650602088013561226e816120ec565b9550604088013561227e816120ec565b9450606088013561228e816120ec565b93506080880135925060a088013567ffffffffffffffff8111156122b0575f80fd5b6122bc8a828b01612150565b989b979a50959850939692959293505050565b5f80604083850312156122e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215612302575f80fd5b843561230d816120ec565b9350602085013561231d816120ec565b93969395505050506040820135916060013590565b5f805f60608486031215612344575f80fd5b833561234f816120ec565b9250602084013561235f816120ec565b9150604084013561236f816120ec565b809150509250925092565b5f6020828403121561238a575f80fd5b5035919050565b5f805f80608085870312156123a4575f80fd5b84356123af816120ec565b935060208501356123bf816120ec565b925060408501356123cf816120ec565b915060608501356123df816120ec565b939692955090935050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f60208284031215612427575f80fd5b8151612149816120ec565b6001600160a01b038516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b838110156124af578181015183820152602001612497565b50505f910152565b5f80604083850312156124c8575f80fd5b82516124d3816120ec565b602084015190925067ffffffffffffffff808211156124f0575f80fd5b818501915085601f830112612503575f80fd5b815181811115612515576125156123ea565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561255b5761255b6123ea565b81604052828152886020848701011115612573575f80fd5b612584836020830160208801612495565b80955050505050509250929050565b5f81518084526125aa816020860160208601612495565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f6001600160a01b0380891683528088166020840152808716604084015280861660608401525083608083015260c060a083015261261d60c0830184612593565b98975050505050505050565b5f60208284031215612639575f80fd5b5051919050565b6001600160a01b0385168152836020820152608060408201525f6126676080830185612593565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81810381811115610c38577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a", } // L2LidoGatewayABI is the input ABI used to generate the binding from. diff --git a/bindings/bindings/l2lidogateway_more.go b/bindings/bindings/l2lidogateway_more.go index c2ff786ec..b3336bd00 100644 --- a/bindings/bindings/l2lidogateway_more.go +++ b/bindings/bindings/l2lidogateway_more.go @@ -13,7 +13,7 @@ const L2LidoGatewayStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract var L2LidoGatewayStorageLayout = new(solc.StorageLayout) -var L2LidoGatewayDeployedBin = "0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063ca15c87311610092578063f27ebced11610062578063f27ebced146105b4578063f2fde38b146105d3578063f887ea40146105f2578063fadcc54a1461061e575f80fd5b8063ca15c8731461052f578063d547741f1461054e578063e3b523e31461056d578063e8bac93b146105a0575f80fd5b8063ad960ce1116100cd578063ad960ce1146104aa578063c01e1bd6146104be578063c0c53b8b146104f1578063c676ad2914610510575f80fd5b80639010d07c1461044557806391d1485414610464578063a93a4af914610483578063ac67e1af14610496575f80fd5b80635ed2c22011610173578063797594b011610143578063797594b0146103a95780638431f5c1146103d55780638d7601c0146103e85780638da5cb5b1461041b575f80fd5b80635ed2c220146103065780636c07ea43146103415780636f18bd2214610354578063715018a614610395575f80fd5b806356eff267116101ae57806356eff2671461026a578063575361b61461029d5780635777bf50146102b05780635e4c57a4146102f2575f80fd5b80632f2ff15d146101d45780633cb747bf146101f557806354bbd59c1461024b575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004612572565b610651565b005b348015610200575f80fd5b506099546102219073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b348015610256575f80fd5b506102216102653660046125a0565b610667565b348015610275575f80fd5b506102217f000000000000000000000000000000000000000000000000000000000000000081565b6101f36102ab366004612607565b610716565b3480156102bb575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610242565b3480156102fd575f80fd5b506101f3610761565b348015610311575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102e2565b6101f361034f36600461267d565b610893565b34801561035f575f80fd5b506103877f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610242565b3480156103a0575f80fd5b506101f36108d1565b3480156103b4575f80fd5b506097546102219073ffffffffffffffffffffffffffffffffffffffff1681565b6101f36103e33660046126af565b6108e4565b3480156103f3575f80fd5b506103877f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b348015610426575f80fd5b5060655473ffffffffffffffffffffffffffffffffffffffff16610221565b348015610450575f80fd5b5061022161045f366004612741565b610d1d565b34801561046f575f80fd5b506102e261047e366004612572565b610d5c565b6101f3610491366004612761565b610d92565b3480156104a1575f80fd5b506101f3610da4565b3480156104b5575f80fd5b506101f3610ed2565b3480156104c9575f80fd5b506102217f000000000000000000000000000000000000000000000000000000000000000081565b3480156104fc575f80fd5b506101f361050b3660046127a4565b611005565b34801561051b575f80fd5b5061022161052a3660046125a0565b611196565b34801561053a575f80fd5b506103876105493660046127ec565b611245565b348015610559575f80fd5b506101f3610568366004612572565b61127a565b348015610578575f80fd5b506103877f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b3480156105ab575f80fd5b506101f361128c565b3480156105bf575f80fd5b506101f36105ce366004612803565b6113c4565b3480156105de575f80fd5b506101f36105ed3660046125a0565b611510565b3480156105fd575f80fd5b506098546102219073ffffffffffffffffffffffffffffffffffffffff1681565b348015610629575f80fd5b506103877f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b6106596115c7565b6106638282611648565b5050565b5f817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146106ee576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b61075986868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892506116cb915050565b505050505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16156107bd576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107e77f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610d5c565b61081d576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b6108cc8333845f5b6040519080825280601f01601f1916602001820160405280156108c5576020820181803683370190505b50856116cb565b505050565b6108d96115c7565b6108e25f611bc5565b565b60995473ffffffffffffffffffffffffffffffffffffffff1633811461096b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d89190612889565b60975473ffffffffffffffffffffffffffffffffffffffff908116911614610a5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e7465727061727400000000000000006044820152606401610962565b610a64611c3b565b877f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610aea576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b877f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b70576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610bcb576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610c03576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8881166004830152602482018890528a16906340c10f19906044015f604051808303815f87803b158015610c70575f80fd5b505af1158015610c82573d5f803e3d5ffd5b505050508773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167f165ba69f6ab40c50cade6f65431801e5f9c7d7830b7545391920db039133ba348a8a8a8a604051610d0094939291906128a4565b60405180910390a45050610d1360018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610d539083611cb4565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610d539083611cbf565b610d9e8484845f61089b565b50505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610dff576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e297f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610d5c565b610e5f576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610f32576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f5c7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610d5c565b610f92576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff161580801561102357505f54600160ff909116105b8061103c5750303b15801561103c57505f5460ff166001145b6110c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610962565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611124575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61112f848484611ced565b8015610d9e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b5f817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461121d576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610d5690611e98565b6112826115c7565b6106638282611ea1565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16156112ed576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113177f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610d5c565b61134d576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b5f54600290610100900460ff161580156113e457505f5460ff8083169116105b611470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610962565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ac85858585611f24565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b6115186115c7565b73ffffffffffffffffffffffffffffffffffffffff81166115bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610962565b6115c481611bc5565b50565b60655473ffffffffffffffffffffffffffffffffffffffff1633146108e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610962565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed6020526040902061167e9082612149565b1561066357604051339073ffffffffffffffffffffffffffffffffffffffff83169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b6116d3611c3b565b847f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611759576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff81166117a7576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611807576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f03611840576040517f6c18829600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b609854339073ffffffffffffffffffffffffffffffffffffffff1681900361187b57848060200190518101906118769190612936565b955090505b8451156118b4576040517f998bcee200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff828116600483015260248201889052891690639dc29fac906044015f604051808303815f87803b158015611921575f80fd5b505af1158015611933573d5f803e3d5ffd5b505050505f7f000000000000000000000000000000000000000000000000000000000000000089838a8a8a60405160240161197396959493929190612a5b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f84bd13b00000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f9373ffffffffffffffffffffffffffffffffffffffff9091169263ecc704289260048083019391928290030181865afa158015611a57573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a7b9190612ab5565b6099546097546040517fb2267a7b00000000000000000000000000000000000000000000000000000000815292935073ffffffffffffffffffffffffffffffffffffffff9182169263b2267a7b923492611ae0929116905f9088908d90600401612acc565b5f604051808303818588803b158015611af7575f80fd5b505af1158015611b09573d5f803e3d5ffd5b50505050508273ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff167fa9967b740f3fc69dfbf4744b4b1c7dfdb0b1b63f1fa4cf573bcdcb9f3ac687c48c8c8c87604051611ba89493929190612acc565b60405180910390a45050505050611bbe60018055565b5050505050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b600260015403611ca7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610962565b6002600155565b60018055565b5f610d53838361216a565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526001830160205260408120541515610d53565b73ffffffffffffffffffffffffffffffffffffffff8316611d6a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f7a65726f20636f756e74657270617274206164647265737300000000000000006044820152606401610962565b73ffffffffffffffffffffffffffffffffffffffff8116611de7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f7a65726f206d657373656e6765722061646472657373000000000000000000006044820152606401610962565b611def612190565b611df761222e565b6097805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff0000000000000000000000000000000000000000928316179092556099805484841692169190911790558216156108cc576098805473ffffffffffffffffffffffffffffffffffffffff84167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610d56825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611ed790826122cc565b1561066357604051339073ffffffffffffffffffffffffffffffffffffffff83169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611fba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017815561205f3390565b73ffffffffffffffffffffffffffffffffffffffff167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a26120cb7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a86611648565b6120f57f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d685611648565b61211f7f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d84611648565b611bbe7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c83611648565b5f610d538373ffffffffffffffffffffffffffffffffffffffff84166122ed565b5f825f01828154811061217f5761217f612b11565b905f5260205f200154905092915050565b5f54610100900460ff16612226576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b6108e2612339565b5f54610100900460ff166122c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b6108e26123cf565b5f610d538373ffffffffffffffffffffffffffffffffffffffff841661246e565b5f81815260018301602052604081205461233257508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610d56565b505f610d56565b5f54610100900460ff16611cae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b5f54610100900460ff16612465576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b6108e233611bc5565b5f8181526001830160205260408120548015612548575f612490600183612b3e565b85549091505f906124a390600190612b3e565b9050818114612502575f865f0182815481106124c1576124c1612b11565b905f5260205f200154905080875f0184815481106124e1576124e1612b11565b5f918252602080832090910192909255918252600188019052604090208390555b855486908061251357612513612b76565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610d56565b5f915050610d56565b73ffffffffffffffffffffffffffffffffffffffff811681146115c4575f80fd5b5f8060408385031215612583575f80fd5b82359150602083013561259581612551565b809150509250929050565b5f602082840312156125b0575f80fd5b81356125bb81612551565b9392505050565b5f8083601f8401126125d2575f80fd5b50813567ffffffffffffffff8111156125e9575f80fd5b602083019150836020828501011115612600575f80fd5b9250929050565b5f805f805f8060a0878903121561261c575f80fd5b863561262781612551565b9550602087013561263781612551565b945060408701359350606087013567ffffffffffffffff811115612659575f80fd5b61266589828a016125c2565b979a9699509497949695608090950135949350505050565b5f805f6060848603121561268f575f80fd5b833561269a81612551565b95602085013595506040909401359392505050565b5f805f805f805f60c0888a0312156126c5575f80fd5b87356126d081612551565b965060208801356126e081612551565b955060408801356126f081612551565b9450606088013561270081612551565b93506080880135925060a088013567ffffffffffffffff811115612722575f80fd5b61272e8a828b016125c2565b989b979a50959850939692959293505050565b5f8060408385031215612752575f80fd5b50508035926020909101359150565b5f805f8060808587031215612774575f80fd5b843561277f81612551565b9350602085013561278f81612551565b93969395505050506040820135916060013590565b5f805f606084860312156127b6575f80fd5b83356127c181612551565b925060208401356127d181612551565b915060408401356127e181612551565b809150509250925092565b5f602082840312156127fc575f80fd5b5035919050565b5f805f8060808587031215612816575f80fd5b843561282181612551565b9350602085013561283181612551565b9250604085013561284181612551565b9150606085013561285181612551565b939692955090935050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f60208284031215612899575f80fd5b81516125bb81612551565b73ffffffffffffffffffffffffffffffffffffffff8516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b8381101561292e578181015183820152602001612916565b50505f910152565b5f8060408385031215612947575f80fd5b825161295281612551565b602084015190925067ffffffffffffffff8082111561296f575f80fd5b818501915085601f830112612982575f80fd5b8151818111156129945761299461285c565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156129da576129da61285c565b816040528281528860208487010111156129f2575f80fd5b612a03836020830160208801612914565b80955050505050509250929050565b5f8151808452612a29816020860160208601612914565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f73ffffffffffffffffffffffffffffffffffffffff80891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612aa960c0830184612a12565b98975050505050505050565b5f60208284031215612ac5575f80fd5b5051919050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f612b006080830185612a12565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81810381811115610d56577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a" +var L2LidoGatewayDeployedBin = "0x6080604052600436106101d0575f3560e01c80639010d07c116100fd578063ca15c87311610092578063f27ebced11610062578063f27ebced146105b4578063f2fde38b146105d3578063f887ea40146105f2578063fadcc54a1461061e575f80fd5b8063ca15c8731461052f578063d547741f1461054e578063e3b523e31461056d578063e8bac93b146105a0575f80fd5b8063ad960ce1116100cd578063ad960ce1146104aa578063c01e1bd6146104be578063c0c53b8b146104f1578063c676ad2914610510575f80fd5b80639010d07c1461044557806391d1485414610464578063a93a4af914610483578063ac67e1af14610496575f80fd5b80635ed2c22011610173578063797594b011610143578063797594b0146103a95780638431f5c1146103d55780638d7601c0146103e85780638da5cb5b1461041b575f80fd5b80635ed2c220146103065780636c07ea43146103415780636f18bd2214610354578063715018a614610395575f80fd5b806356eff267116101ae57806356eff2671461026a578063575361b61461029d5780635777bf50146102b05780635e4c57a4146102f2575f80fd5b80632f2ff15d146101d45780633cb747bf146101f557806354bbd59c1461024b575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004612556565b610651565b005b348015610200575f80fd5b506099546102219073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b348015610256575f80fd5b50610221610265366004612584565b610667565b348015610275575f80fd5b506102217f000000000000000000000000000000000000000000000000000000000000000081565b6101f36102ab3660046125eb565b610716565b3480156102bb575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff165b6040519015158152602001610242565b3480156102fd575f80fd5b506101f3610761565b348015610311575f80fd5b507fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff166102e2565b6101f361034f366004612661565b610893565b34801561035f575f80fd5b506103877f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d681565b604051908152602001610242565b3480156103a0575f80fd5b506101f36108d1565b3480156103b4575f80fd5b506097546102219073ffffffffffffffffffffffffffffffffffffffff1681565b6101f36103e3366004612693565b6108e4565b3480156103f3575f80fd5b506103877f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c81565b348015610426575f80fd5b5060655473ffffffffffffffffffffffffffffffffffffffff16610221565b348015610450575f80fd5b5061022161045f366004612725565b610d1d565b34801561046f575f80fd5b506102e261047e366004612556565b610d5c565b6101f3610491366004612745565b610d92565b3480156104a1575f80fd5b506101f3610da4565b3480156104b5575f80fd5b506101f3610ed2565b3480156104c9575f80fd5b506102217f000000000000000000000000000000000000000000000000000000000000000081565b3480156104fc575f80fd5b506101f361050b366004612788565b611005565b34801561051b575f80fd5b5061022161052a366004612584565b611196565b34801561053a575f80fd5b506103876105493660046127d0565b611245565b348015610559575f80fd5b506101f3610568366004612556565b61127a565b348015610578575f80fd5b506103877f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d81565b3480156105ab575f80fd5b506101f361128c565b3480156105bf575f80fd5b506101f36105ce3660046127e7565b6113c4565b3480156105de575f80fd5b506101f36105ed366004612584565b611510565b3480156105fd575f80fd5b506098546102219073ffffffffffffffffffffffffffffffffffffffff1681565b348015610629575f80fd5b506103877f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a81565b6106596115c7565b6106638282611648565b5050565b5f817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146106ee576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b61075986868686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892506116cb915050565b505050505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16156107bd576040517f4f2c8be200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107e77f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a33610d5c565b61081d576040517f3d39c5f500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a2565b6108cc8333845f5b6040519080825280601f01601f1916602001820160405280156108c5576020820181803683370190505b50856116cb565b505050565b6108d96115c7565b6108e25f611ba9565b565b60995473ffffffffffffffffffffffffffffffffffffffff1633811461096b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6f6e6c79206d657373656e6765722063616e2063616c6c00000000000000000060448201526064015b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d8919061286d565b60975473ffffffffffffffffffffffffffffffffffffffff908116911614610a5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f6f6e6c792063616c6c20627920636f756e7465727061727400000000000000006044820152606401610962565b610a64611c1f565b877f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610aea576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b877f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b70576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610bcb576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610c03576040517f3ddcf11400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8881166004830152602482018890528a16906340c10f19906044015f604051808303815f87803b158015610c70575f80fd5b505af1158015610c82573d5f803e3d5ffd5b505050508773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167f165ba69f6ab40c50cade6f65431801e5f9c7d7830b7545391920db039133ba348a8a8a8a604051610d009493929190612888565b60405180910390a45050610d1360018055565b5050505050505050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610d539083611c98565b90505b92915050565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610d539083611ca3565b610d9e8484845f61089b565b50505050565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec5460ff16610dff576040517fa185a6b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e297f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d633610d5c565b610e5f576040517fadd9524c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560405133907f9ca4d309bbfd23c65db3dc38c1712862f5812c7139937e2655de86e803f73bb9905f90a2565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16610f32576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f5c7f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c33610d5c565b610f92576040517f9e60ca7e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405133907f644eeba8ede48fefc32ada09fb240c5f6c0f06507ab1d296d5af41f1521d9fcb905f90a2565b5f54610100900460ff161580801561102357505f54600160ff909116105b8061103c5750303b15801561103c57505f5460ff166001145b6110c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610962565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015611124575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61112f848484611cd1565b8015610d9e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b5f817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461121d576040517ffe15603f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f000000000000000000000000000000000000000000000000000000000000000092915050565b5f8181527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260408120610d5690611e7c565b6112826115c7565b6106638282611e85565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16156112ed576040517ff74ad25400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113177f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d33610d5c565b61134d576040517f5c16894300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560405133907fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d3204905f90a2565b5f54600290610100900460ff161580156113e457505f5460ff8083169116105b611470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610962565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556114ac85858585611f08565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b6115186115c7565b73ffffffffffffffffffffffffffffffffffffffff81166115bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610962565b6115c481611ba9565b50565b60655473ffffffffffffffffffffffffffffffffffffffff1633146108e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610962565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed6020526040902061167e908261212d565b1561066357604051339073ffffffffffffffffffffffffffffffffffffffff83169084907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d905f90a45050565b6116d3611c1f565b847f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611759576040517f6251ce6800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff81166117a7576040517fef6b416200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec54610100900460ff16611807576040517f77d195b200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845f03611840576040517f6c18829600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b609854339073ffffffffffffffffffffffffffffffffffffffff1681900361187b5784806020019051810190611876919061291a565b955090505b8451156118b4576040517f998bcee200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff828116600483015260248201889052891690639dc29fac906044015f604051808303815f87803b158015611921575f80fd5b505af1158015611933573d5f803e3d5ffd5b50506040517f000000000000000000000000000000000000000000000000000000000000000092505f91506119769083908c9086908d908d908d90602401612a3f565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f84bd13b00000000000000000000000000000000000000000000000000000000017905260995482517fecc7042800000000000000000000000000000000000000000000000000000000815292519394505f9373ffffffffffffffffffffffffffffffffffffffff9091169263ecc704289260048083019391928290030181865afa158015611a5a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a7e9190612a99565b6099546097546040517fb2267a7b00000000000000000000000000000000000000000000000000000000815292935073ffffffffffffffffffffffffffffffffffffffff9182169263b2267a7b923492611ae3929116905f9088908e90600401612ab0565b5f604051808303818588803b158015611afa575f80fd5b505af1158015611b0c573d5f803e3d5ffd5b50505050508373ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fa9967b740f3fc69dfbf4744b4b1c7dfdb0b1b63f1fa4cf573bcdcb9f3ac687c48d8d8d87604051611b8b9493929190612ab0565b60405180910390a4505050505050611ba260018055565b5050505050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b600260015403611c8b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610962565b6002600155565b60018055565b5f610d53838361214e565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526001830160205260408120541515610d53565b73ffffffffffffffffffffffffffffffffffffffff8316611d4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f7a65726f20636f756e74657270617274206164647265737300000000000000006044820152606401610962565b73ffffffffffffffffffffffffffffffffffffffff8116611dcb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f7a65726f206d657373656e6765722061646472657373000000000000000000006044820152606401610962565b611dd3612174565b611ddb612212565b6097805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff0000000000000000000000000000000000000000928316179092556099805484841692169190911790558216156108cc576098805473ffffffffffffffffffffffffffffffffffffffff84167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116179055505050565b5f610d56825490565b5f8281527fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ed60205260409020611ebb90826122b0565b1561066357604051339073ffffffffffffffffffffffffffffffffffffffff83169084907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b905f90a45050565b5f54610100900460ff16611f9e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b7fe20dc80161c3a3e412098d054775959b6cab7cf9e3d46b04fee5a64d0898f0ec80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117815560405133907fc36a428b063177e3f28b3b5d340c08f77827847b2ee30114ccf0c40e519c420a905f90a280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001781556120433390565b73ffffffffffffffffffffffffffffffffffffffff167fb2ed3603bd9051f0182ebfb75f12a21059b4d31b578a2a05c8d0245e9e2d320460405160405180910390a26120af7f4b43b36766bde12c5e9cbbc37d15f8d1f769f08f54720ab370faeb4ce893753a86611648565b6120d97f63f736f21cb2943826cd50b191eb054ebbea670e4e962d0527611f830cd399d685611648565b6121037f9ab8816a3dc0b3849ec1ac00483f6ec815b07eee2fd766a353311c823ad59d0d84611648565b611ba27f94a954c0bc99227eddbc0715a62a7e1056ed8784cd719c2303b685683908857c83611648565b5f610d538373ffffffffffffffffffffffffffffffffffffffff84166122d1565b5f825f01828154811061216357612163612af5565b905f5260205f200154905092915050565b5f54610100900460ff1661220a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b6108e261231d565b5f54610100900460ff166122a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b6108e26123b3565b5f610d538373ffffffffffffffffffffffffffffffffffffffff8416612452565b5f81815260018301602052604081205461231657508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610d56565b505f610d56565b5f54610100900460ff16611c92576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b5f54610100900460ff16612449576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610962565b6108e233611ba9565b5f818152600183016020526040812054801561252c575f612474600183612b22565b85549091505f9061248790600190612b22565b90508181146124e6575f865f0182815481106124a5576124a5612af5565b905f5260205f200154905080875f0184815481106124c5576124c5612af5565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806124f7576124f7612b5a565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610d56565b5f915050610d56565b73ffffffffffffffffffffffffffffffffffffffff811681146115c4575f80fd5b5f8060408385031215612567575f80fd5b82359150602083013561257981612535565b809150509250929050565b5f60208284031215612594575f80fd5b813561259f81612535565b9392505050565b5f8083601f8401126125b6575f80fd5b50813567ffffffffffffffff8111156125cd575f80fd5b6020830191508360208285010111156125e4575f80fd5b9250929050565b5f805f805f8060a08789031215612600575f80fd5b863561260b81612535565b9550602087013561261b81612535565b945060408701359350606087013567ffffffffffffffff81111561263d575f80fd5b61264989828a016125a6565b979a9699509497949695608090950135949350505050565b5f805f60608486031215612673575f80fd5b833561267e81612535565b95602085013595506040909401359392505050565b5f805f805f805f60c0888a0312156126a9575f80fd5b87356126b481612535565b965060208801356126c481612535565b955060408801356126d481612535565b945060608801356126e481612535565b93506080880135925060a088013567ffffffffffffffff811115612706575f80fd5b6127128a828b016125a6565b989b979a50959850939692959293505050565b5f8060408385031215612736575f80fd5b50508035926020909101359150565b5f805f8060808587031215612758575f80fd5b843561276381612535565b9350602085013561277381612535565b93969395505050506040820135916060013590565b5f805f6060848603121561279a575f80fd5b83356127a581612535565b925060208401356127b581612535565b915060408401356127c581612535565b809150509250925092565b5f602082840312156127e0575f80fd5b5035919050565b5f805f80608085870312156127fa575f80fd5b843561280581612535565b9350602085013561281581612535565b9250604085013561282581612535565b9150606085013561283581612535565b939692955090935050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f6020828403121561287d575f80fd5b815161259f81612535565b73ffffffffffffffffffffffffffffffffffffffff8516815283602082015260606040820152816060820152818360808301375f818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b5f5b838110156129125781810151838201526020016128fa565b50505f910152565b5f806040838503121561292b575f80fd5b825161293681612535565b602084015190925067ffffffffffffffff80821115612953575f80fd5b818501915085601f830112612966575f80fd5b81518181111561297857612978612840565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156129be576129be612840565b816040528281528860208487010111156129d6575f80fd5b6129e78360208301602088016128f8565b80955050505050509250929050565b5f8151808452612a0d8160208601602086016128f8565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b5f73ffffffffffffffffffffffffffffffffffffffff80891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612a8d60c08301846129f6565b98975050505050505050565b5f60208284031215612aa9575f80fd5b5051919050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f612ae460808301856129f6565b905082606083015295945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81810381811115610d56577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L2LidoGatewayStorageLayoutJSON), L2LidoGatewayStorageLayout); err != nil { diff --git a/bindings/bindings/l2wstethtoken.go b/bindings/bindings/l2wstethtoken.go index 2e7fbebc0..218d2abfd 100644 --- a/bindings/bindings/l2wstethtoken.go +++ b/bindings/bindings/l2wstethtoken.go @@ -31,8 +31,8 @@ var ( // L2WstETHTokenMetaData contains all meta data concerning the L2WstETHToken contract. var L2WstETHTokenMetaData = &bind.MetaData{ - ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"eip712Domain\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"fields\",\"type\":\"bytes1\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"verifyingContract\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"extensions\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_symbol\",\"type\":\"string\"},{\"internalType\":\"uint8\",\"name\":\"_decimals\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"_gateway\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_counterpart\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"transferAndCall\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", - Bin: "0x608060405234801561000f575f80fd5b5061001861001d565b6100d9565b5f54610100900460ff16156100885760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146100d7575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61213280620000e75f395ff3fe608060405234801561000f575f80fd5b506004361061016e575f3560e01c806370a08231116100d25780639dc29fac11610088578063c820f14611610063578063c820f14614610354578063d505accf14610367578063dd62ed3e1461037a575f80fd5b80639dc29fac1461031b578063a457c2d71461032e578063a9059cbb14610341575f80fd5b80637ecebe00116100b85780637ecebe00146102e557806384b0196e146102f857806395d89b4114610313575f80fd5b806370a0823114610290578063797594b0146102c5575f80fd5b8063313ce56711610127578063395093511161010d57806339509351146102555780634000aea01461026857806340c10f191461027b575f80fd5b8063313ce5671461021d5780633644e5151461024d575f80fd5b8063116191b611610157578063116191b6146101b357806318160ddd146101f857806323b872dd1461020a575f80fd5b806306fdde0314610172578063095ea7b314610190575b5f80fd5b61017a6103bf565b6040516101879190611a7e565b60405180910390f35b6101a361019e366004611abf565b61044f565b6040519015158152602001610187565b60cc546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610187565b6035545b604051908152602001610187565b6101a3610218366004611ae7565b610468565b60cd5474010000000000000000000000000000000000000000900460ff1660405160ff9091168152602001610187565b6101fc61048b565b6101a3610263366004611abf565b610499565b6101a3610276366004611b20565b6104e4565b61028e610289366004611abf565b61054d565b005b6101fc61029e366004611ba0565b73ffffffffffffffffffffffffffffffffffffffff165f9081526033602052604090205490565b60cd546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b6101fc6102f3366004611ba0565b6105c7565b6103006105f1565b6040516101879796959493929190611bb9565b61017a6106ae565b61028e610329366004611abf565b6106bd565b6101a361033c366004611abf565b61072e565b6101a361034f366004611abf565b6107e4565b61028e610362366004611d5d565b6107f1565b61028e610375366004611ded565b610a08565b6101fc610388366004611e52565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260346020908152604080832093909416825291909152205490565b6060603680546103ce90611e83565b80601f01602080910402602001604051908101604052809291908181526020018280546103fa90611e83565b80156104455780601f1061041c57610100808354040283529160200191610445565b820191905f5260205f20905b81548152906001019060200180831161042857829003601f168201915b5050505050905090565b5f3361045c818585610bae565b60019150505b92915050565b5f33610475858285610d2d565b610480858585610de9565b506001949350505050565b5f61049461100f565b905090565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061045c90829086906104df908790611ece565b610bae565b5f6104ef85856107e4565b5073ffffffffffffffffffffffffffffffffffffffff85163b1561048057610480858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061101892505050565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146105b95760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6105c382826110a3565b5050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260996020526040812054610462565b5f6060805f805f60606065545f801b14801561060d5750606654155b6106595760405162461bcd60e51b815260206004820152601560248201527f4549503731323a20556e696e697469616c697a6564000000000000000000000060448201526064016105b0565b61066161117c565b61066961118b565b604080515f808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b6060603780546103ce90611e83565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146107245760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064016105b0565b6105c3828261119a565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156107d75760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016105b0565b6104808286868403610bae565b5f3361045c818585610de9565b5f54610100900460ff161580801561080f57505f54600160ff909116105b806108285750303b15801561082857505f5460ff166001145b61089a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105b0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156108f6575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6108ff86611327565b61090986866113e5565b60cd805460cc805473ffffffffffffffffffffffffffffffffffffffff8088167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925590851660ff88167401000000000000000000000000000000000000000002919091167fffffffffffffffffffffff000000000000000000000000000000000000000000909216919091171790558015610a00575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b83421115610a585760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016105b0565b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610a868c61146b565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f610aed8261149f565b60408051602081018790529081018590527fff0000000000000000000000000000000000000000000000000000000000000060f888901b166060820152909150610b4c908a9083906061016040516020818303038152906040526114e6565b610b985760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016105b0565b610ba3898989610bae565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316610c365760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610cbf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610de35781811015610dd65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105b0565b610de38484848403610bae565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610e725760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610efb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526033602052604090205481811015610f965760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8085165f8181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110029086815260200190565b60405180910390a3610de3565b5f61049461155e565b6040517fa4c0ed36000000000000000000000000000000000000000000000000000000008152839073ffffffffffffffffffffffffffffffffffffffff82169063a4c0ed369061107090339087908790600401611f06565b5f604051808303815f87803b158015611087575f80fd5b505af1158015611099573d5f803e3d5ffd5b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff82166111065760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105b0565b8060355f8282546111179190611ece565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6060606780546103ce90611e83565b6060606880546103ce90611e83565b73ffffffffffffffffffffffffffffffffffffffff82166112235760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260336020526040902054818110156112be5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f8181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610d20565b505050565b5f54610100900460ff166113a35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6113e2816040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506115d1565b50565b5f54610100900460ff166114615760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6105c38282611674565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526099602052604090208054600181018255905b50919050565b5f6104626114ab61100f565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b5f805f6114f38585611709565b90925090505f81600481111561150b5761150b611f43565b14801561154357508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b80611554575061155486868661174b565b9695505050505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6115886118a3565b6115906118fb565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b5f54610100900460ff1661164d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b60676116598382611fbb565b5060686116668282611fbb565b50505f606581905560665550565b5f54610100900460ff166116f05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b60366116fc8382611fbb565b5060376113228282611fbb565b5f80825160410361173d576020830151604084015160608501515f1a6117318782858561192b565b94509450505050611744565b505f905060025b9250929050565b5f805f8573ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b86866040516024016117809291906120d3565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317909252905161180991906120f3565b5f60405180830381855afa9150503d805f8114611841576040519150601f19603f3d011682016040523d82523d5f602084013e611846565b606091505b509150915081801561185a57506020815110155b8015611554575080517f1626ba7e0000000000000000000000000000000000000000000000000000000090611898908301602090810190840161210e565b149695505050505050565b5f806118ad61117c565b8051909150156118c4578051602090910120919050565b60655480156118d35792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b5f8061190561118b565b80519091501561191c578051602090910120919050565b60665480156118d35792915050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561196057505f90506003611a0a565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156119b1573d5f803e3d5ffd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff8116611a04575f60019250925050611a0a565b91505f90505b94509492505050565b5f5b83811015611a2d578181015183820152602001611a15565b50505f910152565b5f8151808452611a4c816020860160208601611a13565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f611a906020830184611a35565b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611aba575f80fd5b919050565b5f8060408385031215611ad0575f80fd5b611ad983611a97565b946020939093013593505050565b5f805f60608486031215611af9575f80fd5b611b0284611a97565b9250611b1060208501611a97565b9150604084013590509250925092565b5f805f8060608587031215611b33575f80fd5b611b3c85611a97565b935060208501359250604085013567ffffffffffffffff80821115611b5f575f80fd5b818701915087601f830112611b72575f80fd5b813581811115611b80575f80fd5b886020828501011115611b91575f80fd5b95989497505060200194505050565b5f60208284031215611bb0575f80fd5b611a9082611a97565b7fff00000000000000000000000000000000000000000000000000000000000000881681525f602060e06020840152611bf560e084018a611a35565b8381036040850152611c07818a611a35565b6060850189905273ffffffffffffffffffffffffffffffffffffffff8816608086015260a0850187905284810360c0860152855180825260208088019350909101905f5b81811015611c6757835183529284019291840191600101611c4b565b50909c9b505050505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112611cb5575f80fd5b813567ffffffffffffffff80821115611cd057611cd0611c79565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611d1657611d16611c79565b81604052838152866020858801011115611d2e575f80fd5b836020870160208301375f602085830101528094505050505092915050565b803560ff81168114611aba575f80fd5b5f805f805f60a08688031215611d71575f80fd5b853567ffffffffffffffff80821115611d88575f80fd5b611d9489838a01611ca6565b96506020880135915080821115611da9575f80fd5b50611db688828901611ca6565b945050611dc560408701611d4d565b9250611dd360608701611a97565b9150611de160808701611a97565b90509295509295909350565b5f805f805f805f60e0888a031215611e03575f80fd5b611e0c88611a97565b9650611e1a60208901611a97565b95506040880135945060608801359350611e3660808901611d4d565b925060a0880135915060c0880135905092959891949750929550565b5f8060408385031215611e63575f80fd5b611e6c83611a97565b9150611e7a60208401611a97565b90509250929050565b600181811c90821680611e9757607f821691505b602082108103611499577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b80820180821115610462577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f611f3a6060830184611a35565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b601f82111561132257805f5260205f20601f840160051c81016020851015611f955750805b601f840160051c820191505b81811015611fb4575f8155600101611fa1565b5050505050565b815167ffffffffffffffff811115611fd557611fd5611c79565b611fe981611fe38454611e83565b84611f70565b602080601f83116001811461203b575f84156120055750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610a00565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561208757888601518255948401946001909101908401612068565b50858210156120c357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f6120eb6040830184611a35565b949350505050565b5f8251612104818460208701611a13565b9190910192915050565b5f6020828403121561211e575f80fd5b505191905056fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[],\"name\":\"ErrorExpiredDeadline\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorInvalidSignature\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"counterpart\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"eip712Domain\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"fields\",\"type\":\"bytes1\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"verifyingContract\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"extensions\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_symbol\",\"type\":\"string\"},{\"internalType\":\"uint8\",\"name\":\"_decimals\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"_gateway\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_counterpart\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"transferAndCall\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", + Bin: "0x608060405234801561000f575f80fd5b5061001861001d565b6100d9565b5f54610100900460ff16156100885760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146100d7575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61210680620000e75f395ff3fe608060405234801561000f575f80fd5b506004361061016e575f3560e01c806370a08231116100d25780639dc29fac11610088578063c820f14611610063578063c820f14614610354578063d505accf14610367578063dd62ed3e1461037a575f80fd5b80639dc29fac1461031b578063a457c2d71461032e578063a9059cbb14610341575f80fd5b80637ecebe00116100b85780637ecebe00146102e557806384b0196e146102f857806395d89b4114610313575f80fd5b806370a0823114610290578063797594b0146102c5575f80fd5b8063313ce56711610127578063395093511161010d57806339509351146102555780634000aea01461026857806340c10f191461027b575f80fd5b8063313ce5671461021d5780633644e5151461024d575f80fd5b8063116191b611610157578063116191b6146101b357806318160ddd146101f857806323b872dd1461020a575f80fd5b806306fdde0314610172578063095ea7b314610190575b5f80fd5b61017a6103bf565b6040516101879190611a52565b60405180910390f35b6101a361019e366004611a93565b61044f565b6040519015158152602001610187565b60cc546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610187565b6035545b604051908152602001610187565b6101a3610218366004611abb565b610468565b60cd5474010000000000000000000000000000000000000000900460ff1660405160ff9091168152602001610187565b6101fc61048b565b6101a3610263366004611a93565b610499565b6101a3610276366004611af4565b6104e4565b61028e610289366004611a93565b61054d565b005b6101fc61029e366004611b74565b73ffffffffffffffffffffffffffffffffffffffff165f9081526033602052604090205490565b60cd546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b6101fc6102f3366004611b74565b6105c7565b6103006105f1565b6040516101879796959493929190611b8d565b61017a6106ae565b61028e610329366004611a93565b6106bd565b6101a361033c366004611a93565b61072e565b6101a361034f366004611a93565b6107e4565b61028e610362366004611d31565b6107f1565b61028e610375366004611dc1565b610a08565b6101fc610388366004611e26565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260346020908152604080832093909416825291909152205490565b6060603680546103ce90611e57565b80601f01602080910402602001604051908101604052809291908181526020018280546103fa90611e57565b80156104455780601f1061041c57610100808354040283529160200191610445565b820191905f5260205f20905b81548152906001019060200180831161042857829003601f168201915b5050505050905090565b5f3361045c818585610b82565b60019150505b92915050565b5f33610475858285610d01565b610480858585610dbd565b506001949350505050565b5f610494610fe3565b905090565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061045c90829086906104df908790611ea2565b610b82565b5f6104ef85856107e4565b5073ffffffffffffffffffffffffffffffffffffffff85163b1561048057610480858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610fec92505050565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146105b95760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6105c38282611077565b5050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260996020526040812054610462565b5f6060805f805f60606065545f801b14801561060d5750606654155b6106595760405162461bcd60e51b815260206004820152601560248201527f4549503731323a20556e696e697469616c697a6564000000000000000000000060448201526064016105b0565b610661611150565b61066961115f565b604080515f808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b6060603780546103ce90611e57565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146107245760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064016105b0565b6105c3828261116e565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156107d75760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016105b0565b6104808286868403610b82565b5f3361045c818585610dbd565b5f54610100900460ff161580801561080f57505f54600160ff909116105b806108285750303b15801561082857505f5460ff166001145b61089a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105b0565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156108f6575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6108ff866112fb565b61090986866113b9565b60cd805460cc805473ffffffffffffffffffffffffffffffffffffffff8088167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925590851660ff88167401000000000000000000000000000000000000000002919091167fffffffffffffffffffffff000000000000000000000000000000000000000000909216919091171790558015610a00575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b83421115610a42576040517fa5faea8300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610a708c61143f565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f610ad782611473565b60408051602081018790529081018590527fff0000000000000000000000000000000000000000000000000000000000000060f888901b166060820152909150610b36908a9083906061016040516020818303038152906040526114ba565b610b6c576040517f3f88fec700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b77898989610b82565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316610c0a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610c935760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610db75781811015610daa5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105b0565b610db78484848403610b82565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610e465760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8216610ecf5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526033602052604090205481811015610f6a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff8085165f8181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fd69086815260200190565b60405180910390a3610db7565b5f610494611532565b6040517fa4c0ed36000000000000000000000000000000000000000000000000000000008152839073ffffffffffffffffffffffffffffffffffffffff82169063a4c0ed369061104490339087908790600401611eda565b5f604051808303815f87803b15801561105b575f80fd5b505af115801561106d573d5f803e3d5ffd5b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff82166110da5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105b0565b8060355f8282546110eb9190611ea2565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6060606780546103ce90611e57565b6060606880546103ce90611e57565b73ffffffffffffffffffffffffffffffffffffffff82166111f75760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260336020526040902054818110156112925760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105b0565b73ffffffffffffffffffffffffffffffffffffffff83165f8181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610cf4565b505050565b5f54610100900460ff166113775760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6113b6816040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506115a5565b50565b5f54610100900460ff166114355760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b6105c38282611648565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526099602052604090208054600181018255905b50919050565b5f61046261147f610fe3565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b5f805f6114c785856116dd565b90925090505f8160048111156114df576114df611f17565b14801561151757508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b80611528575061152886868661171f565b9695505050505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f61155c611877565b6115646118cf565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b5f54610100900460ff166116215760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b606761162d8382611f8f565b50606861163a8282611f8f565b50505f606581905560665550565b5f54610100900460ff166116c45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105b0565b60366116d08382611f8f565b5060376112f68282611f8f565b5f808251604103611711576020830151604084015160608501515f1a611705878285856118ff565b94509450505050611718565b505f905060025b9250929050565b5f805f8573ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b86866040516024016117549291906120a7565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290516117dd91906120c7565b5f60405180830381855afa9150503d805f8114611815576040519150601f19603f3d011682016040523d82523d5f602084013e61181a565b606091505b509150915081801561182e57506020815110155b8015611528575080517f1626ba7e000000000000000000000000000000000000000000000000000000009061186c90830160209081019084016120e2565b149695505050505050565b5f80611881611150565b805190915015611898578051602090910120919050565b60655480156118a75792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b5f806118d961115f565b8051909150156118f0578051602090910120919050565b60665480156118a75792915050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561193457505f905060036119de565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611985573d5f803e3d5ffd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166119d8575f600192509250506119de565b91505f90505b94509492505050565b5f5b83811015611a015781810151838201526020016119e9565b50505f910152565b5f8151808452611a208160208601602086016119e7565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f611a646020830184611a09565b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a8e575f80fd5b919050565b5f8060408385031215611aa4575f80fd5b611aad83611a6b565b946020939093013593505050565b5f805f60608486031215611acd575f80fd5b611ad684611a6b565b9250611ae460208501611a6b565b9150604084013590509250925092565b5f805f8060608587031215611b07575f80fd5b611b1085611a6b565b935060208501359250604085013567ffffffffffffffff80821115611b33575f80fd5b818701915087601f830112611b46575f80fd5b813581811115611b54575f80fd5b886020828501011115611b65575f80fd5b95989497505060200194505050565b5f60208284031215611b84575f80fd5b611a6482611a6b565b7fff00000000000000000000000000000000000000000000000000000000000000881681525f602060e06020840152611bc960e084018a611a09565b8381036040850152611bdb818a611a09565b6060850189905273ffffffffffffffffffffffffffffffffffffffff8816608086015260a0850187905284810360c0860152855180825260208088019350909101905f5b81811015611c3b57835183529284019291840191600101611c1f565b50909c9b505050505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112611c89575f80fd5b813567ffffffffffffffff80821115611ca457611ca4611c4d565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611cea57611cea611c4d565b81604052838152866020858801011115611d02575f80fd5b836020870160208301375f602085830101528094505050505092915050565b803560ff81168114611a8e575f80fd5b5f805f805f60a08688031215611d45575f80fd5b853567ffffffffffffffff80821115611d5c575f80fd5b611d6889838a01611c7a565b96506020880135915080821115611d7d575f80fd5b50611d8a88828901611c7a565b945050611d9960408701611d21565b9250611da760608701611a6b565b9150611db560808701611a6b565b90509295509295909350565b5f805f805f805f60e0888a031215611dd7575f80fd5b611de088611a6b565b9650611dee60208901611a6b565b95506040880135945060608801359350611e0a60808901611d21565b925060a0880135915060c0880135905092959891949750929550565b5f8060408385031215611e37575f80fd5b611e4083611a6b565b9150611e4e60208401611a6b565b90509250929050565b600181811c90821680611e6b57607f821691505b60208210810361146d577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b80820180821115610462577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f611f0e6060830184611a09565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b601f8211156112f657805f5260205f20601f840160051c81016020851015611f695750805b601f840160051c820191505b81811015611f88575f8155600101611f75565b5050505050565b815167ffffffffffffffff811115611fa957611fa9611c4d565b611fbd81611fb78454611e57565b84611f44565b602080601f83116001811461200f575f8415611fd95750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610a00565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561205b5788860151825594840194600190910190840161203c565b508582101561209757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f6120bf6040830184611a09565b949350505050565b5f82516120d88184602087016119e7565b9190910192915050565b5f602082840312156120f2575f80fd5b505191905056fea164736f6c6343000818000a", } // L2WstETHTokenABI is the input ABI used to generate the binding from. diff --git a/bindings/bindings/l2wstethtoken_more.go b/bindings/bindings/l2wstethtoken_more.go index 3183343aa..6c7143c1b 100644 --- a/bindings/bindings/l2wstethtoken_more.go +++ b/bindings/bindings/l2wstethtoken_more.go @@ -13,7 +13,7 @@ const L2WstETHTokenStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract var L2WstETHTokenStorageLayout = new(solc.StorageLayout) -var L2WstETHTokenDeployedBin = "0x608060405234801561000f575f80fd5b506004361061016e575f3560e01c806370a08231116100d25780639dc29fac11610088578063c820f14611610063578063c820f14614610354578063d505accf14610367578063dd62ed3e1461037a575f80fd5b80639dc29fac1461031b578063a457c2d71461032e578063a9059cbb14610341575f80fd5b80637ecebe00116100b85780637ecebe00146102e557806384b0196e146102f857806395d89b4114610313575f80fd5b806370a0823114610290578063797594b0146102c5575f80fd5b8063313ce56711610127578063395093511161010d57806339509351146102555780634000aea01461026857806340c10f191461027b575f80fd5b8063313ce5671461021d5780633644e5151461024d575f80fd5b8063116191b611610157578063116191b6146101b357806318160ddd146101f857806323b872dd1461020a575f80fd5b806306fdde0314610172578063095ea7b314610190575b5f80fd5b61017a6103bf565b6040516101879190611c86565b60405180910390f35b6101a361019e366004611cc7565b61044f565b6040519015158152602001610187565b60cc546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610187565b6035545b604051908152602001610187565b6101a3610218366004611cef565b610468565b60cd5474010000000000000000000000000000000000000000900460ff1660405160ff9091168152602001610187565b6101fc61048b565b6101a3610263366004611cc7565b610499565b6101a3610276366004611d28565b6104e4565b61028e610289366004611cc7565b61054d565b005b6101fc61029e366004611da8565b73ffffffffffffffffffffffffffffffffffffffff165f9081526033602052604090205490565b60cd546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b6101fc6102f3366004611da8565b6105e1565b61030061060b565b6040516101879796959493929190611dc1565b61017a6106e2565b61028e610329366004611cc7565b6106f1565b6101a361033c366004611cc7565b61077c565b6101a361034f366004611cc7565b61084c565b61028e610362366004611f65565b610859565b61028e610375366004611ff5565b610a8a565b6101fc61038836600461205a565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260346020908152604080832093909416825291909152205490565b6060603680546103ce9061208b565b80601f01602080910402602001604051908101604052809291908181526020018280546103fa9061208b565b80156104455780601f1061041c57610100808354040283529160200191610445565b820191905f5260205f20905b81548152906001019060200180831161042857829003601f168201915b5050505050905090565b5f3361045c818585610c64565b60019150505b92915050565b5f33610475858285610e17565b610480858585610eed565b506001949350505050565b5f610494611161565b905090565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061045c90829086906104df9087906120d6565b610c64565b5f6104ef858561084c565b5073ffffffffffffffffffffffffffffffffffffffff85163b1561048057610480858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061116a92505050565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146105d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6105dd82826111f5565b5050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260996020526040812054610462565b5f6060805f805f60606065545f801b1480156106275750606654155b61068d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4549503731323a20556e696e697469616c697a6564000000000000000000000060448201526064016105ca565b6106956112e8565b61069d6112f7565b604080515f808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b6060603780546103ce9061208b565b60cc5473ffffffffffffffffffffffffffffffffffffffff163314610772576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064016105ca565b6105dd8282611306565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff871684529091528120549091908381101561083f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016105ca565b6104808286868403610c64565b5f3361045c818585610eed565b5f54610100900460ff161580801561087757505f54600160ff909116105b806108905750303b15801561089057505f5460ff166001145b61091c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105ca565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610978575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610981866114c7565b61098b868661159f565b60cd805460cc805473ffffffffffffffffffffffffffffffffffffffff8088167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925590851660ff88167401000000000000000000000000000000000000000002919091167fffffffffffffffffffffff000000000000000000000000000000000000000000909216919091171790558015610a82575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b83421115610af4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016105ca565b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610b228c61163f565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f610b8982611673565b60408051602081018790529081018590527fff0000000000000000000000000000000000000000000000000000000000000060f888901b166060820152909150610be8908a9083906061016040516020818303038152906040526116ba565b610c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016105ca565b610c59898989610c64565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316610d06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8216610da9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610ee75781811015610eda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105ca565b610ee78484848403610c64565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610f90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8216611033576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff83165f90815260336020526040902054818110156110e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8085165f8181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111549086815260200190565b60405180910390a3610ee7565b5f610494611732565b6040517fa4c0ed36000000000000000000000000000000000000000000000000000000008152839073ffffffffffffffffffffffffffffffffffffffff82169063a4c0ed36906111c29033908790879060040161210e565b5f604051808303815f87803b1580156111d9575f80fd5b505af11580156111eb573d5f803e3d5ffd5b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8216611272576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105ca565b8060355f82825461128391906120d6565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6060606780546103ce9061208b565b6060606880546103ce9061208b565b73ffffffffffffffffffffffffffffffffffffffff82166113a9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff82165f908152603360205260409020548181101561145e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff83165f8181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610e0a565b505050565b5f54610100900460ff1661155d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b61159c816040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506117a5565b50565b5f54610100900460ff16611635576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b6105dd8282611862565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526099602052604090208054600181018255905b50919050565b5f61046261167f611161565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b5f805f6116c78585611911565b90925090505f8160048111156116df576116df61214b565b14801561171757508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b806117285750611728868686611953565b9695505050505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f61175c611aab565b611764611b03565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b5f54610100900460ff1661183b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b606761184783826121c3565b50606861185482826121c3565b50505f606581905560665550565b5f54610100900460ff166118f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b603661190483826121c3565b5060376114c282826121c3565b5f808251604103611945576020830151604084015160608501515f1a61193987828585611b33565b9450945050505061194c565b505f905060025b9250929050565b5f805f8573ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b86866040516024016119889291906122db565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909416939093179092529051611a1191906122fb565b5f60405180830381855afa9150503d805f8114611a49576040519150601f19603f3d011682016040523d82523d5f602084013e611a4e565b606091505b5091509150818015611a6257506020815110155b8015611728575080517f1626ba7e0000000000000000000000000000000000000000000000000000000090611aa09083016020908101908401612316565b149695505050505050565b5f80611ab56112e8565b805190915015611acc578051602090910120919050565b6065548015611adb5792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b5f80611b0d6112f7565b805190915015611b24578051602090910120919050565b6066548015611adb5792915050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611b6857505f90506003611c12565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611bb9573d5f803e3d5ffd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff8116611c0c575f60019250925050611c12565b91505f90505b94509492505050565b5f5b83811015611c35578181015183820152602001611c1d565b50505f910152565b5f8151808452611c54816020860160208601611c1b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f611c986020830184611c3d565b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611cc2575f80fd5b919050565b5f8060408385031215611cd8575f80fd5b611ce183611c9f565b946020939093013593505050565b5f805f60608486031215611d01575f80fd5b611d0a84611c9f565b9250611d1860208501611c9f565b9150604084013590509250925092565b5f805f8060608587031215611d3b575f80fd5b611d4485611c9f565b935060208501359250604085013567ffffffffffffffff80821115611d67575f80fd5b818701915087601f830112611d7a575f80fd5b813581811115611d88575f80fd5b886020828501011115611d99575f80fd5b95989497505060200194505050565b5f60208284031215611db8575f80fd5b611c9882611c9f565b7fff00000000000000000000000000000000000000000000000000000000000000881681525f602060e06020840152611dfd60e084018a611c3d565b8381036040850152611e0f818a611c3d565b6060850189905273ffffffffffffffffffffffffffffffffffffffff8816608086015260a0850187905284810360c0860152855180825260208088019350909101905f5b81811015611e6f57835183529284019291840191600101611e53565b50909c9b505050505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112611ebd575f80fd5b813567ffffffffffffffff80821115611ed857611ed8611e81565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611f1e57611f1e611e81565b81604052838152866020858801011115611f36575f80fd5b836020870160208301375f602085830101528094505050505092915050565b803560ff81168114611cc2575f80fd5b5f805f805f60a08688031215611f79575f80fd5b853567ffffffffffffffff80821115611f90575f80fd5b611f9c89838a01611eae565b96506020880135915080821115611fb1575f80fd5b50611fbe88828901611eae565b945050611fcd60408701611f55565b9250611fdb60608701611c9f565b9150611fe960808701611c9f565b90509295509295909350565b5f805f805f805f60e0888a03121561200b575f80fd5b61201488611c9f565b965061202260208901611c9f565b9550604088013594506060880135935061203e60808901611f55565b925060a0880135915060c0880135905092959891949750929550565b5f806040838503121561206b575f80fd5b61207483611c9f565b915061208260208401611c9f565b90509250929050565b600181811c9082168061209f57607f821691505b60208210810361166d577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b80820180821115610462577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f6121426060830184611c3d565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b601f8211156114c257805f5260205f20601f840160051c8101602085101561219d5750805b601f840160051c820191505b818110156121bc575f81556001016121a9565b5050505050565b815167ffffffffffffffff8111156121dd576121dd611e81565b6121f1816121eb845461208b565b84612178565b602080601f831160018114612243575f841561220d5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610a82565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561228f57888601518255948401946001909101908401612270565b50858210156122cb57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f6122f36040830184611c3d565b949350505050565b5f825161230c818460208701611c1b565b9190910192915050565b5f60208284031215612326575f80fd5b505191905056fea164736f6c6343000818000a" +var L2WstETHTokenDeployedBin = "0x608060405234801561000f575f80fd5b506004361061016e575f3560e01c806370a08231116100d25780639dc29fac11610088578063c820f14611610063578063c820f14614610354578063d505accf14610367578063dd62ed3e1461037a575f80fd5b80639dc29fac1461031b578063a457c2d71461032e578063a9059cbb14610341575f80fd5b80637ecebe00116100b85780637ecebe00146102e557806384b0196e146102f857806395d89b4114610313575f80fd5b806370a0823114610290578063797594b0146102c5575f80fd5b8063313ce56711610127578063395093511161010d57806339509351146102555780634000aea01461026857806340c10f191461027b575f80fd5b8063313ce5671461021d5780633644e5151461024d575f80fd5b8063116191b611610157578063116191b6146101b357806318160ddd146101f857806323b872dd1461020a575f80fd5b806306fdde0314610172578063095ea7b314610190575b5f80fd5b61017a6103bf565b6040516101879190611c26565b60405180910390f35b6101a361019e366004611c67565b61044f565b6040519015158152602001610187565b60cc546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610187565b6035545b604051908152602001610187565b6101a3610218366004611c8f565b610468565b60cd5474010000000000000000000000000000000000000000900460ff1660405160ff9091168152602001610187565b6101fc61048b565b6101a3610263366004611c67565b610499565b6101a3610276366004611cc8565b6104e4565b61028e610289366004611c67565b61054d565b005b6101fc61029e366004611d48565b73ffffffffffffffffffffffffffffffffffffffff165f9081526033602052604090205490565b60cd546101d39073ffffffffffffffffffffffffffffffffffffffff1681565b6101fc6102f3366004611d48565b6105e1565b61030061060b565b6040516101879796959493929190611d61565b61017a6106e2565b61028e610329366004611c67565b6106f1565b6101a361033c366004611c67565b61077c565b6101a361034f366004611c67565b61084c565b61028e610362366004611f05565b610859565b61028e610375366004611f95565b610a8a565b6101fc610388366004611ffa565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260346020908152604080832093909416825291909152205490565b6060603680546103ce9061202b565b80601f01602080910402602001604051908101604052809291908181526020018280546103fa9061202b565b80156104455780601f1061041c57610100808354040283529160200191610445565b820191905f5260205f20905b81548152906001019060200180831161042857829003601f168201915b5050505050905090565b5f3361045c818585610c04565b60019150505b92915050565b5f33610475858285610db7565b610480858585610e8d565b506001949350505050565b5f610494611101565b905090565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061045c90829086906104df908790612076565b610c04565b5f6104ef858561084c565b5073ffffffffffffffffffffffffffffffffffffffff85163b1561048057610480858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061110a92505050565b60cc5473ffffffffffffffffffffffffffffffffffffffff1633146105d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6105dd8282611195565b5050565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260996020526040812054610462565b5f6060805f805f60606065545f801b1480156106275750606654155b61068d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4549503731323a20556e696e697469616c697a6564000000000000000000000060448201526064016105ca565b610695611288565b61069d611297565b604080515f808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b6060603780546103ce9061202b565b60cc5473ffffffffffffffffffffffffffffffffffffffff163314610772576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4f6e6c792047617465776179000000000000000000000000000000000000000060448201526064016105ca565b6105dd82826112a6565b335f81815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff871684529091528120549091908381101561083f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016105ca565b6104808286868403610c04565b5f3361045c818585610e8d565b5f54610100900460ff161580801561087757505f54600160ff909116105b806108905750303b15801561089057505f5460ff166001145b61091c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105ca565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610978575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61098186611467565b61098b868661153f565b60cd805460cc805473ffffffffffffffffffffffffffffffffffffffff8088167fffffffffffffffffffffffff00000000000000000000000000000000000000009283161790925590851660ff88167401000000000000000000000000000000000000000002919091167fffffffffffffffffffffff000000000000000000000000000000000000000000909216919091171790558015610a82575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b83421115610ac4576040517fa5faea8300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610af28c6115df565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f610b5982611613565b60408051602081018790529081018590527fff0000000000000000000000000000000000000000000000000000000000000060f888901b166060820152909150610bb8908a90839060610160405160208183030381529060405261165a565b610bee576040517f3f88fec700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610bf9898989610c04565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316610ca6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8216610d49576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e875781811015610e7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105ca565b610e878484848403610c04565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610f30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8216610fd3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526033602052604090205481811015611088576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff8085165f8181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110f49086815260200190565b60405180910390a3610e87565b5f6104946116d2565b6040517fa4c0ed36000000000000000000000000000000000000000000000000000000008152839073ffffffffffffffffffffffffffffffffffffffff82169063a4c0ed3690611162903390879087906004016120ae565b5f604051808303815f87803b158015611179575f80fd5b505af115801561118b573d5f803e3d5ffd5b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8216611212576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105ca565b8060355f8282546112239190612076565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6060606780546103ce9061202b565b6060606880546103ce9061202b565b73ffffffffffffffffffffffffffffffffffffffff8216611349576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260336020526040902054818110156113fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105ca565b73ffffffffffffffffffffffffffffffffffffffff83165f8181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610daa565b505050565b5f54610100900460ff166114fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b61153c816040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250611745565b50565b5f54610100900460ff166115d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b6105dd8282611802565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526099602052604090208054600181018255905b50919050565b5f61046261161f611101565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b5f805f61166785856118b1565b90925090505f81600481111561167f5761167f6120eb565b1480156116b757508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b806116c857506116c88686866118f3565b9695505050505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6116fc611a4b565b611704611aa3565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b5f54610100900460ff166117db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b60676117e78382612163565b5060686117f48282612163565b50505f606581905560665550565b5f54610100900460ff16611898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105ca565b60366118a48382612163565b5060376114628282612163565b5f8082516041036118e5576020830151604084015160608501515f1a6118d987828585611ad3565b945094505050506118ec565b505f905060025b9250929050565b5f805f8573ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b868660405160240161192892919061227b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290516119b1919061229b565b5f60405180830381855afa9150503d805f81146119e9576040519150601f19603f3d011682016040523d82523d5f602084013e6119ee565b606091505b5091509150818015611a0257506020815110155b80156116c8575080517f1626ba7e0000000000000000000000000000000000000000000000000000000090611a4090830160209081019084016122b6565b149695505050505050565b5f80611a55611288565b805190915015611a6c578051602090910120919050565b6065548015611a7b5792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b5f80611aad611297565b805190915015611ac4578051602090910120919050565b6066548015611a7b5792915050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611b0857505f90506003611bb2565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611b59573d5f803e3d5ffd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff8116611bac575f60019250925050611bb2565b91505f90505b94509492505050565b5f5b83811015611bd5578181015183820152602001611bbd565b50505f910152565b5f8151808452611bf4816020860160208601611bbb565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f611c386020830184611bdd565b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611c62575f80fd5b919050565b5f8060408385031215611c78575f80fd5b611c8183611c3f565b946020939093013593505050565b5f805f60608486031215611ca1575f80fd5b611caa84611c3f565b9250611cb860208501611c3f565b9150604084013590509250925092565b5f805f8060608587031215611cdb575f80fd5b611ce485611c3f565b935060208501359250604085013567ffffffffffffffff80821115611d07575f80fd5b818701915087601f830112611d1a575f80fd5b813581811115611d28575f80fd5b886020828501011115611d39575f80fd5b95989497505060200194505050565b5f60208284031215611d58575f80fd5b611c3882611c3f565b7fff00000000000000000000000000000000000000000000000000000000000000881681525f602060e06020840152611d9d60e084018a611bdd565b8381036040850152611daf818a611bdd565b6060850189905273ffffffffffffffffffffffffffffffffffffffff8816608086015260a0850187905284810360c0860152855180825260208088019350909101905f5b81811015611e0f57835183529284019291840191600101611df3565b50909c9b505050505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112611e5d575f80fd5b813567ffffffffffffffff80821115611e7857611e78611e21565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611ebe57611ebe611e21565b81604052838152866020858801011115611ed6575f80fd5b836020870160208301375f602085830101528094505050505092915050565b803560ff81168114611c62575f80fd5b5f805f805f60a08688031215611f19575f80fd5b853567ffffffffffffffff80821115611f30575f80fd5b611f3c89838a01611e4e565b96506020880135915080821115611f51575f80fd5b50611f5e88828901611e4e565b945050611f6d60408701611ef5565b9250611f7b60608701611c3f565b9150611f8960808701611c3f565b90509295509295909350565b5f805f805f805f60e0888a031215611fab575f80fd5b611fb488611c3f565b9650611fc260208901611c3f565b95506040880135945060608801359350611fde60808901611ef5565b925060a0880135915060c0880135905092959891949750929550565b5f806040838503121561200b575f80fd5b61201483611c3f565b915061202260208401611c3f565b90509250929050565b600181811c9082168061203f57607f821691505b60208210810361160d577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b80820180821115610462577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f6120e26060830184611bdd565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b601f82111561146257805f5260205f20601f840160051c8101602085101561213d5750805b601f840160051c820191505b8181101561215c575f8155600101612149565b5050505050565b815167ffffffffffffffff81111561217d5761217d611e21565b6121918161218b845461202b565b84612118565b602080601f8311600181146121e3575f84156121ad5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610a82565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561222f57888601518255948401946001909101908401612210565b508582101561226b57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f6122936040830184611bdd565b949350505050565b5f82516122ac818460208701611bbb565b9190910192915050565b5f602082840312156122c6575f80fd5b505191905056fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L2WstETHTokenStorageLayoutJSON), L2WstETHTokenStorageLayout); err != nil { diff --git a/contracts/contracts/lido/L1LidoGateway.sol b/contracts/contracts/lido/L1LidoGateway.sol index f39618612..39c1c3fec 100644 --- a/contracts/contracts/lido/L1LidoGateway.sol +++ b/contracts/contracts/lido/L1LidoGateway.sol @@ -11,6 +11,9 @@ import {GatewayBase} from "../libraries/gateway/GatewayBase.sol"; import {LidoBridgeableTokens} from "./LidoBridgeableTokens.sol"; import {LidoGatewayManager} from "./LidoGatewayManager.sol"; +/** + * @custom:security-contact official@morphl2.io + */ contract L1LidoGateway is L1ERC20Gateway, LidoBridgeableTokens, LidoGatewayManager { /********** * Errors * @@ -39,8 +42,9 @@ contract L1LidoGateway is L1ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag /// @param _l1Token The address of the bridged token in the L1 chain /// @param _l2Token The address of the token minted on the L2 chain when token bridged constructor(address _l1Token, address _l2Token) LidoBridgeableTokens(_l1Token, _l2Token) { - require(_l1Token != address(0), "zero l1token address"); - require(_l2Token != address(0), "zero l2Token address"); + if (_l1Token == address(0) || _l2Token ==address(0)){ + revert ErrorZeroAddress(); + } _disableInitializers(); } @@ -121,9 +125,10 @@ contract L1LidoGateway is L1ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag if (_data.length != 0) revert DepositAndCallIsNotAllowed(); // 2. Generate message passed to L2LidoGateway. + address _l2Token = l2Token; bytes memory _message = abi.encodeCall( IL2ERC20Gateway.finalizeDepositERC20, - (_token, l2Token, _from, _to, _amount, _data) + (_token, _l2Token, _from, _to, _amount, _data) ); uint256 nonce = IL1CrossDomainMessenger(messenger).messageNonce(); @@ -131,6 +136,6 @@ contract L1LidoGateway is L1ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag // 3. Send message to L1CrossDomainMessenger. IL1CrossDomainMessenger(messenger).sendMessage{value: msg.value}(counterpart, 0, _message, _gasLimit, _from); - emit DepositERC20(_token, l2Token, _from, _to, _amount, _data, nonce); + emit DepositERC20(_token, _l2Token, _from, _to, _amount, _data, nonce); } } diff --git a/contracts/contracts/lido/L2LidoGateway.sol b/contracts/contracts/lido/L2LidoGateway.sol index 8ac046d82..da075c747 100644 --- a/contracts/contracts/lido/L2LidoGateway.sol +++ b/contracts/contracts/lido/L2LidoGateway.sol @@ -12,6 +12,9 @@ import {GatewayBase} from "../libraries/gateway/GatewayBase.sol"; import {LidoBridgeableTokens} from "./LidoBridgeableTokens.sol"; import {LidoGatewayManager} from "./LidoGatewayManager.sol"; +/** + * @custom:security-contact official@morphl2.io + */ contract L2LidoGateway is L2ERC20Gateway, LidoBridgeableTokens, LidoGatewayManager { /********** * Errors * @@ -40,8 +43,9 @@ contract L2LidoGateway is L2ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag /// @param _l1Token The address of the bridged token in the L1 chain /// @param _l2Token The address of the token minted on the L2 chain when token bridged constructor(address _l1Token, address _l2Token) LidoBridgeableTokens(_l1Token, _l2Token) { - require(_l1Token != address(0), "zero l1token address"); - require(_l2Token != address(0), "zero l2Token address"); + if (_l1Token == address(0) || _l2Token ==address(0)){ + revert ErrorZeroAddress(); + } _disableInitializers(); } @@ -59,7 +63,7 @@ contract L2LidoGateway is L2ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag /// @notice Initialize the storage of L2LidoGateway v2. /// @param _depositsEnabler The address of user who can enable deposits - /// @param _depositsEnabler The address of user who can disable deposits + /// @param _depositsDisabler The address of user who can disable deposits /// @param _withdrawalsEnabler The address of user who can enable withdrawals /// @param _withdrawalsDisabler The address of user who can disable withdrawals function initializeV2( @@ -152,9 +156,10 @@ contract L2LidoGateway is L2ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag IMorphERC20Upgradeable(_l2Token).burn(_from, _amount); // 3. Generate message passed to L1LidoGateway. + address _l1Token = l1Token; bytes memory _message = abi.encodeCall( IL1ERC20Gateway.finalizeWithdrawERC20, - (l1Token, _l2Token, _from, _to, _amount, _data) + (_l1Token, _l2Token, _from, _to, _amount, _data) ); uint256 nonce = IL2CrossDomainMessenger(messenger).messageNonce(); @@ -162,6 +167,6 @@ contract L2LidoGateway is L2ERC20Gateway, LidoBridgeableTokens, LidoGatewayManag // 4. send message to L2CrossDomainMessenger IL2CrossDomainMessenger(messenger).sendMessage{value: msg.value}(counterpart, 0, _message, _gasLimit); - emit WithdrawERC20(l1Token, _l2Token, _from, _to, _amount, _data, nonce); + emit WithdrawERC20(_l1Token, _l2Token, _from, _to, _amount, _data, nonce); } } diff --git a/contracts/contracts/lido/L2WstETHToken.sol b/contracts/contracts/lido/L2WstETHToken.sol index fcf764086..e79a38529 100644 --- a/contracts/contracts/lido/L2WstETHToken.sol +++ b/contracts/contracts/lido/L2WstETHToken.sol @@ -8,7 +8,20 @@ import {SignatureCheckerUpgradeable} from "@openzeppelin/contracts-upgradeable/u import {MorphStandardERC20} from "../libraries/token/MorphStandardERC20.sol"; +/** + * @custom:security-contact official@morphl2.io + */ contract L2WstETHToken is MorphStandardERC20 { + /********** + * Errors * + **********/ + + /// @dev Thrown when the deadline is expired. + error ErrorExpiredDeadline(); + + /// @dev Thrown when the given signature is invalid. + error ErrorInvalidSignature(); + /************* * Constants * *************/ @@ -33,16 +46,16 @@ contract L2WstETHToken is MorphStandardERC20 { bytes32 r, bytes32 s ) public virtual override(ERC20PermitUpgradeable, IERC20PermitUpgradeable) { - require(block.timestamp <= deadline, "ERC20Permit: expired deadline"); - + if (block.timestamp > deadline) { + revert ErrorExpiredDeadline(); + } bytes32 structHash = keccak256(abi.encode(_PERMIT_TYPEHASH, owner, spender, value, _useNonce(owner), deadline)); bytes32 hash = _hashTypedDataV4(structHash); - require( - SignatureCheckerUpgradeable.isValidSignatureNow(owner, hash, abi.encodePacked(r, s, v)), - "ERC20Permit: invalid signature" - ); + if (!SignatureCheckerUpgradeable.isValidSignatureNow(owner, hash, abi.encodePacked(r, s, v))){ + revert ErrorInvalidSignature(); + } _approve(owner, spender, value); } diff --git a/contracts/contracts/lido/LidoBridgeableTokens.sol b/contracts/contracts/lido/LidoBridgeableTokens.sol index 2da95ba1b..806d43c40 100644 --- a/contracts/contracts/lido/LidoBridgeableTokens.sol +++ b/contracts/contracts/lido/LidoBridgeableTokens.sol @@ -2,6 +2,9 @@ pragma solidity =0.8.24; +/** + * @custom:security-contact official@morphl2.io + */ abstract contract LidoBridgeableTokens { /************* * Constants * @@ -17,6 +20,9 @@ abstract contract LidoBridgeableTokens { * Errors * **********/ + /// @dev Thrown when the given address is `address(0)`. + error ErrorZeroAddress(); + /// @dev Thrown the given `l1Token` is not supported. error ErrorUnsupportedL1Token(); diff --git a/contracts/contracts/lido/LidoGatewayManager.sol b/contracts/contracts/lido/LidoGatewayManager.sol index b70e78832..f9d1247b6 100644 --- a/contracts/contracts/lido/LidoGatewayManager.sol +++ b/contracts/contracts/lido/LidoGatewayManager.sol @@ -8,6 +8,9 @@ import {GatewayBase} from "../libraries/gateway/GatewayBase.sol"; // solhint-disable func-name-mixedcase +/** + * @custom:security-contact official@morphl2.io + */ abstract contract LidoGatewayManager is GatewayBase { using EnumerableSetUpgradeable for EnumerableSetUpgradeable.AddressSet; @@ -128,7 +131,7 @@ abstract contract LidoGatewayManager is GatewayBase { /// @notice Initialize the storage of LidoGatewayManager. /// @param _depositsEnabler The address of user who can enable deposits - /// @param _depositsEnabler The address of user who can disable deposits + /// @param _depositsDisabler The address of user who can disable deposits /// @param _withdrawalsEnabler The address of user who can enable withdrawals /// @param _withdrawalsDisabler The address of user who can disable withdrawals function __LidoGatewayManager_init( diff --git a/contracts/contracts/lido/README.md b/contracts/contracts/lido/README.md new file mode 100644 index 000000000..6b453874d --- /dev/null +++ b/contracts/contracts/lido/README.md @@ -0,0 +1,112 @@ +# Lido's Morph Bridge + +The document outlines the process of bridging ERC20-compatible tokens between the Ethereum and Morph chains. + +This marks the initial phase of Lido's integration into the Morph protocol. The primary objective of this implementation is to establish a solid foundation for Lido's long-term expansion goals on the Morph chain. The broader vision for Lido's integration into Layer 2 solutions includes: + +- Bridging Lido's tokens from Layer 1 to Layer 2 chains +- Enabling instant ETH staking on Layer 2 chains, with users receiving stETH/wstETH immediately on the corresponding Layer 2 +- Maintaining a user experience on Layer 2 that closely resembles that of the Ethereum mainnet +At this stage, the implementation aims to deliver a scalable and reliable solution for Lido to bridge ERC20-compatible tokens between Morph and the Ethereum chain. + +## Security surface overview + +| Statement | Answer | +| -------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| It is possible to bridge wstETH forth and back using this bridge | Yes | +| The bridge using a canonical mechanism for message/value passing | Yes | +| The bridge is upgradeable | Yes | +| Upgrade authority for the bridge | Yes | +| Emergency pause/cancel mechanisms and their authorities | TBA | +| The bridged token support permits and ERC-1271 | Yes | +| Are the following things in the scope of this bridge deployment: | | +| - Passing the (w)stETH/USD price feed | No | +| - Passing Lido DAO governance decisions | [Lido DAO Agent](https://etherscan.io/address/0x3e40D73EB977Dc6a537aF587D48316feE66E9C8c) representation via [MorphBridgeExecutor](TBD) | +| Bridges are complicated in that the transaction can succeed on one side and fail on the other. What's the handling mechanism for this issue? | TBA | +| Is there a deployment script that sets all the parameters and authorities correctly? | No, we use hardhat tasks to deploy and perform related permission operations after the test is completed. | +| Is there a post-deploy check script that, given a deployment, checks that all parameters and authorities are set correctly? | No | + +## Morph's Bridging Flow + +The default Morph bridging solution consists of two components: `L1StandardERC20Gateway` and `L2StandardERC20Gateway`. These contracts facilitate the bridging of ERC20 tokens between the Ethereum and Morph chains. + +In the standard bridge, when an ERC20 token is deposited on Layer 1 and sent to the bridge contract, it is "locked" there while an equivalent amount of the L2 token is minted. For withdrawals, the process is reversed: the L2 token amount is burned, and the same amount of L1 tokens is sent to the recipient. + +While the default Morph bridge meets Lido's short-term goal of bridging the wstETH token into Morph, it poses challenges for achieving long-term objectives. For instance, implementing staking from Layer 2 will likely require modifications to both the token and gateway implementations. + +Moreover, Morph offers the flexibility to create a custom bridge solution using the same cross-domain infrastructure as the standard bridge. The only requirement for a custom bridge to be compatible with the default Morph Gateway is the implementation of the `IL1ERC20Gateway` and `IL2ERC20Gateway` interfaces. + +The remainder of the document includes technical specifications for the bridge that Lido will use to transfer tokens between the Ethereum and Morph chains. + + +## Lido's Bridge Implementation + +The current implementation of the token bridge enables the transfer of ERC20-compatible tokens between Ethereum and Morph chains. It also includes administrative features, such as the ability to temporarily disable deposits and withdrawals. This functionality is crucial for quickly addressing potential malicious activities or vulnerabilities within the contracts, as well as facilitating the upgrade process. + +The technical implementation prioritizes the following requirements for the contracts: + +- **Scalability**: The current design must allow for future extensions and new functionalities. +- **Simplicity**: The contracts should be clear, straightforward, and easy for future developers to understand and work with. +- **Gas Efficiency**: The solution should minimize gas costs for users while maintaining clarity and simplicity. + +A high-level overview of the proposed solution can be found in the diagram below: + + +![](https://i.imgur.com/rbIvCr6.png) + +- [**`LidoGatewayManager`**](./LidoGatewayManager.sol): This contract includes administrative methods to manage and monitor the state of the bridging process. +- [**`LidoBridgeableTokens`**](./LidoBridgeableTokens.sol) : This contract implements the logic for validating tokens involved in the bridging process. +- [**`L1LidoGateway`**](./L1LidoGateway.sol): This contract serves as Ethereum's counterpart for bridging registered ERC20-compatible tokens between Ethereum and Morph chains. +- [**`L2LidoGateway`**](./L2LidoGateway.sol): This contract acts as Morph's counterpart for bridging registered ERC20-compatible tokens between Ethereum and Morph chains. +- [**`MorphStandardERC20`**](../libraries/token/MorphStandardERC20.sol): This is an implementation of the `ERC20` token, equipped with administrative methods for minting and burning tokens. +- [**`TransparentUpgradeableProxy`**](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/proxy/transparent/TransparentUpgradeableProxy.sol) : This is an ERC1967 proxy that includes additional administrative functionalities. + +## Morph's Bridging Flow + +You can find the general process for bridging tokens through Morph's Lido bridge here: [ETH and ERC20 Token Bridge](https://docs.morphl2.io/docs/build-on-morph/build-on-morph/bridge-between-morph-and-ethereum). + +The goal of cross-chain governance is bridging the Lido DAO governance decisions, voted by the LDO holders on Ethereum, to Morph network. The main component of this bridge is MorphBridgeExecutor contract on L2, which queues the action sets sent from L1 Lido Agent through L1Executor. + +![](https://i.imgur.com/4cgEo63.png) + + +## Deployment Process + +To minimize gas costs for users, the `L1LidoGateway`, `L2LidoGateway`, and `MorphStandardERC20` contracts utilize immutable variables wherever possible. However, some of these variables reference each other; for instance, `L1LidoGateway` refers to `L2LidoGateway` and vice versa. By using proxies, we can initially deploy them without invoking the `initialize` function for each gateway, and then call the `initialize` function with the correct contract addresses. + +Alternatively, we could pre-calculate the future addresses of the deployed contracts off-chain and deploy the implementation using these pre-calculated addresses, but this approach is less fault-tolerant than the first option. + +## Integration Risks + +As an additional component in the token flow chain, the Morph protocol and bridges introduce potential points of failure. The main risks associated with the current integration are outlined below: + +### Minting of Uncollateralized L2 Tokens + +An attack could occur if an attacker gains access to call `L2LidoGateway.finalizeDepositERC20()` directly. In this scenario, they could mint uncollateralized tokens on L2 and later initiate a withdrawal. + +To detect such an attack, off-chain monitoring of minting and deposit/withdrawal events is essential. The following statistics can be tracked based on these events: + +- `l1ERC20TokenBridgedAmount`: Total number of tokens bridged on the L1 bridge contract. +- `l2TokenTotalSupply`: Total number of minted L2 tokens. +- `l2TokenNotFinalizedDeposit`: Total number of locked L1 tokens that have not been finalized and relayed from the L2 bridge. +- `l2TokenNotWithdrawn`: Total number of burned L2 tokens that have not been withdrawn from the L1 bridge. + +The following invariant must always hold true: `l1ERC20TokenBridgedAmount == l2TokenTotalSupply + l2TokenNotWithdrawn + l2TokenNotFinalizedDeposit`. + +If this invariant is violated, Lido will enter a dispute period to suspend both the L1 and L2 bridges. During this time, the bridges will be disabled, preventing the minting of L2 tokens and the withdrawal of minted tokens until the issue is resolved. + +### Attack on L1CrossDomainMessenger + +According to the Morph documentation, the `L1CrossDomainMessenger` contract sends messages from L1 to L2 and executes the challenged L2 messages in the `Rollup`. + +This contract plays a crucial role in L2-to-L1 communication, as all messages from L2 that are finalized by a challenger and verified by Merkle proof are executed on behalf of this contract. + +If there is a vulnerability in the `L1CrossDomainMessenger` or `Rollup` that allows an attacker to send arbitrary messages while bypassing the challenge and Merkle proof, they could potentially drain tokens from the L1 bridge. + +Additionally, the upgradeability of the `L1CrossDomainMessenger` and `Rollup` poses risks. An attacker could exploit this by replacing the implementation with malicious functionality, which could lead to the theft of all locked tokens on the L1 bridge. + +To respond swiftly to such an attack, Lido can implement monitoring of the Proxy contract to raise an alert in the event of an implementation upgrade. + +--- + +Feel free to ask if you need further adjustments or additional information! From 72ceffc870a33b6d0ceab5f3ed3a83196b84e3c1 Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Mon, 20 Jan 2025 17:08:49 +0800 Subject: [PATCH 27/33] fix(tx-submitter): prevent panic by returning error (#713) --- tx-submitter/services/rollup.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index 272c258a6..f946ef339 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -1192,7 +1192,7 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *ethtypes.Transaction) (*ethtypes.Tr tip, gasFeeCap, blobFeeCap, err := r.GetGasTipAndCap() if err != nil { - log.Error("get tip and cap", "err", err) + return nil, fmt.Errorf("get gas tip and cap error:%w", err) } if !resend { // bump tip & feeCap From 01eacdf3a092bb8ac2638f068f03828dd717051b Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Thu, 23 Jan 2025 15:01:44 +0800 Subject: [PATCH 28/33] fix(tx-submitter): update gas fee cap when replacing tip with min tip (#714) --- tx-submitter/services/rollup.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index f946ef339..3e1de9af0 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -1218,6 +1218,19 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *ethtypes.Transaction) (*ethtypes.Tr if r.cfg.MinTip > 0 && tip.Cmp(big.NewInt(int64(r.cfg.MinTip))) < 0 { log.Info("replace tip is too low, update tip to min tip ", "tip", tip, "min_tip", r.cfg.MinTip) tip = big.NewInt(int64(r.cfg.MinTip)) + // recalc feecap + head, err := r.L1Client.HeaderByNumber(context.Background(), nil) + if err != nil { + return nil, fmt.Errorf("get l1 head error:%w", err) + } + if head.BaseFee != nil { + gasFeeCap = new(big.Int).Add( + tip, + new(big.Int).Mul(head.BaseFee, big.NewInt(2)), + ) + } else { + gasFeeCap = new(big.Int).Set(tip) + } } } From 904c3f2172d44291eba4a1dd03a161fd8d99630f Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Mon, 3 Mar 2025 17:46:39 +0800 Subject: [PATCH 29/33] small improvements for submitter (#727) * fix last indexed blockbum not load * refactor logs for feesum --- tx-submitter/entry.go | 4 ++++ tx-submitter/event/indexer.go | 4 ++++ tx-submitter/services/rollup.go | 6 +++--- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/tx-submitter/entry.go b/tx-submitter/entry.go index b44be5628..bc5675fcd 100644 --- a/tx-submitter/entry.go +++ b/tx-submitter/entry.go @@ -193,6 +193,10 @@ func Main() func(ctx *cli.Context) error { return fmt.Errorf("failed to connect leveldb: %w", err) } eventInfoStorage := event.NewEventInfoStorage(ldb) + err = eventInfoStorage.Load() + if err != nil { + return err + } eventIndexer := event.NewEventIndexer(l1Client, new(big.Int).SetUint64(cfg.L1StakingDeployedBlockNumber), filter, cfg.EventIndexStep, eventInfoStorage) // new rotator rotator := services.NewRotator(common.HexToAddress(cfg.L2SequencerAddress), common.HexToAddress(cfg.L2GovAddress), eventIndexer) diff --git a/tx-submitter/event/indexer.go b/tx-submitter/event/indexer.go index 0ba87ab5b..ab9058395 100644 --- a/tx-submitter/event/indexer.go +++ b/tx-submitter/event/indexer.go @@ -91,6 +91,9 @@ func (ei *EventIndexer) index(client *ethclient.Client, fromBlock, toBlock *big. endBlock := toBlock.Uint64() startBlock := endBlock - ei.indexStep lastProcessedBlock := fromBlock.Uint64() + if startBlock < lastProcessedBlock { + startBlock = lastProcessedBlock + } logFilter := ei.GetFilter() // Find the last unprocessed log @@ -123,6 +126,7 @@ func (ei *EventIndexer) index(client *ethclient.Client, fromBlock, toBlock *big. } } } + log.Info("backward indexing", "block_num", startBlock, "target_num", lastProcessedBlock) // update query range endBlock = startBlock if endBlock <= lastProcessedBlock+ei.indexStep { diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index 3e1de9af0..572c536e5 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -1347,7 +1347,7 @@ func (r *Rollup) InitFeeMetricsSum() error { return fmt.Errorf("get data from leveldb faild, key: %s, %w", rollupSumKey, err) } } - log.Info("rollupFeeSum: %f", rollupFeeSum) + log.Info(fmt.Sprintf("rollupFeeSum: %f", rollupFeeSum)) finalizeFeeSum, err := r.ldb.GetFloat(finalizeSumKey) if err != nil { log.Warn("read finalizeFeeSum from leveldb failed", "error", err) @@ -1360,7 +1360,7 @@ func (r *Rollup) InitFeeMetricsSum() error { return fmt.Errorf("get data from leveldb faild, key: %s, %w", finalizeSumKey, err) } } - log.Info("finalizeFeeSum: %f", finalizeFeeSum) + log.Info(fmt.Sprintf("finalizeFeeSum: %f", finalizeFeeSum)) collectedL1FeeSum, err := r.ldb.GetFloat(collectedL1FeeSumKey) if err != nil { log.Warn("read collectedL1FeeSum from leveldb failed", "error", err) @@ -1374,7 +1374,7 @@ func (r *Rollup) InitFeeMetricsSum() error { } } r.collectedL1FeeSum = collectedL1FeeSum - log.Info("collectedL1FeeSum: %f", collectedL1FeeSum) + log.Info(fmt.Sprintf("collectedL1FeeSum: %f", collectedL1FeeSum)) r.rollupFeeSum = rollupFeeSum r.finalizeFeeSum = finalizeFeeSum From 6c9a9737e7aa672c35067a2728e683c69b43bd56 Mon Sep 17 00:00:00 2001 From: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Date: Tue, 4 Mar 2025 12:11:42 +0800 Subject: [PATCH 30/33] Add ChainID to DynamicFeeTx constructor (#728) Co-authored-by: WorldDogs --- tx-submitter/services/rollup.go | 1 + 1 file changed, 1 insertion(+) diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index 572c536e5..39092b9d9 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -1238,6 +1238,7 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *ethtypes.Transaction) (*ethtypes.Tr switch tx.Type() { case ethtypes.DynamicFeeTxType: newTx = ethtypes.NewTx(ðtypes.DynamicFeeTx{ + ChainID: tx.ChainId(), To: tx.To(), Nonce: tx.Nonce(), GasFeeCap: gasFeeCap, From 0fadff38aebc6f263d91e51ff48c7108d3bb4226 Mon Sep 17 00:00:00 2001 From: FletcherMan Date: Tue, 15 Apr 2025 10:47:53 +0800 Subject: [PATCH 31/33] Optimize batch for reducing rollup cost (#743) Co-authored-by: corey Co-authored-by: vincent Co-authored-by: chengwenxi <22697326+chengwenxi@users.noreply.github.com> Co-authored-by: kukoomomo Co-authored-by: Kathy <22675649+anylots@users.noreply.github.com> Co-authored-by: WorldDogs Co-authored-by: WorldDogs <33647825+WorldDogs@users.noreply.github.com> Co-authored-by: ryanmorphl2 <163962984+ryanmorphl2@users.noreply.github.com> --- .dockerignore | 1 + .gitignore | 1 + .gitmodules | 2 +- Dockerfile.l2-node | 24 + Makefile | 5 +- MakefileEc2.mk | 16 + MakefileEks.mk | 96 +- bindings/bin/l2staking_deployed.hex | 2 +- bindings/bin/rollup_deployed.hex | 2 +- bindings/bindings/l2staking.go | 4 +- bindings/bindings/l2staking_more.go | 2 +- bindings/bindings/rollup.go | 19 +- bindings/bindings/rollup_more.go | 2 +- bindings/go.mod | 4 +- bindings/go.sum | 4 +- .../contracts/l1/rollup/IL1MessageQueue.sol | 2 +- .../IL1MessageQueueWithGasPriceOracle.sol | 2 +- contracts/contracts/l1/rollup/IRollup.sol | 6 +- contracts/contracts/l1/rollup/Rollup.sol | 136 +- .../contracts/l2/staking/IDistribute.sol | 2 +- contracts/contracts/l2/system/IMorphToken.sol | 2 +- contracts/contracts/l2/system/MorphToken.sol | 2 +- .../contracts/l2/system/WrappedEther.sol | 2 +- .../libraries/ICrossDomainMessenger.sol | 2 +- .../libraries/callbacks/IERC677Receiver.sol | 2 +- .../libraries/callbacks/IGatewayCallback.sol | 2 +- .../callbacks/IMessageDropCallback.sol | 2 +- .../libraries/codec/BatchCodecV0.sol | 108 - .../libraries/codec/BatchHeaderCodecV0.sol | 2 +- .../libraries/codec/BatchHeaderCodecV1.sol | 59 + .../contracts/libraries/common/IWhitelist.sol | 2 +- .../token/IMorphERC1155Extension.sol | 2 +- .../libraries/token/IMorphERC20Extension.sol | 2 +- .../libraries/token/IMorphERC721Extension.sol | 2 +- .../libraries/verifier/IRollupVerifier.sol | 2 +- .../libraries/verifier/ISP1Verifier.sol | 2 +- .../libraries/verifier/IZkEvmVerifier.sol | 2 +- .../libraries/verifier/PlonkVerifier.sol | 2 +- .../libraries/verifier/RollupVerifier.sol | 4 +- .../libraries/verifier/SP1VerifierPlonk.sol | 2 +- contracts/contracts/mock/TestUpgrade.sol | 2 +- contracts/contracts/test/Rollup.t.sol | 164 +- .../contracts/test/ZkEvmVerifierV1.t.sol | 5 +- contracts/deploy/013-DeployProxys.ts | 131 +- contracts/deploy/014-DeployImpls.ts | 124 + contracts/deploy/016-RollupInit.ts | 2 +- contracts/deploy/019-AdminTransfer.ts | 100 +- contracts/deploy/index.ts | 9 +- contracts/go.mod | 4 +- contracts/go.sum | 4 +- contracts/hardhat.config.ts | 1 + contracts/package.json | 3 +- contracts/src/deploy-config/holesky.ts | 2 +- contracts/src/deploy-config/l1.ts | 2 +- contracts/src/deploy-config/qanetl1.ts | 2 +- contracts/src/deploy-config/sepolia.ts | 2 +- contracts/src/deploy-config/testnetl1.ts | 2 +- contracts/tasks/deploy.ts | 30 +- contracts/tasks/verifier_upgrade.ts | 12 +- contracts/yarn.lock | 12 + gas-oracle/app/data/blob_with_context.data | 1 + gas-oracle/app/src/abi/Rollup.json | 21 +- gas-oracle/app/src/da_scalar/calculate.rs | 59 +- gas-oracle/app/src/da_scalar/l1_scalar.rs | 127 +- go-ethereum | 2 +- node/Makefile | 6 + node/core/batch.go | 223 +- node/core/batch_commit.go | 113 + node/core/batch_seal.go | 151 + node/db/keys.go | 10 +- node/db/store.go | 1 - node/derivation/batch_info.go | 109 +- node/derivation/config.go | 11 + node/derivation/derivation.go | 95 +- node/derivation/derivation_test.go | 21 +- node/flags/flags.go | 15 + node/go.mod | 4 +- node/go.sum | 8 +- node/types/batch.go | 143 +- node/types/batch_header.go | 215 + node/types/batch_test.go | 77 +- node/types/blob.go | 155 + node/types/consensus_message.go | 24 + node/types/retryable_client.go | 20 +- node/validator/config.go | 16 +- node/validator/validator.go | 18 +- ops/devnet-morph/devnet/__init__.py | 10 +- ops/devnet-morph/devnet/setup_nodes.py | 121 + ops/devnet-morph/main.py | 2 + ops/docker/Dockerfile.l2-node | 25 + ops/docker/Dockerfile.l2-node-1 | 2 +- ops/docker/Dockerfile.l2-node-4 | 2 +- ops/docker/Dockerfile.staking-oracle | 18 +- ops/docker/Dockerfile.submitter | 4 +- ops/docker/docker-compose-4nodes.yml | 52 +- ops/l2-genesis/cmd/genesis/cmd.go | 4 +- ops/l2-genesis/go.mod | 4 +- ops/l2-genesis/go.sum | 4 +- .../morph-chain-ops/genesis/layer_two_test.go | 2 +- ops/tools/batchparse/main.go | 3 +- ops/tools/go.mod | 4 +- ops/tools/go.sum | 8 +- ops/tools/multisend/main.go | 2 +- oracle/go.mod | 4 +- oracle/go.sum | 8 +- oracle/oracle/batch.go | 31 +- prover/Cargo.lock | 8 +- prover/Cargo.toml | 5 - prover/README.md | 2 +- prover/bin/challenge/src/abi/Rollup.json | 21 +- prover/bin/challenge/src/handler.rs | 80 +- prover/bin/challenge/src/main.rs | 4 +- prover/bin/challenge/src/metrics.rs | 2 - .../client/elf/riscv32im-succinct-zkvm-elf | Bin 5102404 -> 5214828 bytes prover/bin/host/src/lib.rs | 2 +- prover/bin/server/src/queue.rs | 2 +- prover/bin/shadow-prove/Cargo.lock | 356 +- prover/bin/shadow-prove/Cargo.toml | 2 +- prover/bin/shadow-prove/abi/Rollup.json | 21 +- prover/bin/shadow-prove/src/lib.rs | 3 +- prover/bin/shadow-prove/src/main.rs | 13 +- prover/bin/shadow-prove/src/shadow_prove.rs | 11 +- prover/bin/shadow-prove/src/shadow_rollup.rs | 182 +- prover/crates/core/src/batch.rs | 7 +- prover/crates/core/src/hardfork.rs | 19 +- .../crates/morph-executor/client/src/lib.rs | 22 +- .../client/src/verifier/blob_verifier.rs | 7 +- prover/crates/morph-executor/host/src/lib.rs | 22 +- .../testdata/morph203/morph203_0_traces.json | 13648 ++++++ .../testdata/morph203/morph203_1_traces.json | 9576 ++++ .../testdata/morph203/morph203_2_traces.json | 36264 ++++++++++++++++ .../testdata/morph203/morph203_3_traces.json | 24984 +++++++++++ .../client/elf/riscv32im-succinct-zkvm-elf | Bin 117204 -> 106780 bytes .../client/elf/riscv32im-succinct-zkvm-elf | Bin 238816 -> 225544 bytes .../client/elf/riscv32im-succinct-zkvm-elf | Bin 124308 -> 113776 bytes .../client/elf/riscv32im-succinct-zkvm-elf | Bin 443716 -> 430500 bytes tx-submitter/.gitignore | 61 +- tx-submitter/constants/methods.go | 8 + tx-submitter/db/db.go | 6 +- tx-submitter/db/interface.go | 10 + tx-submitter/event/indexer.go | 29 +- tx-submitter/event/storage.go | 73 +- tx-submitter/event/storage_test.go | 22 +- tx-submitter/go.mod | 4 +- tx-submitter/go.sum | 8 +- tx-submitter/iface/batch_fetcher.go | 8 + tx-submitter/iface/metrics.go | 7 + tx-submitter/iface/reorg_detector.go | 13 + tx-submitter/localpool/journal.go | 2 +- tx-submitter/metrics/metrics.go | 203 +- tx-submitter/mock/db.go | 55 + tx-submitter/mock/event_storage.go | 26 + tx-submitter/mock/journal.go | 34 + tx-submitter/mock/l1client.go | 240 + tx-submitter/mock/l1mock.go | 87 - tx-submitter/mock/l1staking.go | 62 + tx-submitter/mock/l2client.go | 214 + tx-submitter/mock/reorg_detector.go | 49 + tx-submitter/mock/rollup.go | 91 + tx-submitter/services/batch_fetcher.go | 39 + tx-submitter/services/pendingtx.go | 312 +- tx-submitter/services/pendingtx_test.go | 31 - tx-submitter/services/reorg.go | 121 + tx-submitter/services/rollup.go | 1168 +- tx-submitter/services/rollup_handle_test.go | 240 + tx-submitter/services/rollup_test.go | 383 +- tx-submitter/services/rotator.go | 28 +- tx-submitter/services/utils.go | 39 +- tx-submitter/types/batch_cache.go | 70 +- tx-submitter/types/batch_cache_test.go | 200 +- .../types/batch_cache_validation_test.go | 135 + tx-submitter/types/tx.go | 13 + tx-submitter/utils/methods.go | 12 + tx-submitter/utils/methods_test.go | 69 + tx-submitter/utils/utils.go | 84 +- tx-submitter/utils/utils_test.go | 31 +- 176 files changed, 90590 insertions(+), 2065 deletions(-) create mode 100644 .dockerignore create mode 100644 Dockerfile.l2-node delete mode 100644 contracts/contracts/libraries/codec/BatchCodecV0.sol create mode 100644 contracts/contracts/libraries/codec/BatchHeaderCodecV1.sol create mode 100644 gas-oracle/app/data/blob_with_context.data create mode 100644 node/core/batch_commit.go create mode 100644 node/core/batch_seal.go create mode 100644 node/types/batch_header.go create mode 100644 ops/devnet-morph/devnet/setup_nodes.py create mode 100644 ops/docker/Dockerfile.l2-node create mode 100644 prover/testdata/morph203/morph203_0_traces.json create mode 100644 prover/testdata/morph203/morph203_1_traces.json create mode 100644 prover/testdata/morph203/morph203_2_traces.json create mode 100644 prover/testdata/morph203/morph203_3_traces.json create mode 100644 tx-submitter/constants/methods.go create mode 100644 tx-submitter/db/interface.go create mode 100644 tx-submitter/iface/batch_fetcher.go create mode 100644 tx-submitter/iface/metrics.go create mode 100644 tx-submitter/iface/reorg_detector.go create mode 100644 tx-submitter/mock/db.go create mode 100644 tx-submitter/mock/event_storage.go create mode 100644 tx-submitter/mock/journal.go create mode 100644 tx-submitter/mock/l1client.go delete mode 100644 tx-submitter/mock/l1mock.go create mode 100644 tx-submitter/mock/l1staking.go create mode 100644 tx-submitter/mock/l2client.go create mode 100644 tx-submitter/mock/reorg_detector.go create mode 100644 tx-submitter/mock/rollup.go create mode 100644 tx-submitter/services/batch_fetcher.go delete mode 100644 tx-submitter/services/pendingtx_test.go create mode 100644 tx-submitter/services/reorg.go create mode 100644 tx-submitter/services/rollup_handle_test.go create mode 100644 tx-submitter/types/batch_cache_validation_test.go create mode 100644 tx-submitter/types/tx.go diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000..70e570883 --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +prover/ diff --git a/.gitignore b/.gitignore index 778eac070..d267e053d 100644 --- a/.gitignore +++ b/.gitignore @@ -15,6 +15,7 @@ contracts/yarn.lock build/bin cache out +ops/docker/.devnet ops/l2-genesis/.devnet ops/l2-genesis/.qanet ops/l2-genesis/.testnet diff --git a/.gitmodules b/.gitmodules index 8e8091378..e14290d97 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +1,4 @@ [submodule "go-ethereum"] path = go-ethereum url = https://github.com/morph-l2/go-ethereum.git -branch = release/2.0.x +branch = feature/block_context diff --git a/Dockerfile.l2-node b/Dockerfile.l2-node new file mode 100644 index 000000000..e335583d5 --- /dev/null +++ b/Dockerfile.l2-node @@ -0,0 +1,24 @@ +# Build Stage +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu as builder + +# Set working directory and copy necessary files +COPY . /morph +WORKDIR /morph/node + +# Run build command +RUN make build + +# Final Stage +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu + +# Update and install dependencies, then clean up unnecessary files +RUN apt-get -qq update \ + && apt-get -qq install -y --no-install-recommends ca-certificates \ + && rm -rf /var/lib/apt/lists/* + +# Copy the built binaries from the builder image to the final image +COPY --from=builder /morph/node/build/bin/tendermint /usr/local/bin/ +COPY --from=builder /morph/node/build/bin/morphnode /usr/local/bin/ + +# Set the default command +CMD ["morphnode", "--home", "/data"] \ No newline at end of file diff --git a/Makefile b/Makefile index 738a8cb43..59a959ce4 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ ################## update dependencies #################### -ETHEREUM_TARGET_VERSION := morph-v2.0.2 -TENDERMINT_TARGET_VERSION := v0.3.1 +ETHEREUM_TARGET_VERSION := v1.10.14-0.20241226065029-3b9465a03a8c +TENDERMINT_TARGET_VERSION := v0.3.2-0.20250115141431-c84dfe5c8533 ETHEREUM_MODULE_NAME := github.com/morph-l2/go-ethereum TENDERMINT_MODULE_NAME := github.com/morph-l2/tendermint @@ -143,6 +143,7 @@ devnet-down: devnet-clean-build: devnet-down docker volume ls --filter name=docker-* --format='{{.Name}}' | xargs -r docker volume rm rm -rf ops/l2-genesis/.devnet + rm -rf ops/docker/.devnet rm -rf ops/docker/consensus/beacondata ops/docker/consensus/validatordata ops/docker/consensus/genesis.ssz rm -rf ops/docker/execution/geth .PHONY: devnet-clean-build diff --git a/MakefileEc2.mk b/MakefileEc2.mk index 8fa53be8f..f52581388 100644 --- a/MakefileEc2.mk +++ b/MakefileEc2.mk @@ -37,3 +37,19 @@ build-bk-prod-morph-prod-testnet-to-morph-tx-submitter-holesky: cp tx-submitter/tx-submitter dist/ tar -czvf tx-submitter.tar.gz dist aws s3 cp tx-submitter.tar.gz s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/tx-submitter.tar.gz + + +build-bk-test-morph-test-qanet-to-morph-node-qanet: + if [ ! -d dist ]; then mkdir -p dist; fi + cd $(PWD)/node && make build + cp node/build/bin/morphnode dist/ + cp node/build/bin/tendermint dist/ + tar -czvf morph-node.tar.gz dist + aws s3 cp morph-node.tar.gz s3://morph-7637-morph-technical-department-qanet-data/morph-setup/morph-node.tar.gz + +build-bk-test-morph-test-qanet-to-morph-tx-submitter-qanet: + if [ ! -d dist ]; then mkdir -p dist; fi + env GO111MODULE=on CGO_LDFLAGS="-ldl" CGO_ENABLED=1 go build -v $(LDFLAGS) -o tx-submitter/tx-submitter ./tx-submitter/cmd + cp tx-submitter/tx-submitter dist/ + tar -czvf tx-submitter.tar.gz dist + aws s3 cp tx-submitter.tar.gz s3://morph-7637-morph-technical-department-qanet-data/morph-setup/tx-submitter.tar.gz diff --git a/MakefileEks.mk b/MakefileEks.mk index 573c724b0..0b935d10a 100644 --- a/MakefileEks.mk +++ b/MakefileEks.mk @@ -6,6 +6,7 @@ LDFLAGSSTRING +=-X main.GitVersion=$(GITVERSION) LDFLAGS := -ldflags "$(LDFLAGSSTRING)" # gas-oracle +# mainnet build-bk-prod-morph-prod-mainnet-to-morph-gas-price-oracle: if [ ! -d dist ]; then mkdir -p dist; fi cd $(PWD)/gas-oracle/app && cargo build --release @@ -18,7 +19,21 @@ start-bk-prod-morph-prod-mainnet-to-morph-gas-price-oracle: /data/secret-manager-wrapper ./app +# qanet +build-bk-test-morph-test-qanet-to-morph-gas-price-oracle-qanet: + if [ ! -d dist ]; then mkdir -p dist; fi + cd $(PWD)/gas-oracle/app && cargo build --release + cp gas-oracle/app/target/release/app dist/ + aws s3 cp s3://morph-7637-morph-technical-department-qanet-data/morph-setup/secret-manager-wrapper.tar.gz ./ + tar -xvzf secret-manager-wrapper.tar.gz + + +start-bk-test-morph-test-qanet-to-morph-gas-price-oracle-qanet: + /data/secret-manager-wrapper ./app + + # prover +# mainnet build-bk-prod-morph-prod-mainnet-to-morph-prover: if [ ! -d dist ]; then mkdir -p dist; fi cd $(PWD)/prover/bin/server && RUSTFLAGS="-C target-feature=+avx2,+avx512f" cargo build --release @@ -28,10 +43,10 @@ build-bk-prod-morph-prod-mainnet-to-morph-prover: tar -xvzf secret-manager-wrapper.tar.gz start-bk-prod-morph-prod-mainnet-to-morph-prover: - #if [ ! -d morph-prover-data/sp1-circuits ]; then aws s3 cp s3://morph-0582-morph-technical-department-mainnet-data/morph-setup/sp1-circuits morph-prover-data/; fi /data/secret-manager-wrapper ./prover-server # challenge-handler +# mainnet build-bk-prod-morph-prod-mainnet-to-morph-challenge-handler: if [ ! -d dist ]; then mkdir -p dist; fi cd $(PWD)/prover/bin/challenge && cargo build --release @@ -43,8 +58,8 @@ build-bk-prod-morph-prod-mainnet-to-morph-challenge-handler: start-bk-prod-morph-prod-mainnet-to-morph-challenge-handler: /data/secret-manager-wrapper ./challenge-handler - # shadow-proving +# mainnet build-bk-prod-morph-prod-mainnet-to-morph-shadow-proving: if [ ! -d dist ]; then mkdir -p dist; fi cd $(PWD)/prover/bin/shadow-prove && cargo build --release @@ -55,6 +70,8 @@ build-bk-prod-morph-prod-mainnet-to-morph-shadow-proving: start-bk-prod-morph-prod-mainnet-to-morph-shadow-proving: /data/secret-manager-wrapper ./shadow-proving +# staking-oracle +# mainnet build-bk-prod-morph-prod-mainnet-to-morph-staking-oracle: if [ ! -d dist ]; then mkdir -p dist; fi env GO111MODULE=on CGO_LDFLAGS="-ldl" CGO_ENABLED=1 go build -v $(LDFLAGS) -o oracle/staking-oracle ./oracle/cmd/staking-oracle @@ -63,4 +80,79 @@ build-bk-prod-morph-prod-mainnet-to-morph-staking-oracle: tar -xvzf secret-manager-wrapper.tar.gz start-bk-prod-morph-prod-mainnet-to-morph-staking-oracle: + /data/secret-manager-wrapper ./staking-oracle + +# qanet +build-bk-test-morph-test-qanet-to-morph-staking-oracle-qanet: + if [ ! -d dist ]; then mkdir -p dist; fi + env GO111MODULE=on CGO_LDFLAGS="-ldl" CGO_ENABLED=1 go build -v $(LDFLAGS) -o oracle/staking-oracle ./oracle/cmd/staking-oracle + cp oracle/staking-oracle dist/ + aws s3 cp s3://morph-7637-morph-technical-department-qanet-data/morph-setup/secret-manager-wrapper.tar.gz ./ + tar -xvzf secret-manager-wrapper.tar.gz + +start-bk-test-morph-test-qanet-to-morph-staking-oracle-qanet: + /data/secret-manager-wrapper ./staking-oracle + + +# gas-oracle +# testnet +build-bk-prod-morph-prod-testnet-to-morph-gas-price-oracle-holesky: + if [ ! -d dist ]; then mkdir -p dist; fi + cd $(PWD)/gas-oracle/app && cargo build --release + cp gas-oracle/app/target/release/app dist/ + aws s3 cp s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/secret-manager-wrapper.tar.gz ./ + tar -xvzf secret-manager-wrapper.tar.gz + + +start-bk-prod-morph-prod-testnet-to-morph-gas-price-oracle-holesky: + /data/secret-manager-wrapper ./app + +# prover +# testnet +build-bk-prod-morph-prod-testnet-to-morph-prover-holesky: + if [ ! -d dist ]; then mkdir -p dist; fi + cd $(PWD)/prover/bin/server && RUSTFLAGS="-C target-feature=+avx2,+avx512f" cargo build --release + cp prover/target/release/prover-server dist/ + cp -r prover/configs dist/ + aws s3 cp s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/secret-manager-wrapper.tar.gz ./ + tar -xvzf secret-manager-wrapper.tar.gz + +start-bk-prod-morph-prod-testnet-to-morph-prover-holesky: + /data/secret-manager-wrapper ./prover-server + +# challenge-handler +# testnet +build-bk-prod-morph-prod-testnet-to-morph-challenge-handler-holesky: + if [ ! -d dist ]; then mkdir -p dist; fi + cd $(PWD)/prover/bin/challenge && cargo build --release + cp prover/bin/challenge/target/release/challenge-handler dist/ + aws s3 cp s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/secret-manager-wrapper.tar.gz ./ + tar -xvzf secret-manager-wrapper.tar.gz + + +start-bk-prod-morph-prod-testnet-to-morph-challenge-handler-holesky: + /data/secret-manager-wrapper ./challenge-handler + +# shadow-proving +# testnet +build-bk-prod-morph-prod-testnet-to-morph-shadow-proving-holesky: + if [ ! -d dist ]; then mkdir -p dist; fi + cd $(PWD)/prover/bin/shadow-prove && cargo build --release + cp prover/bin/shadow-prove/target/release/shadow-proving dist/ + aws s3 cp s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/secret-manager-wrapper.tar.gz ./ + tar -xvzf secret-manager-wrapper.tar.gz + +start-bk-prod-morph-prod-testnet-to-morph-shadow-proving-holesky: + /data/secret-manager-wrapper ./shadow-proving + +# staking-oracle +# testnet +build-bk-prod-morph-prod-testnet-to-morph-staking-oracle-holesky: + if [ ! -d dist ]; then mkdir -p dist; fi + env GO111MODULE=on CGO_LDFLAGS="-ldl" CGO_ENABLED=1 go build -v $(LDFLAGS) -o oracle/staking-oracle ./oracle/cmd/staking-oracle + cp oracle/staking-oracle dist/ + aws s3 cp s3://morph-0582-morph-technical-department-testnet-data/testnet/holesky/morph-setup/secret-manager-wrapper.tar.gz ./ + tar -xvzf secret-manager-wrapper.tar.gz + +start-bk-prod-morph-prod-testnet-to-morph-staking-oracle-holesky: /data/secret-manager-wrapper ./staking-oracle \ No newline at end of file diff --git a/bindings/bin/l2staking_deployed.hex b/bindings/bin/l2staking_deployed.hex index 7eec59704..c99442dd3 100644 --- a/bindings/bin/l2staking_deployed.hex +++ b/bindings/bin/l2staking_deployed.hex @@ -1 +1 @@ -0x608060405234801561000f575f80fd5b50600436106102cc575f3560e01c8063715018a61161017c578063927ede2d116100dd578063d557714111610093578063f0261bc21161006e578063f0261bc21461068a578063f2fde38b14610693578063fad99f98146106a6575f80fd5b8063d55771411461063b578063e10911b114610662578063ed70b3431461066a575f80fd5b8063b5d2e0dc116100c3578063b5d2e0dc146105d1578063c64814dd146105f0578063d31d83d91461061a575f80fd5b8063927ede2d1461059d57806396ab994d146105c4575f80fd5b806384d7d1d4116101325780638e21d5fb116101185780638e21d5fb146105355780639168ae721461055c57806391bd43a41461057e575f80fd5b806384d7d1d4146105015780638da5cb5b14610524575f80fd5b8063766718081161016257806376671808146104b35780637b05afb5146104bb578063831cfb58146104da575f80fd5b8063715018a6146104a3578063746c8ae1146104ab575f80fd5b80633385ccc21161023157806340b5c837116101e7578063459598a2116101c2578063459598a21461047557806346cdc18a146104885780636d454d5114610490575f80fd5b806340b5c8371461044757806343352d611461045a578063439162b514610462575f80fd5b80633c323a1b116102175780633c323a1b146103d35780633cb747bf146103e65780633d9353fe14610420575f80fd5b80633385ccc2146103b75780633b802421146103ca575f80fd5b8063174e31c4116102865780632cc138be1161026c5780632cc138be146103855780632e787be31461038e57806330158eea14610397575f80fd5b8063174e31c41461035f57806319fac8fd14610372575f80fd5b80630eb573af116102b65780630eb573af1461030b5780630f3b70591461031e57806312a3e94714610356575f80fd5b806243b758146102d05780630be67fcc146102f6575b5f80fd5b6102e36102de366004614148565b6106ae565b6040519081526020015b60405180910390f35b6103096103043660046141ab565b6106d4565b005b6103096103193660046141ea565b610bf9565b61033161032c366004614201565b610d0c565b604080516001600160a01b0390941684526020840192909252908201526060016102ed565b6102e3609a5481565b61030961036d366004614201565b610d54565b6103096103803660046141ea565b610ecc565b6102e360985481565b6102e360995481565b6103aa6103a53660046141ab565b610fee565b6040516102ed919061428c565b6103096103c5366004614148565b611215565b6102e3609c5481565b6103096103e1366004614201565b611870565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020016102ed565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b6103096104553660046141ea565b611f0a565b6103aa61201d565b610309610470366004614332565b612239565b6104086104833660046141ea565b612775565b609d546102e3565b61030961049e3660046143a0565b61279d565b610309612a6e565b610309612a81565b6102e3612d71565b6102e36104c9366004614148565b60a06020525f908152604090205481565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b61051461050f366004614148565b612de5565b60405190151581526020016102ed565b6033546001600160a01b0316610408565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b61056f61056a366004614148565b612e0f565b6040516102ed939291906143d7565b6102e361058c366004614148565b60a16020525f908152604090205481565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b6097546105149060ff1681565b6102e36105df366004614148565b609e6020525f908152604090205481565b6102e36105fe366004614407565b60a360209081525f928352604080842090915290825290205481565b61062d61062836600461443e565b612ec1565b6040516102ed9291906144b3565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b61030961303b565b61067d610678366004614148565b6133d5565b6040516102ed91906144d3565b6102e3609b5481565b6103096106a1366004614148565b61346b565b6103096134f8565b6001600160a01b0381165f90815260a2602052604081206106ce906135a6565b92915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480156107bc57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa15801561078d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b19190614534565b6001600160a01b0316145b6108335760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f776564000000000000000000000000000000000000000060648201526084015b60405180910390fd5b5f805b82811015610bac57609b54609e5f8686858181106108565761085661454f565b905060200201602081019061086b9190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20541161089557600191505b5f609e5f8686858181106108ab576108ab61454f565b90506020020160208101906108c09190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115610b23575f6001609e5f8787868181106108fe576108fe61454f565b90506020020160208101906109139190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f205461093d91906145a9565b90505b609d5461094f906001906145a9565b811015610a2157609d6109638260016145bc565b815481106109735761097361454f565b5f91825260209091200154609d80546001600160a01b03909216918390811061099e5761099e61454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506001609e5f609d84815481106109e1576109e161454f565b5f9182526020808320909101546001600160a01b0316835282019290925260400181208054909190610a149084906145a9565b9091555050600101610940565b50609d805480610a3357610a336145cf565b5f8281526020812082015f1990810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055909101909155609e90858584818110610a8357610a8361454f565b9050602002016020810190610a989190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f205f90555f60a15f868685818110610ad057610ad061454f565b9050602002016020810190610ae59190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115610b23576001609c5f828254610b1d91906145a9565b90915550505b609f5f858584818110610b3857610b3861454f565b9050602002016020810190610b4d9190614148565b6001600160a01b0316815260208101919091526040015f90812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590610ba260028301826140ea565b5050600101610836565b507f3511bf213f9290ba907e91e12a43e8471251e1879580ae5509292a3514c23f618383604051610bde9291906145fc565b60405180910390a18015610bf457610bf46135af565b505050565b610c0161372f565b5f81118015610c1257506099548114155b610c845760405162461bcd60e51b815260206004820152602260248201527f696e76616c6964206e65772073657175656e63657220736574206d617820736960448201527f7a65000000000000000000000000000000000000000000000000000000000000606482015260840161082a565b609980549082905560408051828152602081018490527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a16097545f9060ff16610cd957609d54610cdd565b609c545b90505f6099548210610cf157609954610cf3565b815b9050609b548114610d0657610d066135af565b50505050565b60a4602052815f5260405f208181548110610d25575f80fd5b5f9182526020909120600390910201805460018201546002909201546001600160a01b03909116935090915083565b610d5c613789565b6001600160a01b038216610e12576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016635cf20c7b336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018490526044015f604051808303815f87803b158015610df7575f80fd5b505af1158015610e09573d5f803e3d5ffd5b50505050610ebe565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663996cba6883336040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03928316600482015291166024820152604481018490526064015f604051808303815f87803b158015610ea7575f80fd5b505af1158015610eb9573d5f803e3d5ffd5b505050505b610ec86001606555565b5050565b335f908152609e6020526040902054610f275760405162461bcd60e51b815260206004820152601360248201527f6f6e6c79207374616b657220616c6c6f77656400000000000000000000000000604482015260640161082a565b6014811115610f785760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420636f6d6d697373696f6e0000000000000000000000000000604482015260640161082a565b335f90815260a06020526040812082905560975460ff16610f99575f610fac565b610fa1612d71565b610fac9060016145bc565b604080518481526020810183905291925033917f6e500db30ce535d38852e318f333e9be41a3fec6c65d234ebb06203c896db9a5910160405180910390a25050565b60605f8267ffffffffffffffff81111561100a5761100a614649565b60405190808252806020026020018201604052801561105657816020015b60408051606080820183525f8083526020830152918101919091528152602001906001900390816110285790505b5090505f5b8381101561120d576040518060600160405280609f5f8888868181106110835761108361454f565b90506020020160208101906110989190614148565b6001600160a01b03908116825260208083019390935260409091015f908120549091168352910190609f908888868181106110d5576110d561454f565b90506020020160208101906110ea9190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f8888868181106111275761112761454f565b905060200201602081019061113c9190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20600201805461116990614676565b80601f016020809104026020016040519081016040528092919081815260200182805461119590614676565b80156111e05780601f106111b7576101008083540402835291602001916111e0565b820191905f5260205f20905b8154815290600101906020018083116111c357829003601f168201915b50505050508152508282815181106111fa576111fa61454f565b602090810291909101015260010161105b565b509392505050565b61121d613789565b6001600160a01b0381165f90815260a36020908152604080832033845290915290205461128c5760405162461bcd60e51b815260206004820152601660248201527f7374616b696e6720616d6f756e74206973207a65726f00000000000000000000604482015260640161082a565b6001600160a01b0381165f908152609e60205260408120546097549015919060ff166112b8575f6112cb565b6112c0612d71565b6112cb9060016145bc565b6097549091505f9060ff1680156112e0575082155b6112ea57816112f7565b609a546112f790836145bc565b604080516060810182526001600160a01b038781168083525f81815260a36020908152858220338084528183528784208054848901908152888a018b815283875260a486528a87208054600180820183559189528789208c5160039092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909b16178a558251908a015551600290980197909755908452908252829055925191815260a1909252928120805494955091936113b99084906145a9565b90915550506001600160a01b0385165f90815260a2602052604090206113df90336137e9565b506001600160a01b0385165f908152609e602052604090205484158015611408575060975460ff165b80156114155750609c5481105b1561168c576001600160a01b0386165f908152609e602052604081205461143e906001906145a9565b90505b6001609c5461145091906145a9565b81101561168a5760a15f609d838154811061146d5761146d61454f565b5f9182526020808320909101546001600160a01b031683528201929092526040018120549060a190609d6114a28560016145bc565b815481106114b2576114b261454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611682575f609d82815481106114f0576114f061454f565b5f918252602090912001546001600160a01b03169050609d6115138360016145bc565b815481106115235761152361454f565b5f91825260209091200154609d80546001600160a01b03909216918490811061154e5761154e61454f565b5f91825260209091200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039290921691909117905580609d61159c8460016145bc565b815481106115ac576115ac61454f565b5f91825260209091200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556115f78260016145bc565b609e5f609d858154811061160d5761160d61454f565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205561163c8260026145bc565b609e5f609d61164c8660016145bc565b8154811061165c5761165c61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b600101611441565b505b841580156116af57506001600160a01b0386165f90815260a16020526040902054155b156116cc576001609c5f8282546116c691906145a9565b90915550505b6001600160a01b038681165f81815260a160205260408082205481517f7f683ee30000000000000000000000000000000000000000000000000000000081526004810194909452336024850152604484018990526064840152517f000000000000000000000000000000000000000000000000000000000000000090931692637f683ee392608480820193929182900301818387803b15801561176d575f80fd5b505af115801561177f573d5f803e3d5ffd5b5050505061178a3390565b6001600160a01b0316866001600160a01b03167f92039db29d8c0a1aa1433fe109c69488c8c5e51b23c9de7d303ad80c1fef778c846020015187876040516117e5939291909283526020830191909152604082015260600190565b60405180910390a3841580156117fd575060975460ff165b801561180b5750609b548111155b80156118515750609b546001600160a01b0387165f908152609e602052604090205411806118515750609c546001600160a01b0387165f908152609e6020526040902054115b1561185e5761185e6135af565b505050505061186d6001606555565b50565b6001600160a01b0382165f908152609e602052604090205482906118d65760405162461bcd60e51b815260206004820152600a60248201527f6e6f74207374616b657200000000000000000000000000000000000000000000604482015260640161082a565b6118de613789565b5f821161192d5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964207374616b6520616d6f756e74000000000000000000000000604482015260640161082a565b6119373384613804565b156119845760405162461bcd60e51b815260206004820152601660248201527f756e64656c65676174696f6e20756e636c61696d656400000000000000000000604482015260640161082a565b6001600160a01b0383165f90815260a360209081526040808320338452909152902054611a02576119b5338461388d565b15611a025760405162461bcd60e51b815260206004820152601060248201527f72657761726420756e636c61696d656400000000000000000000000000000000604482015260640161082a565b6001600160a01b0383165f90815260a1602052604081208054849290611a299084906145bc565b90915550506001600160a01b0383165f90815260a36020908152604080832033845290915281208054849290611a609084906145bc565b90915550506001600160a01b0383165f90815260a260205260409020611a869033613942565b506001600160a01b0383165f90815260a16020526040902054829003611abe576001609c5f828254611ab891906145bc565b90915550505b6001600160a01b0383165f908152609e602052604090205460975460ff168015611ae85750600181115b15611d39575f611af96001836145a9565b90505b8015611d375760a15f609d611b126001856145a9565b81548110611b2257611b2261454f565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d8481548110611b7357611b7361454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611d25575f609d611bab6001846145a9565b81548110611bbb57611bbb61454f565b5f91825260209091200154609d80546001600160a01b0390921692509083908110611be857611be861454f565b5f918252602090912001546001600160a01b0316609d611c096001856145a9565b81548110611c1957611c1961454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d8381548110611c5857611c5861454f565b5f918252602082200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0393909316929092179091558290609e90609d611caa6001856145a9565b81548110611cba57611cba61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055611ce98260016145bc565b609e5f609d8581548110611cff57611cff61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b80611d2f816146c1565b915050611afc565b505b6097545f9060ff16611d4b575f611d5e565b611d53612d71565b611d5e9060016145bc565b6001600160a01b0386165f81815260a36020908152604080832033808552908352928190205481519081529182018990528181018590525193945090927fc4ad67bad2c1f682946a406d840f1b273f5cd5a53fcc1a03d078d92bfa2e07d09181900360600190a36001600160a01b038581165f81815260a360209081526040808320338085528184528285205486865260a18552838620548287529290945282517fb809af0f000000000000000000000000000000000000000000000000000000008152600481019690965260248601526044850187905260648501839052608485015290881460a4840152517f00000000000000000000000000000000000000000000000000000000000000009093169263b809af0f9260c480820193929182900301818387803b158015611e92575f80fd5b505af1158015611ea4573d5f803e3d5ffd5b50505050611eb9611eb23390565b3086613956565b60975460ff168015611ecc5750609b5482115b8015611ef157506099546001600160a01b0386165f908152609e602052604090205411155b15611efe57611efe6135af565b5050610bf46001606555565b611f1261372f565b60975460ff1615611f655760405162461bcd60e51b815260206004820152601660248201527f72657761726420616c7265616479207374617274656400000000000000000000604482015260640161082a565b4281118015611f7e5750611f7c6201518082614703565b155b8015611f8c57506098548114155b611fd85760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d6500000000000000604482015260640161082a565b609880549082905560408051828152602081018490527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a15050565b609d546060905f9067ffffffffffffffff81111561203d5761203d614649565b60405190808252806020026020018201604052801561208957816020015b60408051606080820183525f80835260208301529181019190915281526020019060019003908161205b5790505b5090505f5b609d54811015612233576040518060600160405280609f5f609d85815481106120b9576120b961454f565b5f9182526020808320909101546001600160a01b0390811684528382019490945260409092018120549092168352609d80549390910192609f929190869081106121055761210561454f565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f609d858154811061215e5761215e61454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020600201805461218f90614676565b80601f01602080910402602001604051908101604052809291908181526020018280546121bb90614676565b80156122065780601f106121dd57610100808354040283529160200191612206565b820191905f5260205f20905b8154815290600101906020018083116121e957829003601f168201915b50505050508152508282815181106122205761222061454f565b602090810291909101015260010161208e565b50919050565b5f54610100900460ff161580801561225757505f54600160ff909116105b806122705750303b15801561227057505f5460ff166001145b6122e25760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161082a565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561233e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0387166123945760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e657220616464726573730000000000000000000000604482015260640161082a565b5f86116124095760405162461bcd60e51b815260206004820152602260248201527f73657175656e6365727353697a65206d7573742067726561746572207468616e60448201527f2030000000000000000000000000000000000000000000000000000000000000606482015260840161082a565b5f85116124585760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420756e64656c65676174654c6f636b45706f63687300000000604482015260640161082a565b4284118015612471575061246f6201518085614703565b155b6124bd5760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d6500000000000000604482015260640161082a565b8161250a5760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420696e697469616c207374616b657273000000000000000000604482015260640161082a565b61251387613bc3565b61251b613c2c565b6099869055609a8590556098849055609b8290555f5b609b548110156126975783838281811061254d5761254d61454f565b905060200281019061255f9190614716565b609f5f8686858181106125745761257461454f565b90506020028101906125869190614716565b612594906020810190614148565b6001600160a01b0316815260208101919091526040015f206125b682826147f7565b905050609d8484838181106125cd576125cd61454f565b90506020028101906125df9190614716565b6125ed906020810190614148565b8154600180820184555f93845260209093200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556126419082906145bc565b609e5f8686858181106126565761265661454f565b90506020028101906126689190614716565b612676906020810190614148565b6001600160a01b0316815260208101919091526040015f2055600101612531565b50604080515f8152602081018890527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a1604080515f8152602081018690527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a1801561276c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b609d8181548110612784575f80fd5b5f918252602090912001546001600160a01b0316905081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561288557507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612856573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061287a9190614534565b6001600160a01b0316145b6128f75760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f7765640000000000000000000000000000000000000000606482015260840161082a565b609e5f6129076020840184614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20545f036129b457609d61293c6020830183614148565b81546001810183555f928352602080842090910180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039390931692909217909155609d5491609e9161299a90850185614148565b6001600160a01b0316815260208101919091526040015f20555b80609f5f6129c56020840184614148565b6001600160a01b0316815260208101919091526040015f206129e782826147f7565b506129f790506020820182614148565b6001600160a01b03167f058ecb29c230cd5df283c89e996187ed521393fe4546cd1b097921c4b2de293d6020830135612a336040850185614752565b604051612a4293929190614969565b60405180910390a260975460ff16158015612a615750609954609d5411155b1561186d5761186d6135af565b612a7661372f565b612a7f5f613bc3565b565b612a8961372f565b609854421015612b005760405162461bcd60e51b8152602060048201526024808201527f63616e2774207374617274206265666f7265207265776172642073746172742060448201527f74696d6500000000000000000000000000000000000000000000000000000000606482015260840161082a565b5f609c5411612b515760405162461bcd60e51b815260206004820152600e60248201527f6e6f6e652063616e646964617465000000000000000000000000000000000000604482015260640161082a565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091555b609d54811015612d0e575f5b81811015612d055760a15f609d8381548110612baa57612baa61454f565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d8581548110612bfb57612bfb61454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115612cfd575f609d8281548110612c3957612c3961454f565b5f91825260209091200154609d80546001600160a01b0390921692509084908110612c6657612c6661454f565b5f91825260209091200154609d80546001600160a01b039092169184908110612c9157612c9161454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d8481548110612cd057612cd061454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550505b600101612b8c565b50600101612b80565b505f5b609d54811015612d6857612d268160016145bc565b609e5f609d8481548110612d3c57612d3c61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055600101612d11565b50612a7f6135af565b5f609854421015612dc45760405162461bcd60e51b815260206004820152601960248201527f726577617264206973206e6f7420737461727465642079657400000000000000604482015260640161082a565b6201518060985442612dd691906145a9565b612de091906149bc565b905090565b6001600160a01b0381165f90815260a36020908152604080832033845290915281205415156106ce565b609f6020525f90815260409020805460018201546002830180546001600160a01b03909316939192612e4090614676565b80601f0160208091040260200160405190810160405280929190818152602001828054612e6c90614676565b8015612eb75780601f10612e8e57610100808354040283529160200191612eb7565b820191905f5260205f20905b815481529060010190602001808311612e9a57829003601f168201915b5050505050905083565b5f60605f8411612f135760405162461bcd60e51b815260206004820152601160248201527f696e76616c696420706167652073697a65000000000000000000000000000000604482015260640161082a565b6001600160a01b0385165f90815260a260205260409020612f33906135a6565b91508367ffffffffffffffff811115612f4e57612f4e614649565b604051908082528060200260200182016040528015612f77578160200160208202803683370190505b5090505f612f8584866149cf565b90505f6001612f9486826145bc565b612f9e90886149cf565b612fa891906145a9565b9050612fb56001856145a9565b811115612fca57612fc76001856145a9565b90505b815b818111613030576001600160a01b0388165f90815260a260205260409020612ff49082613cb0565b8482815181106130065761300661454f565b6001600160a01b039092166020928302919091019091015280613028816149e6565b915050612fcc565b505050935093915050565b613043613789565b335f90815260a46020526040812054815b8181101561336f5760975460ff1615806130a45750613071612d71565b335f90815260a4602052604090208054839081106130915761309161454f565b905f5260205f2090600302016002015411155b1561335d57335f90815260a4602052604090208054829081106130c9576130c961454f565b905f5260205f20906003020160010154836130e491906145bc565b335f90815260a46020526040812080549295509091839081106131095761310961454f565b5f91825260208220600390910201546001600160a01b0316915060a48161312d3390565b6001600160a01b03166001600160a01b031681526020019081526020015f20838154811061315d5761315d61454f565b905f5260205f2090600302016002015490505f60a45f61317a3390565b6001600160a01b03166001600160a01b031681526020019081526020015f2084815481106131aa576131aa61454f565b905f5260205f2090600302016001015490506001856131c991906145a9565b84101561329957335f90815260a4602052604090206131e96001876145a9565b815481106131f9576131f961454f565b905f5260205f20906003020160a45f61320f3390565b6001600160a01b03166001600160a01b031681526020019081526020015f20858154811061323f5761323f61454f565b5f9182526020909120825460039092020180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03909216919091178155600180830154908201556002918201549101555b335f90815260a4602052604090208054806132b6576132b66145cf565b5f8281526020812060035f199093019283020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001818101839055600290910191909155915561330c90866145a9565b604080518481526020810184905291965033916001600160a01b038616917f921046659ea3b3b3f8e8fefd2bece3121b2d929ead94c696a75beedee477fdb6910160405180910390a3505050613054565b6133688160016145bc565b9050613054565b505f82116133bf5760405162461bcd60e51b815260206004820152601760248201527f6e6f204d6f72706820746f6b656e20746f20636c61696d000000000000000000604482015260640161082a565b6133c93383613cbb565b5050612a7f6001606555565b6001600160a01b0381165f90815260a460209081526040808320805482518185028101850190935280835260609492939192909184015b82821015613460575f848152602090819020604080516060810182526003860290920180546001600160a01b031683526001808201548486015260029091015491830191909152908352909201910161340c565b505050509050919050565b61347361372f565b6001600160a01b0381166134ef5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161082a565b61186d81613bc3565b613500613789565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ac2ac640336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b158015613586575f80fd5b505af1158015613598573d5f803e3d5ffd5b50505050612a7f6001606555565b5f6106ce825490565b60995460975460ff16156135d357609954609c5410156135ce5750609c545b6135e4565b609954609d5410156135e45750609d545b5f8167ffffffffffffffff8111156135fe576135fe614649565b604051908082528060200260200182016040528015613627578160200160208202803683370190505b5090505f5b8281101561369457609d81815481106136475761364761454f565b905f5260205f20015f9054906101000a90046001600160a01b03168282815181106136745761367461454f565b6001600160a01b039092166020928302919091019091015260010161362c565b506040517f9b8201a40000000000000000000000000000000000000000000000000000000081526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639b8201a4906136fa9084906004016149fe565b5f604051808303815f87803b158015613711575f80fd5b505af1158015613723573d5f803e3d5ffd5b50509151609b55505050565b6033546001600160a01b03163314612a7f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161082a565b6002606554036137db5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161082a565b6002606555565b6001606555565b5f6137fd836001600160a01b038416613f19565b9392505050565b5f805b6001600160a01b0384165f90815260a46020526040902054811015613884576001600160a01b038481165f90815260a460205260409020805491851691839081106138545761385461454f565b5f9182526020909120600390910201546001600160a01b03160361387c5760019150506106ce565b600101613807565b505f9392505050565b6040517fde6ac9330000000000000000000000000000000000000000000000000000000081526001600160a01b03838116600483015282811660248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063de6ac93390604401602060405180830381865afa158015613916573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061393a9190614a10565b159392505050565b5f6137fd836001600160a01b038416613ffc565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156139d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139fb9190614a2f565b6040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b0386811660048301528581166024830152604482018590529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303815f875af1158015613a8d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ab19190614a10565b506040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613b33573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613b579190614a2f565b90505f83118015613b70575082613b6e83836145a9565b145b613bbc5760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c65640000000000604482015260640161082a565b5050505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613ca85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161082a565b612a7f614048565b5f6137fd83836140c4565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613d3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d609190614a2f565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af1158015613dea573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e0e9190614a10565b506040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613e90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613eb49190614a2f565b90505f83118015613ecd575082613ecb83836145a9565b145b610d065760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c65640000000000604482015260640161082a565b5f8181526001830160205260408120548015613ff3575f613f3b6001836145a9565b85549091505f90613f4e906001906145a9565b9050818114613fad575f865f018281548110613f6c57613f6c61454f565b905f5260205f200154905080875f018481548110613f8c57613f8c61454f565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080613fbe57613fbe6145cf565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f9055600193505050506106ce565b5f9150506106ce565b5f81815260018301602052604081205461404157508154600181810184555f8481526020808220909301849055845484825282860190935260409020919091556106ce565b505f6106ce565b5f54610100900460ff166137e25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161082a565b5f825f0182815481106140d9576140d961454f565b905f5260205f200154905092915050565b5080546140f690614676565b5f825580601f10614105575050565b601f0160209004905f5260205f209081019061186d91905b80821115614130575f815560010161411d565b5090565b6001600160a01b038116811461186d575f80fd5b5f60208284031215614158575f80fd5b81356137fd81614134565b5f8083601f840112614173575f80fd5b50813567ffffffffffffffff81111561418a575f80fd5b6020830191508360208260051b85010111156141a4575f80fd5b9250929050565b5f80602083850312156141bc575f80fd5b823567ffffffffffffffff8111156141d2575f80fd5b6141de85828601614163565b90969095509350505050565b5f602082840312156141fa575f80fd5b5035919050565b5f8060408385031215614212575f80fd5b823561421d81614134565b946020939093013593505050565b5f81518084525f5b8181101561424f57602081850181015186830182015201614233565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b83811015614324578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0018552815180516001600160a01b03168452878101518885015286015160608785018190526143108186018361422b565b9689019694505050908601906001016142b3565b509098975050505050505050565b5f805f805f8060a08789031215614347575f80fd5b863561435281614134565b9550602087013594506040870135935060608701359250608087013567ffffffffffffffff811115614382575f80fd5b61438e89828a01614163565b979a9699509497509295939492505050565b5f602082840312156143b0575f80fd5b813567ffffffffffffffff8111156143c6575f80fd5b8201606081850312156137fd575f80fd5b6001600160a01b0384168152826020820152606060408201525f6143fe606083018461422b565b95945050505050565b5f8060408385031215614418575f80fd5b823561442381614134565b9150602083013561443381614134565b809150509250929050565b5f805f60608486031215614450575f80fd5b833561445b81614134565b95602085013595506040909401359392505050565b5f815180845260208085019450602084015f5b838110156144a85781516001600160a01b031687529582019590820190600101614483565b509495945050505050565b828152604060208201525f6144cb6040830184614470565b949350505050565b602080825282518282018190525f919060409081850190868401855b8281101561452757815180516001600160a01b03168552868101518786015285015185850152606090930192908501906001016144ef565b5091979650505050505050565b5f60208284031215614544575f80fd5b81516137fd81614134565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103818111156106ce576106ce61457c565b808201808211156106ce576106ce61457c565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208082528181018390525f908460408401835b8681101561463e57823561462381614134565b6001600160a01b031682529183019190830190600101614610565b509695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600181811c9082168061468a57607f821691505b602082108103612233577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f816146cf576146cf61457c565b505f190190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f82614711576147116146d6565b500690565b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112614748575f80fd5b9190910192915050565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614785575f80fd5b83018035915067ffffffffffffffff82111561479f575f80fd5b6020019150368190038213156141a4575f80fd5b601f821115610bf457805f5260205f20601f840160051c810160208510156147d85750805b601f840160051c820191505b81811015613bbc575f81556001016147e4565b813561480281614134565b6001600160a01b0381167fffffffffffffffffffffffff000000000000000000000000000000000000000083541617825550600160208084013560018401556002830160408501357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1863603018112614879575f80fd5b8501803567ffffffffffffffff811115614891575f80fd5b80360384830113156148a1575f80fd5b6148b5816148af8554614676565b856147b3565b5f601f8211600181146148e8575f83156148d157508382018601355b5f19600385901b1c1916600184901b17855561495e565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b8281101561493457868501890135825593880193908901908801614915565b5084821015614952575f1960f88660031b161c198885880101351681555b505060018360011b0185555b505050505050505050565b83815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b5f826149ca576149ca6146d6565b500490565b80820281158282048414176106ce576106ce61457c565b5f5f1982036149f7576149f761457c565b5060010190565b602081525f6137fd6020830184614470565b5f60208284031215614a20575f80fd5b815180151581146137fd575f80fd5b5f60208284031215614a3f575f80fd5b505191905056fea164736f6c6343000818000a +0x608060405234801561000f575f80fd5b50600436106102ec575f3560e01c8063746c8ae111610192578063affed0e0116100e8578063e10911b111610093578063f2fde38b1161006e578063f2fde38b146106cf578063fad99f98146106e2578063fc6facc6146106ea575f80fd5b8063e10911b11461069e578063ed70b343146106a6578063f0261bc2146106c6575f80fd5b8063cce6cf9f116100c3578063cce6cf9f14610643578063d31d83d914610656578063d557714114610677575f80fd5b8063affed0e0146105f1578063b5d2e0dc146105fa578063c64814dd14610619575f80fd5b80638da5cb5b1161014857806391bd43a41161012357806391bd43a41461059e578063927ede2d146105bd57806396ab994d146105e4575f80fd5b80638da5cb5b146105445780638e21d5fb146105555780639168ae721461057c575f80fd5b80637b05afb5116101785780637b05afb5146104db578063831cfb58146104fa57806384d7d1d414610521575f80fd5b8063746c8ae1146104cb57806376671808146104d3575f80fd5b80633b8024211161024757806343352d61116101fd57806346cdc18a116101d857806346cdc18a146104a85780637046529b146104b0578063715018a6146104c3575f80fd5b806343352d611461047a578063439162b514610482578063459598a214610495575f80fd5b80633cb747bf1161022d5780633cb747bf146104065780633d9353fe1461044057806340b5c83714610467575f80fd5b80633b802421146103ea5780633c323a1b146103f3575f80fd5b8063174e31c4116102a75780632e787be3116102825780632e787be3146103ae57806330158eea146103b75780633385ccc2146103d7575f80fd5b8063174e31c41461037f57806319fac8fd146103925780632cc138be146103a5575f80fd5b80630eb573af116102d75780630eb573af1461032b5780630f3b70591461033e57806312a3e94714610376575f80fd5b806243b758146102f05780629c6f0c14610316575b5f80fd5b6103036102fe36600461465b565b6106fd565b6040519081526020015b60405180910390f35b610329610324366004614676565b610723565b005b6103296103393660046146c0565b610901565b61035161034c3660046146d7565b610a14565b604080516001600160a01b03909416845260208401929092529082015260600161030d565b610303609a5481565b61032961038d3660046146d7565b610a5c565b6103296103a03660046146c0565b610bd4565b61030360985481565b61030360995481565b6103ca6103c5366004614749565b610cf6565b60405161030d91906147e9565b6103296103e536600461465b565b610f1d565b610303609c5481565b6103296104013660046146d7565b611557565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b03909116815260200161030d565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b6103296104753660046146c0565b611be6565b6103ca611cf9565b61032961049036600461488f565b611f15565b6104286104a33660046146c0565b612446565b609d54610303565b6103296104be366004614676565b61246e565b6103296125c8565b6103296125db565b6103036128cb565b6103036104e936600461465b565b60a06020525f908152604090205481565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b61053461052f36600461465b565b61293f565b604051901515815260200161030d565b6033546001600160a01b0316610428565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b61058f61058a36600461465b565b612969565b60405161030d939291906148fd565b6103036105ac36600461465b565b60a16020525f908152604090205481565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b6097546105349060ff1681565b61030360a55481565b61030361060836600461465b565b609e6020525f908152604090205481565b61030361062736600461492d565b60a360209081525f928352604080842090915290825290205481565b610329610651366004614959565b612a1b565b6106696106643660046149a1565b612f87565b60405161030d929190614a16565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b610329613115565b6106b96106b436600461465b565b613499565b60405161030d9190614a36565b610303609b5481565b6103296106dd36600461465b565b61352f565b6103296135bc565b6103296106f8366004614959565b61366a565b6001600160a01b0381165f90815260a26020526040812061071d90613a35565b92915050565b61072b613a3e565b8160a55481146107825760405162461bcd60e51b815260206004820152600d60248201527f696e76616c6964206e6f6e63650000000000000000000000000000000000000060448201526064015b60405180910390fd5b61078d836001614ac4565b60a555609e5f6107a0602085018561465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20545f0361084257609d6107d5602084018461465b565b81546001810183555f9283526020808420909101805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039390931692909217909155609d5491609e916108289086018661465b565b6001600160a01b0316815260208101919091526040015f20555b81609f5f610853602084018461465b565b6001600160a01b0316815260208101919091526040015f206108758282614bf4565b506108859050602083018361465b565b6001600160a01b03167f058ecb29c230cd5df283c89e996187ed521393fe4546cd1b097921c4b2de293d60208401356108c16040860186614ad7565b6040516108d093929190614d5b565b60405180910390a260975460ff161580156108ef5750609954609d5411155b156108fc576108fc613a98565b505050565b610909613a3e565b5f8111801561091a57506099548114155b61098c5760405162461bcd60e51b815260206004820152602260248201527f696e76616c6964206e65772073657175656e63657220736574206d617820736960448201527f7a650000000000000000000000000000000000000000000000000000000000006064820152608401610779565b609980549082905560408051828152602081018490527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a16097545f9060ff166109e157609d546109e5565b609c545b90505f60995482106109f9576099546109fb565b815b9050609b548114610a0e57610a0e613a98565b50505050565b60a4602052815f5260405f208181548110610a2d575f80fd5b5f9182526020909120600390910201805460018201546002909201546001600160a01b03909116935090915083565b610a64613c18565b6001600160a01b038216610b1a576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016635cf20c7b336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018490526044015f604051808303815f87803b158015610aff575f80fd5b505af1158015610b11573d5f803e3d5ffd5b50505050610bc6565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663996cba6883336040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03928316600482015291166024820152604481018490526064015f604051808303815f87803b158015610baf575f80fd5b505af1158015610bc1573d5f803e3d5ffd5b505050505b610bd06001606555565b5050565b335f908152609e6020526040902054610c2f5760405162461bcd60e51b815260206004820152601360248201527f6f6e6c79207374616b657220616c6c6f776564000000000000000000000000006044820152606401610779565b6014811115610c805760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420636f6d6d697373696f6e00000000000000000000000000006044820152606401610779565b335f90815260a06020526040812082905560975460ff16610ca1575f610cb4565b610ca96128cb565b610cb4906001614ac4565b604080518481526020810183905291925033917f6e500db30ce535d38852e318f333e9be41a3fec6c65d234ebb06203c896db9a5910160405180910390a25050565b60605f8267ffffffffffffffff811115610d1257610d12614b38565b604051908082528060200260200182016040528015610d5e57816020015b60408051606080820183525f808352602083015291810191909152815260200190600190039081610d305790505b5090505f5b83811015610f15576040518060600160405280609f5f888886818110610d8b57610d8b614dae565b9050602002016020810190610da0919061465b565b6001600160a01b03908116825260208083019390935260409091015f908120549091168352910190609f90888886818110610ddd57610ddd614dae565b9050602002016020810190610df2919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f888886818110610e2f57610e2f614dae565b9050602002016020810190610e44919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f206002018054610e7190614b65565b80601f0160208091040260200160405190810160405280929190818152602001828054610e9d90614b65565b8015610ee85780601f10610ebf57610100808354040283529160200191610ee8565b820191905f5260205f20905b815481529060010190602001808311610ecb57829003601f168201915b5050505050815250828281518110610f0257610f02614dae565b6020908102919091010152600101610d63565b509392505050565b610f25613c18565b6001600160a01b0381165f90815260a360209081526040808320338452909152902054610f945760405162461bcd60e51b815260206004820152601660248201527f7374616b696e6720616d6f756e74206973207a65726f000000000000000000006044820152606401610779565b6001600160a01b0381165f908152609e60205260408120546097549015919060ff16610fc0575f610fd3565b610fc86128cb565b610fd3906001614ac4565b6097549091505f9060ff168015610fe8575082155b610ff25781610fff565b609a54610fff9083614ac4565b604080516060810182526001600160a01b038781168083525f81815260a36020908152858220338084528183528784208054848901908152888a018b815283875260a486528a87208054600180820183559189528789208c51600390920201805473ffffffffffffffffffffffffffffffffffffffff191691909b16178a558251908a015551600290980197909755908452908252829055925191815260a1909252928120805494955091936110b6908490614ddb565b90915550506001600160a01b0385165f90815260a2602052604090206110dc9033613c78565b506001600160a01b0385165f908152609e602052604090205484158015611105575060975460ff165b80156111125750609c5481105b15611373576001600160a01b0386165f908152609e602052604081205461113b90600190614ddb565b90505b6001609c5461114d9190614ddb565b8110156113715760a15f609d838154811061116a5761116a614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040018120549060a190609d61119f856001614ac4565b815481106111af576111af614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611369575f609d82815481106111ed576111ed614dae565b5f918252602090912001546001600160a01b03169050609d611210836001614ac4565b8154811061122057611220614dae565b5f91825260209091200154609d80546001600160a01b03909216918490811061124b5761124b614dae565b5f918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039290921691909117905580609d61128e846001614ac4565b8154811061129e5761129e614dae565b5f918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03929092169190911790556112de826001614ac4565b609e5f609d85815481106112f4576112f4614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055611323826002614ac4565b609e5f609d611333866001614ac4565b8154811061134357611343614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b60010161113e565b505b8415801561139657506001600160a01b0386165f90815260a16020526040902054155b156113b3576001609c5f8282546113ad9190614ddb565b90915550505b6001600160a01b038681165f81815260a160205260408082205481517f7f683ee30000000000000000000000000000000000000000000000000000000081526004810194909452336024850152604484018990526064840152517f000000000000000000000000000000000000000000000000000000000000000090931692637f683ee392608480820193929182900301818387803b158015611454575f80fd5b505af1158015611466573d5f803e3d5ffd5b505050506114713390565b6001600160a01b0316866001600160a01b03167f92039db29d8c0a1aa1433fe109c69488c8c5e51b23c9de7d303ad80c1fef778c846020015187876040516114cc939291909283526020830191909152604082015260600190565b60405180910390a3841580156114e4575060975460ff165b80156114f25750609b548111155b80156115385750609b546001600160a01b0387165f908152609e602052604090205411806115385750609c546001600160a01b0387165f908152609e6020526040902054115b1561154557611545613a98565b50505050506115546001606555565b50565b6001600160a01b0382165f908152609e602052604090205482906115bd5760405162461bcd60e51b815260206004820152600a60248201527f6e6f74207374616b6572000000000000000000000000000000000000000000006044820152606401610779565b6115c5613c18565b5f82116116145760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964207374616b6520616d6f756e740000000000000000000000006044820152606401610779565b61161e3384613c93565b1561166b5760405162461bcd60e51b815260206004820152601660248201527f756e64656c65676174696f6e20756e636c61696d6564000000000000000000006044820152606401610779565b6001600160a01b0383165f90815260a3602090815260408083203384529091529020546116e95761169c3384613d1c565b156116e95760405162461bcd60e51b815260206004820152601060248201527f72657761726420756e636c61696d6564000000000000000000000000000000006044820152606401610779565b6001600160a01b0383165f90815260a1602052604081208054849290611710908490614ac4565b90915550506001600160a01b0383165f90815260a36020908152604080832033845290915281208054849290611747908490614ac4565b90915550506001600160a01b0383165f90815260a26020526040902061176d9033613dd1565b506001600160a01b0383165f90815260a160205260409020548290036117a5576001609c5f82825461179f9190614ac4565b90915550505b6001600160a01b0383165f908152609e602052604090205460975460ff1680156117cf5750600181115b15611a15575f6117e0600183614ddb565b90505b8015611a135760a15f609d6117f9600185614ddb565b8154811061180957611809614dae565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d848154811061185a5761185a614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611a01575f609d611892600184614ddb565b815481106118a2576118a2614dae565b5f91825260209091200154609d80546001600160a01b03909216925090839081106118cf576118cf614dae565b5f918252602090912001546001600160a01b0316609d6118f0600185614ddb565b8154811061190057611900614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d838154811061193f5761193f614dae565b5f9182526020822001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0393909316929092179091558290609e90609d611986600185614ddb565b8154811061199657611996614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020556119c5826001614ac4565b609e5f609d85815481106119db576119db614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b80611a0b81614dee565b9150506117e3565b505b6097545f9060ff16611a27575f611a3a565b611a2f6128cb565b611a3a906001614ac4565b6001600160a01b0386165f81815260a36020908152604080832033808552908352928190205481519081529182018990528181018590525193945090927fc4ad67bad2c1f682946a406d840f1b273f5cd5a53fcc1a03d078d92bfa2e07d09181900360600190a36001600160a01b038581165f81815260a360209081526040808320338085528184528285205486865260a18552838620548287529290945282517fb809af0f000000000000000000000000000000000000000000000000000000008152600481019690965260248601526044850187905260648501839052608485015290881460a4840152517f00000000000000000000000000000000000000000000000000000000000000009093169263b809af0f9260c480820193929182900301818387803b158015611b6e575f80fd5b505af1158015611b80573d5f803e3d5ffd5b50505050611b95611b8e3390565b3086613de5565b60975460ff168015611ba85750609b5482115b8015611bcd57506099546001600160a01b0386165f908152609e602052604090205411155b15611bda57611bda613a98565b50506108fc6001606555565b611bee613a3e565b60975460ff1615611c415760405162461bcd60e51b815260206004820152601660248201527f72657761726420616c72656164792073746172746564000000000000000000006044820152606401610779565b4281118015611c5a5750611c586201518082614e30565b155b8015611c6857506098548114155b611cb45760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d65000000000000006044820152606401610779565b609880549082905560408051828152602081018490527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a15050565b609d546060905f9067ffffffffffffffff811115611d1957611d19614b38565b604051908082528060200260200182016040528015611d6557816020015b60408051606080820183525f808352602083015291810191909152815260200190600190039081611d375790505b5090505f5b609d54811015611f0f576040518060600160405280609f5f609d8581548110611d9557611d95614dae565b5f9182526020808320909101546001600160a01b0390811684528382019490945260409092018120549092168352609d80549390910192609f92919086908110611de157611de1614dae565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f609d8581548110611e3a57611e3a614dae565b5f9182526020808320909101546001600160a01b0316835282019290925260400190206002018054611e6b90614b65565b80601f0160208091040260200160405190810160405280929190818152602001828054611e9790614b65565b8015611ee25780601f10611eb957610100808354040283529160200191611ee2565b820191905f5260205f20905b815481529060010190602001808311611ec557829003601f168201915b5050505050815250828281518110611efc57611efc614dae565b6020908102919091010152600101611d6a565b50919050565b5f54610100900460ff1615808015611f3357505f54600160ff909116105b80611f4c5750303b158015611f4c57505f5460ff166001145b611fbe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610779565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561201a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0387166120705760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e6572206164647265737300000000000000000000006044820152606401610779565b5f86116120e55760405162461bcd60e51b815260206004820152602260248201527f73657175656e6365727353697a65206d7573742067726561746572207468616e60448201527f20300000000000000000000000000000000000000000000000000000000000006064820152608401610779565b5f85116121345760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420756e64656c65676174654c6f636b45706f636873000000006044820152606401610779565b428411801561214d575061214b6201518085614e30565b155b6121995760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d65000000000000006044820152606401610779565b816121e65760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420696e697469616c207374616b6572730000000000000000006044820152606401610779565b6121ef87614096565b6121f76140f4565b6099869055609a8590556098849055609b8290555f5b609b548110156123685783838281811061222957612229614dae565b905060200281019061223b9190614e43565b609f5f86868581811061225057612250614dae565b90506020028101906122629190614e43565b61227090602081019061465b565b6001600160a01b0316815260208101919091526040015f206122928282614bf4565b905050609d8484838181106122a9576122a9614dae565b90506020028101906122bb9190614e43565b6122c990602081019061465b565b8154600180820184555f938452602090932001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055612312908290614ac4565b609e5f86868581811061232757612327614dae565b90506020028101906123399190614e43565b61234790602081019061465b565b6001600160a01b0316815260208101919091526040015f205560010161220d565b50604080515f8152602081018890527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a1604080515f8152602081018690527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a1801561243d575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b609d8181548110612455575f80fd5b5f918252602090912001546001600160a01b0316905081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561255657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612527573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061254b9190614e7f565b6001600160a01b0316145b61072b5760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f77656400000000000000000000000000000000000000006064820152608401610779565b6125d0613a3e565b6125d95f614096565b565b6125e3613a3e565b60985442101561265a5760405162461bcd60e51b8152602060048201526024808201527f63616e2774207374617274206265666f7265207265776172642073746172742060448201527f74696d65000000000000000000000000000000000000000000000000000000006064820152608401610779565b5f609c54116126ab5760405162461bcd60e51b815260206004820152600e60248201527f6e6f6e652063616e6469646174650000000000000000000000000000000000006044820152606401610779565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091555b609d54811015612868575f5b8181101561285f5760a15f609d838154811061270457612704614dae565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d858154811061275557612755614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115612857575f609d828154811061279357612793614dae565b5f91825260209091200154609d80546001600160a01b03909216925090849081106127c0576127c0614dae565b5f91825260209091200154609d80546001600160a01b0390921691849081106127eb576127eb614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d848154811061282a5761282a614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550505b6001016126e6565b506001016126da565b505f5b609d548110156128c257612880816001614ac4565b609e5f609d848154811061289657612896614dae565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205560010161286b565b506125d9613a98565b5f60985442101561291e5760405162461bcd60e51b815260206004820152601960248201527f726577617264206973206e6f74207374617274656420796574000000000000006044820152606401610779565b62015180609854426129309190614ddb565b61293a9190614e9a565b905090565b6001600160a01b0381165f90815260a360209081526040808320338452909152812054151561071d565b609f6020525f90815260409020805460018201546002830180546001600160a01b0390931693919261299a90614b65565b80601f01602080910402602001604051908101604052809291908181526020018280546129c690614b65565b8015612a115780601f106129e857610100808354040283529160200191612a11565b820191905f5260205f20905b8154815290600101906020018083116129f457829003601f168201915b5050505050905083565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015612b0357507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ad4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612af89190614e7f565b6001600160a01b0316145b612b755760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f77656400000000000000000000000000000000000000006064820152608401610779565b8260a5548114612bc75760405162461bcd60e51b815260206004820152600d60248201527f696e76616c6964206e6f6e6365000000000000000000000000000000000000006044820152606401610779565b612bd2846001614ac4565b60a5555f805b83811015612f3857609b54609e5f878785818110612bf857612bf8614dae565b9050602002016020810190612c0d919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205411612c3757600191505b5f609e5f878785818110612c4d57612c4d614dae565b9050602002016020810190612c62919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115612eba575f6001609e5f888886818110612ca057612ca0614dae565b9050602002016020810190612cb5919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f2054612cdf9190614ddb565b90505b609d54612cf190600190614ddb565b811015612dc357609d612d05826001614ac4565b81548110612d1557612d15614dae565b5f91825260209091200154609d80546001600160a01b039092169183908110612d4057612d40614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506001609e5f609d8481548110612d8357612d83614dae565b5f9182526020808320909101546001600160a01b0316835282019290925260400181208054909190612db6908490614ddb565b9091555050600101612ce2565b50609d805480612dd557612dd5614ead565b5f8281526020812082015f19908101805473ffffffffffffffffffffffffffffffffffffffff19169055909101909155609e90868684818110612e1a57612e1a614dae565b9050602002016020810190612e2f919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205f90555f60a15f878785818110612e6757612e67614dae565b9050602002016020810190612e7c919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115612eba576001609c5f828254612eb49190614ddb565b90915550505b609f5f868684818110612ecf57612ecf614dae565b9050602002016020810190612ee4919061465b565b6001600160a01b0316815260208101919091526040015f908120805473ffffffffffffffffffffffffffffffffffffffff191681556001810182905590612f2e60028301826145fd565b5050600101612bd8565b507f3511bf213f9290ba907e91e12a43e8471251e1879580ae5509292a3514c23f618484604051612f6a929190614eda565b60405180910390a18015612f8057612f80613a98565b5050505050565b5f60605f8411612fd95760405162461bcd60e51b815260206004820152601160248201527f696e76616c696420706167652073697a650000000000000000000000000000006044820152606401610779565b6001600160a01b0385165f90815260a260205260409020612ff990613a35565b91508367ffffffffffffffff81111561301457613014614b38565b60405190808252806020026020018201604052801561303d578160200160208202803683370190505b5090505f61304b8486614f27565b90505f600161305a8682614ac4565b6130649088614f27565b61306e9190614ddb565b905061307b600185614ddb565b8111156130905761308d600185614ddb565b90505b815f5b828211613109576130c7826130a781614f3e565b6001600160a01b038c165f90815260a26020526040902090945090614178565b85826130d281614f3e565b9350815181106130e4576130e4614dae565b60200260200101906001600160a01b031690816001600160a01b031681525050613093565b50505050935093915050565b61311d613c18565b335f90815260a46020526040812054815b818110156134335760975460ff16158061317e575061314b6128cb565b335f90815260a46020526040902080548390811061316b5761316b614dae565b905f5260205f2090600302016002015411155b1561342157335f90815260a4602052604090208054829081106131a3576131a3614dae565b905f5260205f20906003020160010154836131be9190614ac4565b335f90815260a46020526040812080549295509091839081106131e3576131e3614dae565b5f91825260208220600390910201546001600160a01b0316915060a4816132073390565b6001600160a01b03166001600160a01b031681526020019081526020015f20838154811061323757613237614dae565b905f5260205f2090600302016002015490505f60a45f6132543390565b6001600160a01b03166001600160a01b031681526020019081526020015f20848154811061328457613284614dae565b905f5260205f2090600302016001015490506001856132a39190614ddb565b84101561336857335f90815260a4602052604090206132c3600187614ddb565b815481106132d3576132d3614dae565b905f5260205f20906003020160a45f6132e93390565b6001600160a01b03166001600160a01b031681526020019081526020015f20858154811061331957613319614dae565b5f91825260209091208254600390920201805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03909216919091178155600180830154908201556002918201549101555b335f90815260a46020526040902080548061338557613385614ead565b5f8281526020812060035f1990930192830201805473ffffffffffffffffffffffffffffffffffffffff19168155600181810183905560029091019190915591556133d09086614ddb565b604080518481526020810184905291965033916001600160a01b038616917f921046659ea3b3b3f8e8fefd2bece3121b2d929ead94c696a75beedee477fdb6910160405180910390a350505061312e565b61342c816001614ac4565b905061312e565b505f82116134835760405162461bcd60e51b815260206004820152601760248201527f6e6f204d6f72706820746f6b656e20746f20636c61696d0000000000000000006044820152606401610779565b61348d3383614183565b50506125d96001606555565b6001600160a01b0381165f90815260a460209081526040808320805482518185028101850190935280835260609492939192909184015b82821015613524575f848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016134d0565b505050509050919050565b613537613a3e565b6001600160a01b0381166135b35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610779565b61155481614096565b6135c4613c18565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ac2ac640336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b15801561364a575f80fd5b505af115801561365c573d5f803e3d5ffd5b505050506125d96001606555565b613672613a3e565b8260a55481146136c45760405162461bcd60e51b815260206004820152600d60248201527f696e76616c6964206e6f6e6365000000000000000000000000000000000000006044820152606401610779565b6136cf846001614ac4565b60a5555f805b83811015612f3857609b54609e5f8787858181106136f5576136f5614dae565b905060200201602081019061370a919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20541161373457600191505b5f609e5f87878581811061374a5761374a614dae565b905060200201602081019061375f919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205411156139b7575f6001609e5f88888681811061379d5761379d614dae565b90506020020160208101906137b2919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20546137dc9190614ddb565b90505b609d546137ee90600190614ddb565b8110156138c057609d613802826001614ac4565b8154811061381257613812614dae565b5f91825260209091200154609d80546001600160a01b03909216918390811061383d5761383d614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506001609e5f609d848154811061388057613880614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001812080549091906138b3908490614ddb565b90915550506001016137df565b50609d8054806138d2576138d2614ead565b5f8281526020812082015f19908101805473ffffffffffffffffffffffffffffffffffffffff19169055909101909155609e9086868481811061391757613917614dae565b905060200201602081019061392c919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205f90555f60a15f87878581811061396457613964614dae565b9050602002016020810190613979919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205411156139b7576001609c5f8282546139b19190614ddb565b90915550505b609f5f8686848181106139cc576139cc614dae565b90506020020160208101906139e1919061465b565b6001600160a01b0316815260208101919091526040015f908120805473ffffffffffffffffffffffffffffffffffffffff191681556001810182905590613a2b60028301826145fd565b50506001016136d5565b5f61071d825490565b6033546001600160a01b031633146125d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610779565b60995460975460ff1615613abc57609954609c541015613ab75750609c545b613acd565b609954609d541015613acd5750609d545b5f8167ffffffffffffffff811115613ae757613ae7614b38565b604051908082528060200260200182016040528015613b10578160200160208202803683370190505b5090505f5b82811015613b7d57609d8181548110613b3057613b30614dae565b905f5260205f20015f9054906101000a90046001600160a01b0316828281518110613b5d57613b5d614dae565b6001600160a01b0390921660209283029190910190910152600101613b15565b506040517f9b8201a40000000000000000000000000000000000000000000000000000000081526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639b8201a490613be3908490600401614f56565b5f604051808303815f87803b158015613bfa575f80fd5b505af1158015613c0c573d5f803e3d5ffd5b50509151609b55505050565b600260655403613c6a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002606555565b6001606555565b5f613c8c836001600160a01b03841661442c565b9392505050565b5f805b6001600160a01b0384165f90815260a46020526040902054811015613d13576001600160a01b038481165f90815260a46020526040902080549185169183908110613ce357613ce3614dae565b5f9182526020909120600390910201546001600160a01b031603613d0b57600191505061071d565b600101613c96565b505f9392505050565b6040517fde6ac9330000000000000000000000000000000000000000000000000000000081526001600160a01b03838116600483015282811660248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063de6ac93390604401602060405180830381865afa158015613da5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613dc99190614f68565b159392505050565b5f613c8c836001600160a01b03841661450f565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613e66573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e8a9190614f87565b6040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b0386811660048301528581166024830152604482018590529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303815f875af1158015613f1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f409190614f68565b613f8c5760405162461bcd60e51b815260206004820152601360248201527f7472616e7366657246726f6d206661696c6564000000000000000000000000006044820152606401610779565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa15801561400d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906140319190614f87565b90505f8311801561404a5750826140488383614ddb565b145b612f805760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610779565b603380546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166141705760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610779565b6125d961455b565b5f613c8c83836145d7565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015614204573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142289190614f87565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156142b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142d69190614f68565b6143225760405162461bcd60e51b815260206004820152600f60248201527f7472616e73666572206661696c656400000000000000000000000000000000006044820152606401610779565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156143a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906143c79190614f87565b90505f831180156143e05750826143de8383614ddb565b145b610a0e5760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610779565b5f8181526001830160205260408120548015614506575f61444e600183614ddb565b85549091505f9061446190600190614ddb565b90508181146144c0575f865f01828154811061447f5761447f614dae565b905f5260205f200154905080875f01848154811061449f5761449f614dae565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806144d1576144d1614ead565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f90556001935050505061071d565b5f91505061071d565b5f81815260018301602052604081205461455457508154600181810184555f84815260208082209093018490558454848252828601909352604090209190915561071d565b505f61071d565b5f54610100900460ff16613c715760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610779565b5f825f0182815481106145ec576145ec614dae565b905f5260205f200154905092915050565b50805461460990614b65565b5f825580601f10614618575050565b601f0160209004905f5260205f209081019061155491905b80821115614643575f8155600101614630565b5090565b6001600160a01b0381168114611554575f80fd5b5f6020828403121561466b575f80fd5b8135613c8c81614647565b5f8060408385031215614687575f80fd5b82359150602083013567ffffffffffffffff8111156146a4575f80fd5b8301606081860312156146b5575f80fd5b809150509250929050565b5f602082840312156146d0575f80fd5b5035919050565b5f80604083850312156146e8575f80fd5b82356146f381614647565b946020939093013593505050565b5f8083601f840112614711575f80fd5b50813567ffffffffffffffff811115614728575f80fd5b6020830191508360208260051b8501011115614742575f80fd5b9250929050565b5f806020838503121561475a575f80fd5b823567ffffffffffffffff811115614770575f80fd5b61477c85828601614701565b90969095509350505050565b5f81518084525f5b818110156147ac57602081850181015186830182015201614790565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b83811015614881578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0018552815180516001600160a01b031684528781015188850152860151606087850181905261486d81860183614788565b968901969450505090860190600101614810565b509098975050505050505050565b5f805f805f8060a087890312156148a4575f80fd5b86356148af81614647565b9550602087013594506040870135935060608701359250608087013567ffffffffffffffff8111156148df575f80fd5b6148eb89828a01614701565b979a9699509497509295939492505050565b6001600160a01b0384168152826020820152606060408201525f6149246060830184614788565b95945050505050565b5f806040838503121561493e575f80fd5b823561494981614647565b915060208301356146b581614647565b5f805f6040848603121561496b575f80fd5b83359250602084013567ffffffffffffffff811115614988575f80fd5b61499486828701614701565b9497909650939450505050565b5f805f606084860312156149b3575f80fd5b83356149be81614647565b95602085013595506040909401359392505050565b5f815180845260208085019450602084015f5b83811015614a0b5781516001600160a01b0316875295820195908201906001016149e6565b509495945050505050565b828152604060208201525f614a2e60408301846149d3565b949350505050565b602080825282518282018190525f919060409081850190868401855b82811015614a8a57815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101614a52565b5091979650505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561071d5761071d614a97565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614b0a575f80fd5b83018035915067ffffffffffffffff821115614b24575f80fd5b602001915036819003821315614742575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600181811c90821680614b7957607f821691505b602082108103611f0f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b601f8211156108fc57805f5260205f20601f840160051c81016020851015614bd55750805b601f840160051c820191505b81811015612f80575f8155600101614be1565b8135614bff81614647565b6001600160a01b03811673ffffffffffffffffffffffffffffffffffffffff1983541617825550600160208084013560018401556002830160408501357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1863603018112614c6b575f80fd5b8501803567ffffffffffffffff811115614c83575f80fd5b8036038483011315614c93575f80fd5b614ca781614ca18554614b65565b85614bb0565b5f601f821160018114614cda575f8315614cc357508382018601355b5f19600385901b1c1916600184901b178555614d50565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b82811015614d2657868501890135825593880193908901908801614d07565b5084821015614d44575f1960f88660031b161c198885880101351681555b505060018360011b0185555b505050505050505050565b83815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b8181038181111561071d5761071d614a97565b5f81614dfc57614dfc614a97565b505f190190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f82614e3e57614e3e614e03565b500690565b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112614e75575f80fd5b9190910192915050565b5f60208284031215614e8f575f80fd5b8151613c8c81614647565b5f82614ea857614ea8614e03565b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208082528181018390525f908460408401835b86811015614f1c578235614f0181614647565b6001600160a01b031682529183019190830190600101614eee565b509695505050505050565b808202811582820484141761071d5761071d614a97565b5f5f198203614f4f57614f4f614a97565b5060010190565b602081525f613c8c60208301846149d3565b5f60208284031215614f78575f80fd5b81518015158114613c8c575f80fd5b5f60208284031215614f97575f80fd5b505191905056fea164736f6c6343000818000a diff --git a/bindings/bin/rollup_deployed.hex b/bindings/bin/rollup_deployed.hex index b23011457..8f137b13b 100644 --- a/bindings/bin/rollup_deployed.hex +++ b/bindings/bin/rollup_deployed.hex @@ -1 +1 @@ -0x608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063cd4edc69116100b7578063cd4edc6914610917578063ce5db8d61461092a578063d279c1911461093f575f80fd5b8063b35dac4e146108ba578063b3e0a509146108d9578063bedb86fb146108f8575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d1461085b578063b31a77d314610886578063b34844251461089b575f80fd5b8063a415d8dc146107f9578063a479265d14610827578063a4f209b01461083c575f80fd5b80638f1d37761161016c5780638f1d3776146106f9578063910129d4146107a957806397fc007c146107da575f80fd5b8063728cdbca146106a457806388b1ea09146106c35780638da5cb5b146106dc575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa146106465780636c578c1d14610671578063715018a614610690575f80fd5b80635ef7a94a1461057b5780635f77cf1d146105db5780636126729014610627575f80fd5b80634a8d544f1161022c5780634a8d544f1461053257806357e0af6c146105455780635c975abb14610564575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046140f4565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614126565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614184565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046140f4565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046141cc565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046140f4565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046140f4565b611326565b34801561047c575f80fd5b5061036961048b3660046140f4565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046140f4565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b61039661054036600461420b565b611354565b348015610550575f80fd5b5061039661055f3660046140f4565b611bd7565b34801561056f575f80fd5b5060655460ff1661033f565b348015610586575f80fd5b506105bb6105953660046140f4565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105e6575f80fd5b5061060e7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610632575f80fd5b506103966106413660046140f4565b611c82565b348015610651575f80fd5b506103696106603660046140f4565b60ab6020525f908152604090205481565b34801561067c575f80fd5b5061039661068b366004614126565b611e97565b34801561069b575f80fd5b50610396611f54565b3480156106af575f80fd5b506103966106be366004614278565b611f67565b3480156106ce575f80fd5b5060a65461033f9060ff1681565b3480156106e7575f80fd5b506033546001600160a01b03166104e6565b348015610704575f80fd5b506107656107133660046140f4565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107b4575f80fd5b5061033f6107c33660046140f4565b5f90815260a4602052604090206003015460ff1690565b3480156107e5575f80fd5b506103966107f4366004614126565b6122aa565b348015610804575f80fd5b5061033f610813366004614126565b609f6020525f908152604090205460ff1681565b348015610832575f80fd5b5061036960995481565b348015610847575f80fd5b506103966108563660046140f4565b61238d565b348015610866575f80fd5b50610369610875366004614126565b60a56020525f908152604090205481565b348015610891575f80fd5b5061036960a85481565b3480156108a6575f80fd5b506103966108b53660046142d3565b61243d565b3480156108c5575f80fd5b506103966108d4366004614126565b612682565b3480156108e4575f80fd5b506103966108f33660046141cc565b6126db565b348015610903575f80fd5b50610396610912366004614347565b612a2b565b610396610925366004614362565b612b86565b348015610935575f80fd5b5061036960985481565b34801561094a575f80fd5b50610396610959366004614126565b613152565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046140f4565b613211565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046140f4565b61325b565b3480156109db575f80fd5b506103966109ea366004614126565b6132fe565b3480156109fa575f80fd5b5061036960a95481565b610a0c61338b565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade61338b565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b3985856133e5565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856143c5565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826143d8565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d0781613211565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906143c5565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e87613400565b5f80610e9384846133e5565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611326565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f6381613211565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856143d8565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f26111e5846011015160c01c90565b600985015160c01c613453565b60a25f6112006001846143d8565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123990846143d8565b81526020019081526020015f205f905560a45f60018361125991906143d8565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611302866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134e57505f82815260a1602052604090205415155b92915050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156113c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e491906143eb565b6114305760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a854156114805760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611488613400565b6114956020830183614406565b60ff16156114e55760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f6114f36040840184614426565b915050806115435760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b60608301356115945760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60808301356115e55760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f806115fc6115f76020870187614426565b6133e5565b915091505f61160f836001015160c01c90565b90505f60a1816116208460016143c5565b81526020019081526020015f20541461167b5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e5481146116cc5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a1602052604090205482146117285760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab60205260409020546060870135146117885760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f611797846011015160c01c90565b90505f80806117e96117ac60408c018c614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508792508891506135109050565b600196909601959485019493840193925090505f80491561180b575f4961182d565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b60408051611f2081019091529850905060f96118588961185060208f018f614406565b60ff1661368d565b60c087811b60018b015285811b60098b015286901b60118a01526019890183905260608c013560598a015260808c013560798a015260a08c013560998a01526118c7896118a860208e018e614426565b6040516118b6929190614487565b604051809103902060b99190910152565b60d98901889052603989018290528089205f88815260a1602090815260408083209390935560ab905290812060808e0135905560a65460ff16156119345760a7545f90815260a460205260409020600201546099544291611927916143c5565b61193191906143d8565b90505b6040518060800160405280428152602001826098544261195491906143c5565b61195e91906143c5565b81526020016119af8f80604001906119769190614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061369492505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015611a23573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a479190614496565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590611aaf90611aa9908f018f614426565b5f6136eb565b5f8e8060400190611ac09190614426565b6040518663ffffffff1660e01b8152600401611ae09594939291906144f4565b602060405180830381865afa158015611afb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b1f91906143eb565b611b915760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b611bdf61338b565b5f81118015611bf057506099548114155b611c3c5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff16158015611ca257505f5460ff8083169116105b611d145760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611d4f5f5460ff1690565b60ff16600214611da15760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b81611e145760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab6020526040902054611e3d57609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611c76565b611e9f61338b565b6001600160a01b0381165f908152609f602052604090205460ff16611f065760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b611f5c61338b565b611f655f61373f565b565b5f54610100900460ff1615808015611f8557505f54600160ff909116105b80611f9e5750303b158015611f9e57505f5460ff166001145b6120105760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff19166001179055801561204e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061206b57506001600160a01b038516155b156120a2576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166120f85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b6121006137a8565b61210861382c565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156122a1575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6122b261338b565b6001600160a01b038116158015906122d85750609c546001600160a01b03828116911614155b6123245760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61239561338b565b5f811180156123a5575060648111155b80156123b3575060a9548114155b6123ff5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611c76565b60a8541561248d5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612495613400565b5f806124a186866133e5565b915091505f6124b4836001015160c01c90565b5f81815260a1602052604090205490915082146125135760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b61251c81613211565b6125685760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff1916905560995460029091015442916125c1916143c5565b11612637575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152612632918391906138b0565b6122a1565b612642838686613a0c565b6122a181336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613bbf565b61268a61338b565b60aa80545f90915561269c8282613c8b565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611c76565b6126e361338b565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea541561275a5760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f8061276684846133e5565b915091505f612779836001015160c01c90565b905080156127c95760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f6127d5846079015190565b9050806128245760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c156128795760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612885856019015190565b036128d25760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440146128fe856039015190565b1461294b5760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b612a3361338b565b8015612b5457612a41613d36565b60a65460ff1615612b135760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091612a959084906143c5565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612b5c613d90565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612b36565b50565b335f908152609f602052604090205460ff16612be45760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a85415612c345760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612c3c613400565b60a65460ff1615612c8f5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d5410612cea5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a160205260409020548114612d515760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b612d648267ffffffffffffffff16611326565b612db05760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b031615612e2b5760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a260205260409020600101544210612ebb5760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f0b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f2f9190614496565b341015612f7e5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516130d091815260200190565b60405180910390a35f609d5460016130e891906143c5565b90505b609e548111613140578267ffffffffffffffff16811461312e576099545f82815260a26020526040812060010180549091906131289084906143c5565b90915550505b8061313881614567565b9150506130eb565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036131b15760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556131ca8282613c8b565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161320591815260200190565b60405180910390a25050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134e5750505f90815260a46020526040902060030154610100900460ff161590565b61326361338b565b5f8111801561327457506098548114155b6132c05760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611c76565b61330661338b565b6001600160a01b0381166133825760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b612b838161373f565b6033546001600160a01b03163314611f655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6133f28585613dc9565b812090969095509350505050565b60655460ff1615611f655760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361345e575050565b8082035f5b8281101561350a5761010081840381111561347d57508083035b609b546040517f3c7f528300000000000000000000000000000000000000000000000000000000815260048101859052602481018390526001600160a01b0390911690633c7f5283906044015f604051808303815f87803b1580156134e0575f80fd5b505af11580156134f2573d5f803e3d5ffd5b50505050610100830192505061010081019050613463565b50505050565b60405183515f9182916020870191908190849061352e908590613e32565b90506002840193505f5b818110156135b257603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613588603c8361459e565b61359290876143c5565b90505f6135a382603a015160f01c90565b97909701965050600101613538565b506020850282016040525b801561367b575f6135d285603a015160f01c90565b90506135e083828b8b613ec7565b92505f6135f1866038015160f01c90565b9050818110156136435760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50978801979690960195603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016135bd565b50819003902096919550909350505050565b8082535050565b5f805f6020840190506002810191505f6136af828651613e32565b90505f5b6136be6001836143d8565b8110156136d457603c93909301926001016136b3565b505f6136e1845160c01c90565b9695505050505050565b60605f808080806136fe888a018a6146a2565b955095509550955095505081871061371c5794506137389350505050565b838710613730578295505050505050613738565b509293505050505b9392505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166138245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f65613f95565b5f54610100900460ff166138a85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f6561401d565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613934573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139589190614496565b5f86815260a460205260409020600101549091506139779082906143c5565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906139b69084906143c5565b90915550506040516139c990849061473f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613a595760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f613a68846001015160c01c90565b90505f613a76856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613aa5876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a848613b67885160f81c90565b858888866040518663ffffffff1660e01b8152600401613b8b95949392919061476b565b5f6040518083038186803b158015613ba1575f80fd5b505afa158015613bb3573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613be3908461459e565b613bed919061479c565b9050613bf981836143d8565b60aa5f828254613c0991906143c5565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613c359084906143c5565b9091555050604051613c4890849061473f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613d32575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613cda576040519150601f19603f3d011682016040523d82523d5f602084013e613cdf565b606091505b5050905080613d305760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613d3e613400565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613d733390565b6040516001600160a01b03909116815260200160405180910390a1565b613d986140a2565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613d73565b5f8160f9811015613e1c5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040529250929050565b5f613e3e835160f01c90565b9050805f03613e79576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e84603c8261459e565b613e8f9060026143c5565b821461134e576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f03613ed6575083613f8d565b609b546001600160a01b03165f5b85811015613f87576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f906001600160a01b0384169063ae453cd590602401602060405180830381865afa158015613f4a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f6e9190614496565b8852506020909601956001948501949384019301613ee4565b50859150505b949350505050565b5f54610100900460ff166140115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140995760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f653361373f565b60655460ff16611f655760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f60208284031215614104575f80fd5b5035919050565b80356001600160a01b0381168114614121575f80fd5b919050565b5f60208284031215614136575f80fd5b6137388261410b565b5f8083601f84011261414f575f80fd5b50813567ffffffffffffffff811115614166575f80fd5b60208301915083602082850101111561417d575f80fd5b9250929050565b5f805f60408486031215614196575f80fd5b833567ffffffffffffffff8111156141ac575f80fd5b6141b88682870161413f565b909790965060209590950135949350505050565b5f80602083850312156141dd575f80fd5b823567ffffffffffffffff8111156141f3575f80fd5b6141ff8582860161413f565b90969095509350505050565b5f806040838503121561421c575f80fd5b823567ffffffffffffffff80821115614233575f80fd5b9084019060c08287031215614246575f80fd5b9092506020840135908082111561425b575f80fd5b5083016060818603121561426d575f80fd5b809150509250929050565b5f805f805f8060c0878903121561428d575f80fd5b6142968761410b565b95506142a46020880161410b565b94506142b26040880161410b565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156142e6575f80fd5b843567ffffffffffffffff808211156142fd575f80fd5b6143098883890161413f565b90965094506020870135915080821115614321575f80fd5b5061432e8782880161413f565b95989497509550505050565b8015158114612b83575f80fd5b5f60208284031215614357575f80fd5b81356137388161433a565b5f8060408385031215614373575f80fd5b823567ffffffffffffffff8116811461438a575f80fd5b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134e5761134e614398565b8181038181111561134e5761134e614398565b5f602082840312156143fb575f80fd5b81516137388161433a565b5f60208284031215614416575f80fd5b813560ff81168114613738575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614459575f80fd5b83018035915067ffffffffffffffff821115614473575f80fd5b60200191503681900382131561417d575f80fd5b818382375f9101908152919050565b5f602082840312156144a6575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b8181101561453e5784516001600160a01b031683529383019391830191600101614519565b505087604086015284810360608601526145598187896144ad565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361459757614597614398565b5060010190565b808202811582820484141761134e5761134e614398565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145f1575f80fd5b8135602067ffffffffffffffff8083111561460e5761460e6145b5565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614651576146516145b5565b6040529384526020818701810194908101925087851115614670575f80fd5b6020870191505b84821015614697576146888261410b565b83529183019190830190614677565b979650505050505050565b5f805f805f8060c087890312156146b7575f80fd5b86359550602087013567ffffffffffffffff808211156146d5575f80fd5b6146e18a838b016145e2565b96506040890135955060608901359150808211156146fd575f80fd5b6147098a838b016145e2565b94506080890135935060a0890135915080821115614725575f80fd5b5061473289828a016145e2565b9150509295509295509295565b5f82515f5b8181101561475e5760208186018101518583015201614744565b505f920191825250919050565b858152846020820152608060408201525f61478a6080830185876144ad565b90508260608301529695505050505050565b5f826147cf577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea164736f6c6343000818000a +0x608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063cd4edc69116100b7578063cd4edc6914610917578063ce5db8d61461092a578063d279c1911461093f575f80fd5b8063b35dac4e146108ba578063b3e0a509146108d9578063bedb86fb146108f8575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d1461085b578063b31a77d314610886578063b34844251461089b575f80fd5b8063a415d8dc146107f9578063a479265d14610827578063a4f209b01461083c575f80fd5b80638f1d37761161016c5780638f1d3776146106f9578063910129d4146107a957806397fc007c146107da575f80fd5b8063728cdbca146106a457806388b1ea09146106c35780638da5cb5b146106dc575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa146106465780636c578c1d14610671578063715018a614610690575f80fd5b80635ef7a94a1461057b5780635f77cf1d146105db5780636126729014610627575f80fd5b8063428868b51161022c578063428868b51461053257806357e0af6c146105455780635c975abb14610564575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046140c8565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b506103966103913660046140fa565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614158565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046140c8565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046141a0565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046140c8565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046140c8565b611326565b34801561047c575f80fd5b5061036961048b3660046140c8565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046140c8565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b6103966105403660046141df565b611354565b348015610550575f80fd5b5061039661055f3660046140c8565b611bbb565b34801561056f575f80fd5b5060655460ff1661033f565b348015610586575f80fd5b506105bb6105953660046140c8565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105e6575f80fd5b5061060e7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610632575f80fd5b506103966106413660046140c8565b611c66565b348015610651575f80fd5b506103696106603660046140c8565b60ab6020525f908152604090205481565b34801561067c575f80fd5b5061039661068b3660046140fa565b611e7b565b34801561069b575f80fd5b50610396611f38565b3480156106af575f80fd5b506103966106be36600461424c565b611f4b565b3480156106ce575f80fd5b5060a65461033f9060ff1681565b3480156106e7575f80fd5b506033546001600160a01b03166104e6565b348015610704575f80fd5b506107656107133660046140c8565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107b4575f80fd5b5061033f6107c33660046140c8565b5f90815260a4602052604090206003015460ff1690565b3480156107e5575f80fd5b506103966107f43660046140fa565b61228e565b348015610804575f80fd5b5061033f6108133660046140fa565b609f6020525f908152604090205460ff1681565b348015610832575f80fd5b5061036960995481565b348015610847575f80fd5b506103966108563660046140c8565b612371565b348015610866575f80fd5b506103696108753660046140fa565b60a56020525f908152604090205481565b348015610891575f80fd5b5061036960a85481565b3480156108a6575f80fd5b506103966108b53660046142a7565b612421565b3480156108c5575f80fd5b506103966108d43660046140fa565b612742565b3480156108e4575f80fd5b506103966108f33660046141a0565b61279b565b348015610903575f80fd5b5061039661091236600461431b565b612aeb565b61039661092536600461434d565b612c46565b348015610935575f80fd5b5061036960985481565b34801561094a575f80fd5b506103966109593660046140fa565b613212565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046140c8565b6132d1565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046140c8565b61331b565b3480156109db575f80fd5b506103966109ea3660046140fa565b6133be565b3480156109fa575f80fd5b5061036960a95481565b610a0c61344b565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade61344b565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b3985856134a5565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856143a2565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826143b5565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d07816132d1565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906143a2565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e8761353e565b5f80610e9384846134a5565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611326565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f63816132d1565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856143b5565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f26111e5846011015160c01c90565b600985015160c01c613591565b60a25f6112006001846143b5565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123990846143b5565b81526020019081526020015f205f905560a45f60018361125991906143b5565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611302866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134e57505f82815260a1602052604090205415155b92915050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156113c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e491906143c8565b6114305760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a854156114805760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b61148861353e565b61149560208301836143e3565b60ff1615806114b357506114ac60208301836143e3565b60ff166001145b6114ff5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b60808201356115505760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a08201356115a15760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f806115b86115b36020860186614403565b6134a5565b915091505f6115cb836001015160c01c90565b90505f60a1816115dc8460016143a2565b81526020019081526020015f2054146116375760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e5481146116885760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a1602052604090205482146116e45760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab60205260409020546080860135146117445760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f611753846011015160c01c90565b90505f61177f6117696060890160408a01614464565b61177960808a0160608b0161447d565b8461364e565b9050611791608088016060890161447d565b6001939093019261ffff1691909101905f8049156117b0575f496117d2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b905060f96117e360208a018a6143e3565b60ff166001036117f257506101015b6040805182810190915296506118178761180f60208c018c6143e3565b60ff16613692565b60c085901b60018801526118458761183560808c0160608d0161447d565b61ffff1660c01b60099190910152565b60c084811b6011890152601988018490526039880183905260808a0135605989015260a08a0135607989015289013560998801526118a98761188a60208b018b614403565b60405161189892919061449e565b604051809103902060b99190910152565b60d9870186905260016118bf60208b018b6143e3565b60ff16106118f1576118f1876118db60608c0160408d01614464565b67ffffffffffffffff1660c01b60f99190910152565b8087205f86815260a1602090815260408083209390935560ab905290812060a08b0135905560a65460ff16156119505760a7545f90815260a460205260409020600201546099544291611943916143a2565b61194d91906143b5565b90505b6040518060800160405280428152602001826098544261197091906143a2565b61197a91906143a2565b815260200161198f60608d0160408e01614464565b67ffffffffffffffff1681526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015611a0d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a3191906144ad565b90525f87815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8790556097546001600160a01b031692506374fe27b79150893590611a9990611a93908c018c614403565b5f613699565b5f611aa760408d018d614403565b6040518663ffffffff1660e01b8152600401611ac795949392919061450b565b602060405180830381865afa158015611ae2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b0691906143c8565b611b785760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f84815260a16020526040808220549051909186917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050565b611bc361344b565b5f81118015611bd457506099548114155b611c205760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff16158015611c8657505f5460ff8083169116105b611cf85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611d335f5460ff1690565b60ff16600214611d855760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b81611df85760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab6020526040902054611e2157609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611c5a565b611e8361344b565b6001600160a01b0381165f908152609f602052604090205460ff16611eea5760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b611f4061344b565b611f495f6136ed565b565b5f54610100900460ff1615808015611f6957505f54600160ff909116105b80611f825750303b158015611f8257505f5460ff166001145b611ff45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff191660011790558015612032575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061204f57506001600160a01b038516155b15612086576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166120dc5760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b6120e4613756565b6120ec6137da565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015612285575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b61229661344b565b6001600160a01b038116158015906122bc5750609c546001600160a01b03828116911614155b6123085760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61237961344b565b5f81118015612389575060648111155b8015612397575060a9548114155b6123e35760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611c5a565b60a854156124715760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b61247961353e565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156124e5573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061250991906143c8565b6125555760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b5f8061256186866134a5565b915091505f612574836001015160c01c90565b5f81815260a1602052604090205490915082146125d35760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6125dc816132d1565b6126285760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291612681916143a2565b116126f7575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f757400000000000000000000000000000000000000000000000000918301919091526126f29183919061385e565b612285565b6127028386866139ba565b61228581336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613b6d565b61274a61344b565b60aa80545f90915561275c8282613c39565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611c5a565b6127a361344b565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea541561281a5760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f8061282684846134a5565b915091505f612839836001015160c01c90565b905080156128895760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f612895846079015190565b9050806128e45760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c156129395760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612945856019015190565b036129925760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440146129be856039015190565b14612a0b5760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b612af361344b565b8015612c1457612b01613ce4565b60a65460ff1615612bd35760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091612b559084906143a2565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612c1c613d3e565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612bf6565b50565b335f908152609f602052604090205460ff16612ca45760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a85415612cf45760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612cfc61353e565b60a65460ff1615612d4f5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d5410612daa5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a160205260409020548114612e115760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b612e248267ffffffffffffffff16611326565b612e705760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b031615612eeb5760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a260205260409020600101544210612f7b5760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612fcb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fef91906144ad565b34101561303e5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161319091815260200190565b60405180910390a35f609d5460016131a891906143a2565b90505b609e548111613200578267ffffffffffffffff1681146131ee576099545f82815260a26020526040812060010180549091906131e89084906143a2565b90915550505b806131f88161457e565b9150506131ab565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036132715760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a5602052604081205561328a8282613c39565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516132c591815260200190565b60405180910390a25050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134e5750505f90815260a46020526040902060030154610100900460ff161590565b61332361344b565b5f8111801561333457506098548114155b6133805760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611c5a565b6133c661344b565b6001600160a01b0381166134425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b612c43816136ed565b6033546001600160a01b03163314611f495760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134b28585613d77565b90505f8160ff165f036134d3576134c98686613de7565b9094509050613530565b8160ff166001036134e8576134c98686613e50565b60405162461bcd60e51b815260206004820152601960248201527f556e737570706f727465642062617463682076657273696f6e000000000000006044820152606401610a70565b808420925050509250929050565b60655460ff1615611f495760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361359c575050565b8082035f5b82811015613648576101008184038111156135bb57508083035b609b546040517f3c7f528300000000000000000000000000000000000000000000000000000000815260048101859052602481018390526001600160a01b0390911690633c7f5283906044015f604051808303815f87803b15801561361e575f80fd5b505af1158015613630573d5f803e3d5ffd5b505050506101008301925050610100810190506135a1565b50505050565b6040805160c085901b815260f084901b6008820152600a60208502820181019092525f9181016136838161ffff871686613ea3565b82900390912095945050505050565b8082535050565b60605f808080806136ac888a018a6146a2565b95509550955095509550508187106136ca5794506136e69350505050565b8387106136de5782955050505050506136e6565b509293505050505b9392505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166137d25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f49613f69565b5f54610100900460ff166138565760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f49613ff1565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af11580156138e2573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061390691906144ad565b5f86815260a460205260409020600101549091506139259082906143a2565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906139649084906143a2565b909155505060405161397790849061473f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613a075760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f613a16846001015160c01c90565b90505f613a24856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613a53876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a848613b15885160f81c90565b858888866040518663ffffffff1660e01b8152600401613b3995949392919061476b565b5f6040518083038186803b158015613b4f575f80fd5b505afa158015613b61573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613b91908461479c565b613b9b91906147b3565b9050613ba781836143b5565b60aa5f828254613bb791906143a2565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613be39084906143a2565b9091555050604051613bf690849061473f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613ce0575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613c88576040519150601f19603f3d011682016040523d82523d5f602084013e613c8d565b606091505b5050905080613cde5760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613cec61353e565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613d213390565b6040516001600160a01b03909116815260200160405180910390a1565b613d46614076565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613d21565b5f81613dc55760405162461bcd60e51b815260206004820152601260248201527f456d7074792062617463682068656164657200000000000000000000000000006044820152606401610a70565b82825f818110613dd757613dd76147eb565b919091013560f81c949350505050565b5f8160f9811015613e3a5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040529250929050565b5f816101018114613e3a5760405162461bcd60e51b815260206004820181905260248201527f626174636820686561646572206c656e67746820697320696e636f72726563746044820152606401610a70565b5f825f03613eb25750826136e6565b609b546001600160a01b03165f5b84811015613f5f576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f906001600160a01b0384169063ae453cd590602401602060405180830381865afa158015613f26573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f4a91906144ad565b87525060209095019460019384019301613ec0565b5093949350505050565b5f54610100900460ff16613fe55760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff1661406d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f49336136ed565b60655460ff16611f495760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f602082840312156140d8575f80fd5b5035919050565b80356001600160a01b03811681146140f5575f80fd5b919050565b5f6020828403121561410a575f80fd5b6136e6826140df565b5f8083601f840112614123575f80fd5b50813567ffffffffffffffff81111561413a575f80fd5b602083019150836020828501011115614151575f80fd5b9250929050565b5f805f6040848603121561416a575f80fd5b833567ffffffffffffffff811115614180575f80fd5b61418c86828701614113565b909790965060209590950135949350505050565b5f80602083850312156141b1575f80fd5b823567ffffffffffffffff8111156141c7575f80fd5b6141d385828601614113565b90969095509350505050565b5f80604083850312156141f0575f80fd5b823567ffffffffffffffff80821115614207575f80fd5b9084019060e0828703121561421a575f80fd5b9092506020840135908082111561422f575f80fd5b50830160608186031215614241575f80fd5b809150509250929050565b5f805f805f8060c08789031215614261575f80fd5b61426a876140df565b9550614278602088016140df565b9450614286604088016140df565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156142ba575f80fd5b843567ffffffffffffffff808211156142d1575f80fd5b6142dd88838901614113565b909650945060208701359150808211156142f5575f80fd5b5061430287828801614113565b95989497509550505050565b8015158114612c43575f80fd5b5f6020828403121561432b575f80fd5b81356136e68161430e565b803567ffffffffffffffff811681146140f5575f80fd5b5f806040838503121561435e575f80fd5b61436783614336565b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134e5761134e614375565b8181038181111561134e5761134e614375565b5f602082840312156143d8575f80fd5b81516136e68161430e565b5f602082840312156143f3575f80fd5b813560ff811681146136e6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614436575f80fd5b83018035915067ffffffffffffffff821115614450575f80fd5b602001915036819003821315614151575f80fd5b5f60208284031215614474575f80fd5b6136e682614336565b5f6020828403121561448d575f80fd5b813561ffff811681146136e6575f80fd5b818382375f9101908152919050565b5f602082840312156144bd575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156145555784516001600160a01b031683529383019391830191600101614530565b505087604086015284810360608601526145708187896144c4565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036145ae576145ae614375565b5060010190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145f1575f80fd5b8135602067ffffffffffffffff8083111561460e5761460e6145b5565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614651576146516145b5565b6040529384526020818701810194908101925087851115614670575f80fd5b6020870191505b8482101561469757614688826140df565b83529183019190830190614677565b979650505050505050565b5f805f805f8060c087890312156146b7575f80fd5b86359550602087013567ffffffffffffffff808211156146d5575f80fd5b6146e18a838b016145e2565b96506040890135955060608901359150808211156146fd575f80fd5b6147098a838b016145e2565b94506080890135935060a0890135915080821115614725575f80fd5b5061473289828a016145e2565b9150509295509295509295565b5f82515f5b8181101561475e5760208186018101518583015201614744565b505f920191825250919050565b858152846020820152608060408201525f61478a6080830185876144c4565b90508260608301529695505050505050565b808202811582820484141761134e5761134e614375565b5f826147e6577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a diff --git a/bindings/bindings/l2staking.go b/bindings/bindings/l2staking.go index 6889a94ad..bb072229b 100644 --- a/bindings/bindings/l2staking.go +++ b/bindings/bindings/l2staking.go @@ -45,8 +45,8 @@ type TypesStakerInfo struct { // L2StakingMetaData contains all meta data concerning the L2Staking contract. var L2StakingMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"_otherStaking\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"percentage\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"epochEffective\",\"type\":\"uint256\"}],\"name\":\"CommissionUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"stakeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"effectiveEpoch\",\"type\":\"uint256\"}],\"name\":\"Delegated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldTime\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newTime\",\"type\":\"uint256\"}],\"name\":\"RewardStartTimeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldSize\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newSize\",\"type\":\"uint256\"}],\"name\":\"SequencerSetMaxSizeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"name\":\"StakerAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"stakerAddresses\",\"type\":\"address[]\"}],\"name\":\"StakerRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"effectiveEpoch\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"}],\"name\":\"Undelegated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"UndelegationClaimed\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DISTRIBUTE_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"contractICrossDomainMessenger\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MORPH_TOKEN_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OTHER_STAKING\",\"outputs\":[{\"internalType\":\"contractStaking\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SEQUENCER_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo\",\"name\":\"add\",\"type\":\"tuple\"}],\"name\":\"addStaker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"candidateNumber\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"claimCommission\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"targetEpochIndex\",\"type\":\"uint256\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"claimUndelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"commissions\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentEpoch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"delegateStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"}],\"name\":\"delegations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"pageSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pageIndex\",\"type\":\"uint256\"}],\"name\":\"getAllDelegatorsInPagination\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"delegatorsTotalNumber\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"delegatorsInPage\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"getDelegatorsLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakerAddressesLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakers\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_stakerAddresses\",\"type\":\"address[]\"}],\"name\":\"getStakesInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"}],\"name\":\"getUndelegations\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"}],\"internalType\":\"structIL2Staking.Undelegation[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_sequencersMaxSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_undelegateLockEpochs\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_rewardStartTime\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo[]\",\"name\":\"_stakers\",\"type\":\"tuple[]\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"isStakingTo\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestSequencerSetSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"remove\",\"type\":\"address[]\"}],\"name\":\"removeStakers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rewardStartTime\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rewardStarted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sequencerSetMaxSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"commission\",\"type\":\"uint256\"}],\"name\":\"setCommissionRate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"stakerAddresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"stakerDelegations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"totalDelegationAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"stakerRankings\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"ranking\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"stakers\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"undelegateLockEpochs\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"undelegateStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"undelegations\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_rewardStartTime\",\"type\":\"uint256\"}],\"name\":\"updateRewardStartTime\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_sequencerSetMaxSize\",\"type\":\"uint256\"}],\"name\":\"updateSequencerSetMaxSize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", - Bin: "0x61012060405234801562000011575f80fd5b5060405162004bf338038062004bf38339810160408190526200003491620000a7565b7353000000000000000000000000000000000000076080526001600160a01b031660a05273530000000000000000000000000000000000001360c05273530000000000000000000000000000000000001760e05273530000000000000000000000000000000000001461010052620000d6565b5f60208284031215620000b8575f80fd5b81516001600160a01b0381168114620000cf575f80fd5b9392505050565b60805160a05160c05160e05161010051614a53620001a05f395f818161042501528181610d7401528181610e1c0152818161172801528181611e4d0152818161350a01526138cf01525f818161053a01526136c501525f81816106400152818161399001528181613a4501528181613aec01528181613cf501528181613da20152613e4901525f81816104df0152818161070901526127d201525f81816103e8015281816105a2015281816106df01528181610733015281816127a801526127fc0152614a535ff3fe608060405234801561000f575f80fd5b50600436106102cc575f3560e01c8063715018a61161017c578063927ede2d116100dd578063d557714111610093578063f0261bc21161006e578063f0261bc21461068a578063f2fde38b14610693578063fad99f98146106a6575f80fd5b8063d55771411461063b578063e10911b114610662578063ed70b3431461066a575f80fd5b8063b5d2e0dc116100c3578063b5d2e0dc146105d1578063c64814dd146105f0578063d31d83d91461061a575f80fd5b8063927ede2d1461059d57806396ab994d146105c4575f80fd5b806384d7d1d4116101325780638e21d5fb116101185780638e21d5fb146105355780639168ae721461055c57806391bd43a41461057e575f80fd5b806384d7d1d4146105015780638da5cb5b14610524575f80fd5b8063766718081161016257806376671808146104b35780637b05afb5146104bb578063831cfb58146104da575f80fd5b8063715018a6146104a3578063746c8ae1146104ab575f80fd5b80633385ccc21161023157806340b5c837116101e7578063459598a2116101c2578063459598a21461047557806346cdc18a146104885780636d454d5114610490575f80fd5b806340b5c8371461044757806343352d611461045a578063439162b514610462575f80fd5b80633c323a1b116102175780633c323a1b146103d35780633cb747bf146103e65780633d9353fe14610420575f80fd5b80633385ccc2146103b75780633b802421146103ca575f80fd5b8063174e31c4116102865780632cc138be1161026c5780632cc138be146103855780632e787be31461038e57806330158eea14610397575f80fd5b8063174e31c41461035f57806319fac8fd14610372575f80fd5b80630eb573af116102b65780630eb573af1461030b5780630f3b70591461031e57806312a3e94714610356575f80fd5b806243b758146102d05780630be67fcc146102f6575b5f80fd5b6102e36102de366004614148565b6106ae565b6040519081526020015b60405180910390f35b6103096103043660046141ab565b6106d4565b005b6103096103193660046141ea565b610bf9565b61033161032c366004614201565b610d0c565b604080516001600160a01b0390941684526020840192909252908201526060016102ed565b6102e3609a5481565b61030961036d366004614201565b610d54565b6103096103803660046141ea565b610ecc565b6102e360985481565b6102e360995481565b6103aa6103a53660046141ab565b610fee565b6040516102ed919061428c565b6103096103c5366004614148565b611215565b6102e3609c5481565b6103096103e1366004614201565b611870565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020016102ed565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b6103096104553660046141ea565b611f0a565b6103aa61201d565b610309610470366004614332565b612239565b6104086104833660046141ea565b612775565b609d546102e3565b61030961049e3660046143a0565b61279d565b610309612a6e565b610309612a81565b6102e3612d71565b6102e36104c9366004614148565b60a06020525f908152604090205481565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b61051461050f366004614148565b612de5565b60405190151581526020016102ed565b6033546001600160a01b0316610408565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b61056f61056a366004614148565b612e0f565b6040516102ed939291906143d7565b6102e361058c366004614148565b60a16020525f908152604090205481565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b6097546105149060ff1681565b6102e36105df366004614148565b609e6020525f908152604090205481565b6102e36105fe366004614407565b60a360209081525f928352604080842090915290825290205481565b61062d61062836600461443e565b612ec1565b6040516102ed9291906144b3565b6104087f000000000000000000000000000000000000000000000000000000000000000081565b61030961303b565b61067d610678366004614148565b6133d5565b6040516102ed91906144d3565b6102e3609b5481565b6103096106a1366004614148565b61346b565b6103096134f8565b6001600160a01b0381165f90815260a2602052604081206106ce906135a6565b92915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480156107bc57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa15801561078d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b19190614534565b6001600160a01b0316145b6108335760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f776564000000000000000000000000000000000000000060648201526084015b60405180910390fd5b5f805b82811015610bac57609b54609e5f8686858181106108565761085661454f565b905060200201602081019061086b9190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20541161089557600191505b5f609e5f8686858181106108ab576108ab61454f565b90506020020160208101906108c09190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115610b23575f6001609e5f8787868181106108fe576108fe61454f565b90506020020160208101906109139190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f205461093d91906145a9565b90505b609d5461094f906001906145a9565b811015610a2157609d6109638260016145bc565b815481106109735761097361454f565b5f91825260209091200154609d80546001600160a01b03909216918390811061099e5761099e61454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506001609e5f609d84815481106109e1576109e161454f565b5f9182526020808320909101546001600160a01b0316835282019290925260400181208054909190610a149084906145a9565b9091555050600101610940565b50609d805480610a3357610a336145cf565b5f8281526020812082015f1990810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055909101909155609e90858584818110610a8357610a8361454f565b9050602002016020810190610a989190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f205f90555f60a15f868685818110610ad057610ad061454f565b9050602002016020810190610ae59190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115610b23576001609c5f828254610b1d91906145a9565b90915550505b609f5f858584818110610b3857610b3861454f565b9050602002016020810190610b4d9190614148565b6001600160a01b0316815260208101919091526040015f90812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590610ba260028301826140ea565b5050600101610836565b507f3511bf213f9290ba907e91e12a43e8471251e1879580ae5509292a3514c23f618383604051610bde9291906145fc565b60405180910390a18015610bf457610bf46135af565b505050565b610c0161372f565b5f81118015610c1257506099548114155b610c845760405162461bcd60e51b815260206004820152602260248201527f696e76616c6964206e65772073657175656e63657220736574206d617820736960448201527f7a65000000000000000000000000000000000000000000000000000000000000606482015260840161082a565b609980549082905560408051828152602081018490527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a16097545f9060ff16610cd957609d54610cdd565b609c545b90505f6099548210610cf157609954610cf3565b815b9050609b548114610d0657610d066135af565b50505050565b60a4602052815f5260405f208181548110610d25575f80fd5b5f9182526020909120600390910201805460018201546002909201546001600160a01b03909116935090915083565b610d5c613789565b6001600160a01b038216610e12576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016635cf20c7b336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018490526044015f604051808303815f87803b158015610df7575f80fd5b505af1158015610e09573d5f803e3d5ffd5b50505050610ebe565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663996cba6883336040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03928316600482015291166024820152604481018490526064015f604051808303815f87803b158015610ea7575f80fd5b505af1158015610eb9573d5f803e3d5ffd5b505050505b610ec86001606555565b5050565b335f908152609e6020526040902054610f275760405162461bcd60e51b815260206004820152601360248201527f6f6e6c79207374616b657220616c6c6f77656400000000000000000000000000604482015260640161082a565b6014811115610f785760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420636f6d6d697373696f6e0000000000000000000000000000604482015260640161082a565b335f90815260a06020526040812082905560975460ff16610f99575f610fac565b610fa1612d71565b610fac9060016145bc565b604080518481526020810183905291925033917f6e500db30ce535d38852e318f333e9be41a3fec6c65d234ebb06203c896db9a5910160405180910390a25050565b60605f8267ffffffffffffffff81111561100a5761100a614649565b60405190808252806020026020018201604052801561105657816020015b60408051606080820183525f8083526020830152918101919091528152602001906001900390816110285790505b5090505f5b8381101561120d576040518060600160405280609f5f8888868181106110835761108361454f565b90506020020160208101906110989190614148565b6001600160a01b03908116825260208083019390935260409091015f908120549091168352910190609f908888868181106110d5576110d561454f565b90506020020160208101906110ea9190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f8888868181106111275761112761454f565b905060200201602081019061113c9190614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20600201805461116990614676565b80601f016020809104026020016040519081016040528092919081815260200182805461119590614676565b80156111e05780601f106111b7576101008083540402835291602001916111e0565b820191905f5260205f20905b8154815290600101906020018083116111c357829003601f168201915b50505050508152508282815181106111fa576111fa61454f565b602090810291909101015260010161105b565b509392505050565b61121d613789565b6001600160a01b0381165f90815260a36020908152604080832033845290915290205461128c5760405162461bcd60e51b815260206004820152601660248201527f7374616b696e6720616d6f756e74206973207a65726f00000000000000000000604482015260640161082a565b6001600160a01b0381165f908152609e60205260408120546097549015919060ff166112b8575f6112cb565b6112c0612d71565b6112cb9060016145bc565b6097549091505f9060ff1680156112e0575082155b6112ea57816112f7565b609a546112f790836145bc565b604080516060810182526001600160a01b038781168083525f81815260a36020908152858220338084528183528784208054848901908152888a018b815283875260a486528a87208054600180820183559189528789208c5160039092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909b16178a558251908a015551600290980197909755908452908252829055925191815260a1909252928120805494955091936113b99084906145a9565b90915550506001600160a01b0385165f90815260a2602052604090206113df90336137e9565b506001600160a01b0385165f908152609e602052604090205484158015611408575060975460ff165b80156114155750609c5481105b1561168c576001600160a01b0386165f908152609e602052604081205461143e906001906145a9565b90505b6001609c5461145091906145a9565b81101561168a5760a15f609d838154811061146d5761146d61454f565b5f9182526020808320909101546001600160a01b031683528201929092526040018120549060a190609d6114a28560016145bc565b815481106114b2576114b261454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611682575f609d82815481106114f0576114f061454f565b5f918252602090912001546001600160a01b03169050609d6115138360016145bc565b815481106115235761152361454f565b5f91825260209091200154609d80546001600160a01b03909216918490811061154e5761154e61454f565b5f91825260209091200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039290921691909117905580609d61159c8460016145bc565b815481106115ac576115ac61454f565b5f91825260209091200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556115f78260016145bc565b609e5f609d858154811061160d5761160d61454f565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205561163c8260026145bc565b609e5f609d61164c8660016145bc565b8154811061165c5761165c61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b600101611441565b505b841580156116af57506001600160a01b0386165f90815260a16020526040902054155b156116cc576001609c5f8282546116c691906145a9565b90915550505b6001600160a01b038681165f81815260a160205260408082205481517f7f683ee30000000000000000000000000000000000000000000000000000000081526004810194909452336024850152604484018990526064840152517f000000000000000000000000000000000000000000000000000000000000000090931692637f683ee392608480820193929182900301818387803b15801561176d575f80fd5b505af115801561177f573d5f803e3d5ffd5b5050505061178a3390565b6001600160a01b0316866001600160a01b03167f92039db29d8c0a1aa1433fe109c69488c8c5e51b23c9de7d303ad80c1fef778c846020015187876040516117e5939291909283526020830191909152604082015260600190565b60405180910390a3841580156117fd575060975460ff165b801561180b5750609b548111155b80156118515750609b546001600160a01b0387165f908152609e602052604090205411806118515750609c546001600160a01b0387165f908152609e6020526040902054115b1561185e5761185e6135af565b505050505061186d6001606555565b50565b6001600160a01b0382165f908152609e602052604090205482906118d65760405162461bcd60e51b815260206004820152600a60248201527f6e6f74207374616b657200000000000000000000000000000000000000000000604482015260640161082a565b6118de613789565b5f821161192d5760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964207374616b6520616d6f756e74000000000000000000000000604482015260640161082a565b6119373384613804565b156119845760405162461bcd60e51b815260206004820152601660248201527f756e64656c65676174696f6e20756e636c61696d656400000000000000000000604482015260640161082a565b6001600160a01b0383165f90815260a360209081526040808320338452909152902054611a02576119b5338461388d565b15611a025760405162461bcd60e51b815260206004820152601060248201527f72657761726420756e636c61696d656400000000000000000000000000000000604482015260640161082a565b6001600160a01b0383165f90815260a1602052604081208054849290611a299084906145bc565b90915550506001600160a01b0383165f90815260a36020908152604080832033845290915281208054849290611a609084906145bc565b90915550506001600160a01b0383165f90815260a260205260409020611a869033613942565b506001600160a01b0383165f90815260a16020526040902054829003611abe576001609c5f828254611ab891906145bc565b90915550505b6001600160a01b0383165f908152609e602052604090205460975460ff168015611ae85750600181115b15611d39575f611af96001836145a9565b90505b8015611d375760a15f609d611b126001856145a9565b81548110611b2257611b2261454f565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d8481548110611b7357611b7361454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611d25575f609d611bab6001846145a9565b81548110611bbb57611bbb61454f565b5f91825260209091200154609d80546001600160a01b0390921692509083908110611be857611be861454f565b5f918252602090912001546001600160a01b0316609d611c096001856145a9565b81548110611c1957611c1961454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d8381548110611c5857611c5861454f565b5f918252602082200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0393909316929092179091558290609e90609d611caa6001856145a9565b81548110611cba57611cba61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055611ce98260016145bc565b609e5f609d8581548110611cff57611cff61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b80611d2f816146c1565b915050611afc565b505b6097545f9060ff16611d4b575f611d5e565b611d53612d71565b611d5e9060016145bc565b6001600160a01b0386165f81815260a36020908152604080832033808552908352928190205481519081529182018990528181018590525193945090927fc4ad67bad2c1f682946a406d840f1b273f5cd5a53fcc1a03d078d92bfa2e07d09181900360600190a36001600160a01b038581165f81815260a360209081526040808320338085528184528285205486865260a18552838620548287529290945282517fb809af0f000000000000000000000000000000000000000000000000000000008152600481019690965260248601526044850187905260648501839052608485015290881460a4840152517f00000000000000000000000000000000000000000000000000000000000000009093169263b809af0f9260c480820193929182900301818387803b158015611e92575f80fd5b505af1158015611ea4573d5f803e3d5ffd5b50505050611eb9611eb23390565b3086613956565b60975460ff168015611ecc5750609b5482115b8015611ef157506099546001600160a01b0386165f908152609e602052604090205411155b15611efe57611efe6135af565b5050610bf46001606555565b611f1261372f565b60975460ff1615611f655760405162461bcd60e51b815260206004820152601660248201527f72657761726420616c7265616479207374617274656400000000000000000000604482015260640161082a565b4281118015611f7e5750611f7c6201518082614703565b155b8015611f8c57506098548114155b611fd85760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d6500000000000000604482015260640161082a565b609880549082905560408051828152602081018490527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a15050565b609d546060905f9067ffffffffffffffff81111561203d5761203d614649565b60405190808252806020026020018201604052801561208957816020015b60408051606080820183525f80835260208301529181019190915281526020019060019003908161205b5790505b5090505f5b609d54811015612233576040518060600160405280609f5f609d85815481106120b9576120b961454f565b5f9182526020808320909101546001600160a01b0390811684528382019490945260409092018120549092168352609d80549390910192609f929190869081106121055761210561454f565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f609d858154811061215e5761215e61454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020600201805461218f90614676565b80601f01602080910402602001604051908101604052809291908181526020018280546121bb90614676565b80156122065780601f106121dd57610100808354040283529160200191612206565b820191905f5260205f20905b8154815290600101906020018083116121e957829003601f168201915b50505050508152508282815181106122205761222061454f565b602090810291909101015260010161208e565b50919050565b5f54610100900460ff161580801561225757505f54600160ff909116105b806122705750303b15801561227057505f5460ff166001145b6122e25760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161082a565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561233e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0387166123945760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e657220616464726573730000000000000000000000604482015260640161082a565b5f86116124095760405162461bcd60e51b815260206004820152602260248201527f73657175656e6365727353697a65206d7573742067726561746572207468616e60448201527f2030000000000000000000000000000000000000000000000000000000000000606482015260840161082a565b5f85116124585760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420756e64656c65676174654c6f636b45706f63687300000000604482015260640161082a565b4284118015612471575061246f6201518085614703565b155b6124bd5760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d6500000000000000604482015260640161082a565b8161250a5760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420696e697469616c207374616b657273000000000000000000604482015260640161082a565b61251387613bc3565b61251b613c2c565b6099869055609a8590556098849055609b8290555f5b609b548110156126975783838281811061254d5761254d61454f565b905060200281019061255f9190614716565b609f5f8686858181106125745761257461454f565b90506020028101906125869190614716565b612594906020810190614148565b6001600160a01b0316815260208101919091526040015f206125b682826147f7565b905050609d8484838181106125cd576125cd61454f565b90506020028101906125df9190614716565b6125ed906020810190614148565b8154600180820184555f93845260209093200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556126419082906145bc565b609e5f8686858181106126565761265661454f565b90506020028101906126689190614716565b612676906020810190614148565b6001600160a01b0316815260208101919091526040015f2055600101612531565b50604080515f8152602081018890527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a1604080515f8152602081018690527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a1801561276c575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b609d8181548110612784575f80fd5b5f918252602090912001546001600160a01b0316905081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561288557507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612856573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061287a9190614534565b6001600160a01b0316145b6128f75760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f7765640000000000000000000000000000000000000000606482015260840161082a565b609e5f6129076020840184614148565b6001600160a01b03166001600160a01b031681526020019081526020015f20545f036129b457609d61293c6020830183614148565b81546001810183555f928352602080842090910180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039390931692909217909155609d5491609e9161299a90850185614148565b6001600160a01b0316815260208101919091526040015f20555b80609f5f6129c56020840184614148565b6001600160a01b0316815260208101919091526040015f206129e782826147f7565b506129f790506020820182614148565b6001600160a01b03167f058ecb29c230cd5df283c89e996187ed521393fe4546cd1b097921c4b2de293d6020830135612a336040850185614752565b604051612a4293929190614969565b60405180910390a260975460ff16158015612a615750609954609d5411155b1561186d5761186d6135af565b612a7661372f565b612a7f5f613bc3565b565b612a8961372f565b609854421015612b005760405162461bcd60e51b8152602060048201526024808201527f63616e2774207374617274206265666f7265207265776172642073746172742060448201527f74696d6500000000000000000000000000000000000000000000000000000000606482015260840161082a565b5f609c5411612b515760405162461bcd60e51b815260206004820152600e60248201527f6e6f6e652063616e646964617465000000000000000000000000000000000000604482015260640161082a565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091555b609d54811015612d0e575f5b81811015612d055760a15f609d8381548110612baa57612baa61454f565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d8581548110612bfb57612bfb61454f565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115612cfd575f609d8281548110612c3957612c3961454f565b5f91825260209091200154609d80546001600160a01b0390921692509084908110612c6657612c6661454f565b5f91825260209091200154609d80546001600160a01b039092169184908110612c9157612c9161454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d8481548110612cd057612cd061454f565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550505b600101612b8c565b50600101612b80565b505f5b609d54811015612d6857612d268160016145bc565b609e5f609d8481548110612d3c57612d3c61454f565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055600101612d11565b50612a7f6135af565b5f609854421015612dc45760405162461bcd60e51b815260206004820152601960248201527f726577617264206973206e6f7420737461727465642079657400000000000000604482015260640161082a565b6201518060985442612dd691906145a9565b612de091906149bc565b905090565b6001600160a01b0381165f90815260a36020908152604080832033845290915281205415156106ce565b609f6020525f90815260409020805460018201546002830180546001600160a01b03909316939192612e4090614676565b80601f0160208091040260200160405190810160405280929190818152602001828054612e6c90614676565b8015612eb75780601f10612e8e57610100808354040283529160200191612eb7565b820191905f5260205f20905b815481529060010190602001808311612e9a57829003601f168201915b5050505050905083565b5f60605f8411612f135760405162461bcd60e51b815260206004820152601160248201527f696e76616c696420706167652073697a65000000000000000000000000000000604482015260640161082a565b6001600160a01b0385165f90815260a260205260409020612f33906135a6565b91508367ffffffffffffffff811115612f4e57612f4e614649565b604051908082528060200260200182016040528015612f77578160200160208202803683370190505b5090505f612f8584866149cf565b90505f6001612f9486826145bc565b612f9e90886149cf565b612fa891906145a9565b9050612fb56001856145a9565b811115612fca57612fc76001856145a9565b90505b815b818111613030576001600160a01b0388165f90815260a260205260409020612ff49082613cb0565b8482815181106130065761300661454f565b6001600160a01b039092166020928302919091019091015280613028816149e6565b915050612fcc565b505050935093915050565b613043613789565b335f90815260a46020526040812054815b8181101561336f5760975460ff1615806130a45750613071612d71565b335f90815260a4602052604090208054839081106130915761309161454f565b905f5260205f2090600302016002015411155b1561335d57335f90815260a4602052604090208054829081106130c9576130c961454f565b905f5260205f20906003020160010154836130e491906145bc565b335f90815260a46020526040812080549295509091839081106131095761310961454f565b5f91825260208220600390910201546001600160a01b0316915060a48161312d3390565b6001600160a01b03166001600160a01b031681526020019081526020015f20838154811061315d5761315d61454f565b905f5260205f2090600302016002015490505f60a45f61317a3390565b6001600160a01b03166001600160a01b031681526020019081526020015f2084815481106131aa576131aa61454f565b905f5260205f2090600302016001015490506001856131c991906145a9565b84101561329957335f90815260a4602052604090206131e96001876145a9565b815481106131f9576131f961454f565b905f5260205f20906003020160a45f61320f3390565b6001600160a01b03166001600160a01b031681526020019081526020015f20858154811061323f5761323f61454f565b5f9182526020909120825460039092020180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03909216919091178155600180830154908201556002918201549101555b335f90815260a4602052604090208054806132b6576132b66145cf565b5f8281526020812060035f199093019283020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001818101839055600290910191909155915561330c90866145a9565b604080518481526020810184905291965033916001600160a01b038616917f921046659ea3b3b3f8e8fefd2bece3121b2d929ead94c696a75beedee477fdb6910160405180910390a3505050613054565b6133688160016145bc565b9050613054565b505f82116133bf5760405162461bcd60e51b815260206004820152601760248201527f6e6f204d6f72706820746f6b656e20746f20636c61696d000000000000000000604482015260640161082a565b6133c93383613cbb565b5050612a7f6001606555565b6001600160a01b0381165f90815260a460209081526040808320805482518185028101850190935280835260609492939192909184015b82821015613460575f848152602090819020604080516060810182526003860290920180546001600160a01b031683526001808201548486015260029091015491830191909152908352909201910161340c565b505050509050919050565b61347361372f565b6001600160a01b0381166134ef5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161082a565b61186d81613bc3565b613500613789565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ac2ac640336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b158015613586575f80fd5b505af1158015613598573d5f803e3d5ffd5b50505050612a7f6001606555565b5f6106ce825490565b60995460975460ff16156135d357609954609c5410156135ce5750609c545b6135e4565b609954609d5410156135e45750609d545b5f8167ffffffffffffffff8111156135fe576135fe614649565b604051908082528060200260200182016040528015613627578160200160208202803683370190505b5090505f5b8281101561369457609d81815481106136475761364761454f565b905f5260205f20015f9054906101000a90046001600160a01b03168282815181106136745761367461454f565b6001600160a01b039092166020928302919091019091015260010161362c565b506040517f9b8201a40000000000000000000000000000000000000000000000000000000081526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639b8201a4906136fa9084906004016149fe565b5f604051808303815f87803b158015613711575f80fd5b505af1158015613723573d5f803e3d5ffd5b50509151609b55505050565b6033546001600160a01b03163314612a7f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161082a565b6002606554036137db5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161082a565b6002606555565b6001606555565b5f6137fd836001600160a01b038416613f19565b9392505050565b5f805b6001600160a01b0384165f90815260a46020526040902054811015613884576001600160a01b038481165f90815260a460205260409020805491851691839081106138545761385461454f565b5f9182526020909120600390910201546001600160a01b03160361387c5760019150506106ce565b600101613807565b505f9392505050565b6040517fde6ac9330000000000000000000000000000000000000000000000000000000081526001600160a01b03838116600483015282811660248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063de6ac93390604401602060405180830381865afa158015613916573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061393a9190614a10565b159392505050565b5f6137fd836001600160a01b038416613ffc565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156139d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139fb9190614a2f565b6040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b0386811660048301528581166024830152604482018590529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303815f875af1158015613a8d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ab19190614a10565b506040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613b33573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613b579190614a2f565b90505f83118015613b70575082613b6e83836145a9565b145b613bbc5760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c65640000000000604482015260640161082a565b5050505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16613ca85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161082a565b612a7f614048565b5f6137fd83836140c4565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613d3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d609190614a2f565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af1158015613dea573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e0e9190614a10565b506040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613e90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613eb49190614a2f565b90505f83118015613ecd575082613ecb83836145a9565b145b610d065760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c65640000000000604482015260640161082a565b5f8181526001830160205260408120548015613ff3575f613f3b6001836145a9565b85549091505f90613f4e906001906145a9565b9050818114613fad575f865f018281548110613f6c57613f6c61454f565b905f5260205f200154905080875f018481548110613f8c57613f8c61454f565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080613fbe57613fbe6145cf565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f9055600193505050506106ce565b5f9150506106ce565b5f81815260018301602052604081205461404157508154600181810184555f8481526020808220909301849055845484825282860190935260409020919091556106ce565b505f6106ce565b5f54610100900460ff166137e25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161082a565b5f825f0182815481106140d9576140d961454f565b905f5260205f200154905092915050565b5080546140f690614676565b5f825580601f10614105575050565b601f0160209004905f5260205f209081019061186d91905b80821115614130575f815560010161411d565b5090565b6001600160a01b038116811461186d575f80fd5b5f60208284031215614158575f80fd5b81356137fd81614134565b5f8083601f840112614173575f80fd5b50813567ffffffffffffffff81111561418a575f80fd5b6020830191508360208260051b85010111156141a4575f80fd5b9250929050565b5f80602083850312156141bc575f80fd5b823567ffffffffffffffff8111156141d2575f80fd5b6141de85828601614163565b90969095509350505050565b5f602082840312156141fa575f80fd5b5035919050565b5f8060408385031215614212575f80fd5b823561421d81614134565b946020939093013593505050565b5f81518084525f5b8181101561424f57602081850181015186830182015201614233565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b83811015614324578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0018552815180516001600160a01b03168452878101518885015286015160608785018190526143108186018361422b565b9689019694505050908601906001016142b3565b509098975050505050505050565b5f805f805f8060a08789031215614347575f80fd5b863561435281614134565b9550602087013594506040870135935060608701359250608087013567ffffffffffffffff811115614382575f80fd5b61438e89828a01614163565b979a9699509497509295939492505050565b5f602082840312156143b0575f80fd5b813567ffffffffffffffff8111156143c6575f80fd5b8201606081850312156137fd575f80fd5b6001600160a01b0384168152826020820152606060408201525f6143fe606083018461422b565b95945050505050565b5f8060408385031215614418575f80fd5b823561442381614134565b9150602083013561443381614134565b809150509250929050565b5f805f60608486031215614450575f80fd5b833561445b81614134565b95602085013595506040909401359392505050565b5f815180845260208085019450602084015f5b838110156144a85781516001600160a01b031687529582019590820190600101614483565b509495945050505050565b828152604060208201525f6144cb6040830184614470565b949350505050565b602080825282518282018190525f919060409081850190868401855b8281101561452757815180516001600160a01b03168552868101518786015285015185850152606090930192908501906001016144ef565b5091979650505050505050565b5f60208284031215614544575f80fd5b81516137fd81614134565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103818111156106ce576106ce61457c565b808201808211156106ce576106ce61457c565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208082528181018390525f908460408401835b8681101561463e57823561462381614134565b6001600160a01b031682529183019190830190600101614610565b509695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600181811c9082168061468a57607f821691505b602082108103612233577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f816146cf576146cf61457c565b505f190190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f82614711576147116146d6565b500690565b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112614748575f80fd5b9190910192915050565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614785575f80fd5b83018035915067ffffffffffffffff82111561479f575f80fd5b6020019150368190038213156141a4575f80fd5b601f821115610bf457805f5260205f20601f840160051c810160208510156147d85750805b601f840160051c820191505b81811015613bbc575f81556001016147e4565b813561480281614134565b6001600160a01b0381167fffffffffffffffffffffffff000000000000000000000000000000000000000083541617825550600160208084013560018401556002830160408501357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1863603018112614879575f80fd5b8501803567ffffffffffffffff811115614891575f80fd5b80360384830113156148a1575f80fd5b6148b5816148af8554614676565b856147b3565b5f601f8211600181146148e8575f83156148d157508382018601355b5f19600385901b1c1916600184901b17855561495e565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b8281101561493457868501890135825593880193908901908801614915565b5084821015614952575f1960f88660031b161c198885880101351681555b505060018360011b0185555b505050505050505050565b83815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b5f826149ca576149ca6146d6565b500490565b80820281158282048414176106ce576106ce61457c565b5f5f1982036149f7576149f761457c565b5060010190565b602081525f6137fd6020830184614470565b5f60208284031215614a20575f80fd5b815180151581146137fd575f80fd5b5f60208284031215614a3f575f80fd5b505191905056fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"_otherStaking\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"percentage\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"epochEffective\",\"type\":\"uint256\"}],\"name\":\"CommissionUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"stakeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"effectiveEpoch\",\"type\":\"uint256\"}],\"name\":\"Delegated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldTime\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newTime\",\"type\":\"uint256\"}],\"name\":\"RewardStartTimeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldSize\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newSize\",\"type\":\"uint256\"}],\"name\":\"SequencerSetMaxSizeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"name\":\"StakerAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"stakerAddresses\",\"type\":\"address[]\"}],\"name\":\"StakerRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"effectiveEpoch\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"}],\"name\":\"Undelegated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"UndelegationClaimed\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DISTRIBUTE_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MESSENGER\",\"outputs\":[{\"internalType\":\"contractICrossDomainMessenger\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MORPH_TOKEN_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OTHER_STAKING\",\"outputs\":[{\"internalType\":\"contractStaking\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SEQUENCER_CONTRACT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo\",\"name\":\"add\",\"type\":\"tuple\"}],\"name\":\"addStaker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"candidateNumber\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"claimCommission\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"targetEpochIndex\",\"type\":\"uint256\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"claimUndelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"commissions\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentEpoch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"delegateStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"}],\"name\":\"delegations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo\",\"name\":\"add\",\"type\":\"tuple\"}],\"name\":\"emergencyAddStaker\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"remove\",\"type\":\"address[]\"}],\"name\":\"emergencyRemoveStakers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"pageSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pageIndex\",\"type\":\"uint256\"}],\"name\":\"getAllDelegatorsInPagination\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"delegatorsTotalNumber\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"delegatorsInPage\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"getDelegatorsLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakerAddressesLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakers\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_stakerAddresses\",\"type\":\"address[]\"}],\"name\":\"getStakesInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"}],\"name\":\"getUndelegations\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"}],\"internalType\":\"structIL2Staking.Undelegation[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_sequencersMaxSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_undelegateLockEpochs\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_rewardStartTime\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"internalType\":\"structTypes.StakerInfo[]\",\"name\":\"_stakers\",\"type\":\"tuple[]\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"isStakingTo\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestSequencerSetSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messenger\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"remove\",\"type\":\"address[]\"}],\"name\":\"removeStakers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rewardStartTime\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rewardStarted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sequencerSetMaxSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"commission\",\"type\":\"uint256\"}],\"name\":\"setCommissionRate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"stakerAddresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"stakerDelegations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"totalDelegationAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"stakerRankings\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"ranking\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"stakers\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"tmKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"blsKey\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"undelegateLockEpochs\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"undelegateStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"undelegations\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"unlockEpoch\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_rewardStartTime\",\"type\":\"uint256\"}],\"name\":\"updateRewardStartTime\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_sequencerSetMaxSize\",\"type\":\"uint256\"}],\"name\":\"updateSequencerSetMaxSize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", + Bin: "0x61012060405234801562000011575f80fd5b506040516200514b3803806200514b8339810160408190526200003491620000a7565b7353000000000000000000000000000000000000076080526001600160a01b031660a05273530000000000000000000000000000000000001360c05273530000000000000000000000000000000000001760e05273530000000000000000000000000000000000001461010052620000d6565b5f60208284031215620000b8575f80fd5b81516001600160a01b0381168114620000cf575f80fd5b9392505050565b60805160a05160c05160e05161010051614fab620001a05f395f818161044501528181610a7c01528181610b240152818161140f01528181611b29015281816135ce0152613d5e01525f818161055a0152613bae01525f818161067c01528181613e1f01528181613ed401528181613fc6015281816141bd0152818161426a015261435c01525f81816104ff015281816124a30152612a5001525f8181610408015281816105c201528181612479015281816124cd01528181612a260152612a7a0152614fab5ff3fe608060405234801561000f575f80fd5b50600436106102ec575f3560e01c8063746c8ae111610192578063affed0e0116100e8578063e10911b111610093578063f2fde38b1161006e578063f2fde38b146106cf578063fad99f98146106e2578063fc6facc6146106ea575f80fd5b8063e10911b11461069e578063ed70b343146106a6578063f0261bc2146106c6575f80fd5b8063cce6cf9f116100c3578063cce6cf9f14610643578063d31d83d914610656578063d557714114610677575f80fd5b8063affed0e0146105f1578063b5d2e0dc146105fa578063c64814dd14610619575f80fd5b80638da5cb5b1161014857806391bd43a41161012357806391bd43a41461059e578063927ede2d146105bd57806396ab994d146105e4575f80fd5b80638da5cb5b146105445780638e21d5fb146105555780639168ae721461057c575f80fd5b80637b05afb5116101785780637b05afb5146104db578063831cfb58146104fa57806384d7d1d414610521575f80fd5b8063746c8ae1146104cb57806376671808146104d3575f80fd5b80633b8024211161024757806343352d61116101fd57806346cdc18a116101d857806346cdc18a146104a85780637046529b146104b0578063715018a6146104c3575f80fd5b806343352d611461047a578063439162b514610482578063459598a214610495575f80fd5b80633cb747bf1161022d5780633cb747bf146104065780633d9353fe1461044057806340b5c83714610467575f80fd5b80633b802421146103ea5780633c323a1b146103f3575f80fd5b8063174e31c4116102a75780632e787be3116102825780632e787be3146103ae57806330158eea146103b75780633385ccc2146103d7575f80fd5b8063174e31c41461037f57806319fac8fd146103925780632cc138be146103a5575f80fd5b80630eb573af116102d75780630eb573af1461032b5780630f3b70591461033e57806312a3e94714610376575f80fd5b806243b758146102f05780629c6f0c14610316575b5f80fd5b6103036102fe36600461465b565b6106fd565b6040519081526020015b60405180910390f35b610329610324366004614676565b610723565b005b6103296103393660046146c0565b610901565b61035161034c3660046146d7565b610a14565b604080516001600160a01b03909416845260208401929092529082015260600161030d565b610303609a5481565b61032961038d3660046146d7565b610a5c565b6103296103a03660046146c0565b610bd4565b61030360985481565b61030360995481565b6103ca6103c5366004614749565b610cf6565b60405161030d91906147e9565b6103296103e536600461465b565b610f1d565b610303609c5481565b6103296104013660046146d7565b611557565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b03909116815260200161030d565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b6103296104753660046146c0565b611be6565b6103ca611cf9565b61032961049036600461488f565b611f15565b6104286104a33660046146c0565b612446565b609d54610303565b6103296104be366004614676565b61246e565b6103296125c8565b6103296125db565b6103036128cb565b6103036104e936600461465b565b60a06020525f908152604090205481565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b61053461052f36600461465b565b61293f565b604051901515815260200161030d565b6033546001600160a01b0316610428565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b61058f61058a36600461465b565b612969565b60405161030d939291906148fd565b6103036105ac36600461465b565b60a16020525f908152604090205481565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b6097546105349060ff1681565b61030360a55481565b61030361060836600461465b565b609e6020525f908152604090205481565b61030361062736600461492d565b60a360209081525f928352604080842090915290825290205481565b610329610651366004614959565b612a1b565b6106696106643660046149a1565b612f87565b60405161030d929190614a16565b6104287f000000000000000000000000000000000000000000000000000000000000000081565b610329613115565b6106b96106b436600461465b565b613499565b60405161030d9190614a36565b610303609b5481565b6103296106dd36600461465b565b61352f565b6103296135bc565b6103296106f8366004614959565b61366a565b6001600160a01b0381165f90815260a26020526040812061071d90613a35565b92915050565b61072b613a3e565b8160a55481146107825760405162461bcd60e51b815260206004820152600d60248201527f696e76616c6964206e6f6e63650000000000000000000000000000000000000060448201526064015b60405180910390fd5b61078d836001614ac4565b60a555609e5f6107a0602085018561465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20545f0361084257609d6107d5602084018461465b565b81546001810183555f9283526020808420909101805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039390931692909217909155609d5491609e916108289086018661465b565b6001600160a01b0316815260208101919091526040015f20555b81609f5f610853602084018461465b565b6001600160a01b0316815260208101919091526040015f206108758282614bf4565b506108859050602083018361465b565b6001600160a01b03167f058ecb29c230cd5df283c89e996187ed521393fe4546cd1b097921c4b2de293d60208401356108c16040860186614ad7565b6040516108d093929190614d5b565b60405180910390a260975460ff161580156108ef5750609954609d5411155b156108fc576108fc613a98565b505050565b610909613a3e565b5f8111801561091a57506099548114155b61098c5760405162461bcd60e51b815260206004820152602260248201527f696e76616c6964206e65772073657175656e63657220736574206d617820736960448201527f7a650000000000000000000000000000000000000000000000000000000000006064820152608401610779565b609980549082905560408051828152602081018490527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a16097545f9060ff166109e157609d546109e5565b609c545b90505f60995482106109f9576099546109fb565b815b9050609b548114610a0e57610a0e613a98565b50505050565b60a4602052815f5260405f208181548110610a2d575f80fd5b5f9182526020909120600390910201805460018201546002909201546001600160a01b03909116935090915083565b610a64613c18565b6001600160a01b038216610b1a576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016635cf20c7b336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602481018490526044015f604051808303815f87803b158015610aff575f80fd5b505af1158015610b11573d5f803e3d5ffd5b50505050610bc6565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663996cba6883336040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03928316600482015291166024820152604481018490526064015f604051808303815f87803b158015610baf575f80fd5b505af1158015610bc1573d5f803e3d5ffd5b505050505b610bd06001606555565b5050565b335f908152609e6020526040902054610c2f5760405162461bcd60e51b815260206004820152601360248201527f6f6e6c79207374616b657220616c6c6f776564000000000000000000000000006044820152606401610779565b6014811115610c805760405162461bcd60e51b815260206004820152601260248201527f696e76616c696420636f6d6d697373696f6e00000000000000000000000000006044820152606401610779565b335f90815260a06020526040812082905560975460ff16610ca1575f610cb4565b610ca96128cb565b610cb4906001614ac4565b604080518481526020810183905291925033917f6e500db30ce535d38852e318f333e9be41a3fec6c65d234ebb06203c896db9a5910160405180910390a25050565b60605f8267ffffffffffffffff811115610d1257610d12614b38565b604051908082528060200260200182016040528015610d5e57816020015b60408051606080820183525f808352602083015291810191909152815260200190600190039081610d305790505b5090505f5b83811015610f15576040518060600160405280609f5f888886818110610d8b57610d8b614dae565b9050602002016020810190610da0919061465b565b6001600160a01b03908116825260208083019390935260409091015f908120549091168352910190609f90888886818110610ddd57610ddd614dae565b9050602002016020810190610df2919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f888886818110610e2f57610e2f614dae565b9050602002016020810190610e44919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f206002018054610e7190614b65565b80601f0160208091040260200160405190810160405280929190818152602001828054610e9d90614b65565b8015610ee85780601f10610ebf57610100808354040283529160200191610ee8565b820191905f5260205f20905b815481529060010190602001808311610ecb57829003601f168201915b5050505050815250828281518110610f0257610f02614dae565b6020908102919091010152600101610d63565b509392505050565b610f25613c18565b6001600160a01b0381165f90815260a360209081526040808320338452909152902054610f945760405162461bcd60e51b815260206004820152601660248201527f7374616b696e6720616d6f756e74206973207a65726f000000000000000000006044820152606401610779565b6001600160a01b0381165f908152609e60205260408120546097549015919060ff16610fc0575f610fd3565b610fc86128cb565b610fd3906001614ac4565b6097549091505f9060ff168015610fe8575082155b610ff25781610fff565b609a54610fff9083614ac4565b604080516060810182526001600160a01b038781168083525f81815260a36020908152858220338084528183528784208054848901908152888a018b815283875260a486528a87208054600180820183559189528789208c51600390920201805473ffffffffffffffffffffffffffffffffffffffff191691909b16178a558251908a015551600290980197909755908452908252829055925191815260a1909252928120805494955091936110b6908490614ddb565b90915550506001600160a01b0385165f90815260a2602052604090206110dc9033613c78565b506001600160a01b0385165f908152609e602052604090205484158015611105575060975460ff165b80156111125750609c5481105b15611373576001600160a01b0386165f908152609e602052604081205461113b90600190614ddb565b90505b6001609c5461114d9190614ddb565b8110156113715760a15f609d838154811061116a5761116a614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040018120549060a190609d61119f856001614ac4565b815481106111af576111af614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611369575f609d82815481106111ed576111ed614dae565b5f918252602090912001546001600160a01b03169050609d611210836001614ac4565b8154811061122057611220614dae565b5f91825260209091200154609d80546001600160a01b03909216918490811061124b5761124b614dae565b5f918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039290921691909117905580609d61128e846001614ac4565b8154811061129e5761129e614dae565b5f918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03929092169190911790556112de826001614ac4565b609e5f609d85815481106112f4576112f4614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055611323826002614ac4565b609e5f609d611333866001614ac4565b8154811061134357611343614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b60010161113e565b505b8415801561139657506001600160a01b0386165f90815260a16020526040902054155b156113b3576001609c5f8282546113ad9190614ddb565b90915550505b6001600160a01b038681165f81815260a160205260408082205481517f7f683ee30000000000000000000000000000000000000000000000000000000081526004810194909452336024850152604484018990526064840152517f000000000000000000000000000000000000000000000000000000000000000090931692637f683ee392608480820193929182900301818387803b158015611454575f80fd5b505af1158015611466573d5f803e3d5ffd5b505050506114713390565b6001600160a01b0316866001600160a01b03167f92039db29d8c0a1aa1433fe109c69488c8c5e51b23c9de7d303ad80c1fef778c846020015187876040516114cc939291909283526020830191909152604082015260600190565b60405180910390a3841580156114e4575060975460ff165b80156114f25750609b548111155b80156115385750609b546001600160a01b0387165f908152609e602052604090205411806115385750609c546001600160a01b0387165f908152609e6020526040902054115b1561154557611545613a98565b50505050506115546001606555565b50565b6001600160a01b0382165f908152609e602052604090205482906115bd5760405162461bcd60e51b815260206004820152600a60248201527f6e6f74207374616b6572000000000000000000000000000000000000000000006044820152606401610779565b6115c5613c18565b5f82116116145760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964207374616b6520616d6f756e740000000000000000000000006044820152606401610779565b61161e3384613c93565b1561166b5760405162461bcd60e51b815260206004820152601660248201527f756e64656c65676174696f6e20756e636c61696d6564000000000000000000006044820152606401610779565b6001600160a01b0383165f90815260a3602090815260408083203384529091529020546116e95761169c3384613d1c565b156116e95760405162461bcd60e51b815260206004820152601060248201527f72657761726420756e636c61696d6564000000000000000000000000000000006044820152606401610779565b6001600160a01b0383165f90815260a1602052604081208054849290611710908490614ac4565b90915550506001600160a01b0383165f90815260a36020908152604080832033845290915281208054849290611747908490614ac4565b90915550506001600160a01b0383165f90815260a26020526040902061176d9033613dd1565b506001600160a01b0383165f90815260a160205260409020548290036117a5576001609c5f82825461179f9190614ac4565b90915550505b6001600160a01b0383165f908152609e602052604090205460975460ff1680156117cf5750600181115b15611a15575f6117e0600183614ddb565b90505b8015611a135760a15f609d6117f9600185614ddb565b8154811061180957611809614dae565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d848154811061185a5761185a614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115611a01575f609d611892600184614ddb565b815481106118a2576118a2614dae565b5f91825260209091200154609d80546001600160a01b03909216925090839081106118cf576118cf614dae565b5f918252602090912001546001600160a01b0316609d6118f0600185614ddb565b8154811061190057611900614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d838154811061193f5761193f614dae565b5f9182526020822001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0393909316929092179091558290609e90609d611986600185614ddb565b8154811061199657611996614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020556119c5826001614ac4565b609e5f609d85815481106119db576119db614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055505b80611a0b81614dee565b9150506117e3565b505b6097545f9060ff16611a27575f611a3a565b611a2f6128cb565b611a3a906001614ac4565b6001600160a01b0386165f81815260a36020908152604080832033808552908352928190205481519081529182018990528181018590525193945090927fc4ad67bad2c1f682946a406d840f1b273f5cd5a53fcc1a03d078d92bfa2e07d09181900360600190a36001600160a01b038581165f81815260a360209081526040808320338085528184528285205486865260a18552838620548287529290945282517fb809af0f000000000000000000000000000000000000000000000000000000008152600481019690965260248601526044850187905260648501839052608485015290881460a4840152517f00000000000000000000000000000000000000000000000000000000000000009093169263b809af0f9260c480820193929182900301818387803b158015611b6e575f80fd5b505af1158015611b80573d5f803e3d5ffd5b50505050611b95611b8e3390565b3086613de5565b60975460ff168015611ba85750609b5482115b8015611bcd57506099546001600160a01b0386165f908152609e602052604090205411155b15611bda57611bda613a98565b50506108fc6001606555565b611bee613a3e565b60975460ff1615611c415760405162461bcd60e51b815260206004820152601660248201527f72657761726420616c72656164792073746172746564000000000000000000006044820152606401610779565b4281118015611c5a5750611c586201518082614e30565b155b8015611c6857506098548114155b611cb45760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d65000000000000006044820152606401610779565b609880549082905560408051828152602081018490527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a15050565b609d546060905f9067ffffffffffffffff811115611d1957611d19614b38565b604051908082528060200260200182016040528015611d6557816020015b60408051606080820183525f808352602083015291810191909152815260200190600190039081611d375790505b5090505f5b609d54811015611f0f576040518060600160405280609f5f609d8581548110611d9557611d95614dae565b5f9182526020808320909101546001600160a01b0390811684528382019490945260409092018120549092168352609d80549390910192609f92919086908110611de157611de1614dae565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f20600101548152602001609f5f609d8581548110611e3a57611e3a614dae565b5f9182526020808320909101546001600160a01b0316835282019290925260400190206002018054611e6b90614b65565b80601f0160208091040260200160405190810160405280929190818152602001828054611e9790614b65565b8015611ee25780601f10611eb957610100808354040283529160200191611ee2565b820191905f5260205f20905b815481529060010190602001808311611ec557829003601f168201915b5050505050815250828281518110611efc57611efc614dae565b6020908102919091010152600101611d6a565b50919050565b5f54610100900460ff1615808015611f3357505f54600160ff909116105b80611f4c5750303b158015611f4c57505f5460ff166001145b611fbe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610779565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561201a575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b0387166120705760405162461bcd60e51b815260206004820152601560248201527f696e76616c6964206f776e6572206164647265737300000000000000000000006044820152606401610779565b5f86116120e55760405162461bcd60e51b815260206004820152602260248201527f73657175656e6365727353697a65206d7573742067726561746572207468616e60448201527f20300000000000000000000000000000000000000000000000000000000000006064820152608401610779565b5f85116121345760405162461bcd60e51b815260206004820152601c60248201527f696e76616c696420756e64656c65676174654c6f636b45706f636873000000006044820152606401610779565b428411801561214d575061214b6201518085614e30565b155b6121995760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d65000000000000006044820152606401610779565b816121e65760405162461bcd60e51b815260206004820152601760248201527f696e76616c696420696e697469616c207374616b6572730000000000000000006044820152606401610779565b6121ef87614096565b6121f76140f4565b6099869055609a8590556098849055609b8290555f5b609b548110156123685783838281811061222957612229614dae565b905060200281019061223b9190614e43565b609f5f86868581811061225057612250614dae565b90506020028101906122629190614e43565b61227090602081019061465b565b6001600160a01b0316815260208101919091526040015f206122928282614bf4565b905050609d8484838181106122a9576122a9614dae565b90506020028101906122bb9190614e43565b6122c990602081019061465b565b8154600180820184555f938452602090932001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055612312908290614ac4565b609e5f86868581811061232757612327614dae565b90506020028101906123399190614e43565b61234790602081019061465b565b6001600160a01b0316815260208101919091526040015f205560010161220d565b50604080515f8152602081018890527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a1604080515f8152602081018690527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a1801561243d575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b609d8181548110612455575f80fd5b5f918252602090912001546001600160a01b0316905081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561255657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612527573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061254b9190614e7f565b6001600160a01b0316145b61072b5760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f77656400000000000000000000000000000000000000006064820152608401610779565b6125d0613a3e565b6125d95f614096565b565b6125e3613a3e565b60985442101561265a5760405162461bcd60e51b8152602060048201526024808201527f63616e2774207374617274206265666f7265207265776172642073746172742060448201527f74696d65000000000000000000000000000000000000000000000000000000006064820152608401610779565b5f609c54116126ab5760405162461bcd60e51b815260206004820152600e60248201527f6e6f6e652063616e6469646174650000000000000000000000000000000000006044820152606401610779565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091555b609d54811015612868575f5b8181101561285f5760a15f609d838154811061270457612704614dae565b905f5260205f20015f9054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020015f205460a15f609d858154811061275557612755614dae565b5f9182526020808320909101546001600160a01b031683528201929092526040019020541115612857575f609d828154811061279357612793614dae565b5f91825260209091200154609d80546001600160a01b03909216925090849081106127c0576127c0614dae565b5f91825260209091200154609d80546001600160a01b0390921691849081106127eb576127eb614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555080609d848154811061282a5761282a614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550505b6001016126e6565b506001016126da565b505f5b609d548110156128c257612880816001614ac4565b609e5f609d848154811061289657612896614dae565b5f9182526020808320909101546001600160a01b0316835282019290925260400190205560010161286b565b506125d9613a98565b5f60985442101561291e5760405162461bcd60e51b815260206004820152601960248201527f726577617264206973206e6f74207374617274656420796574000000000000006044820152606401610779565b62015180609854426129309190614ddb565b61293a9190614e9a565b905090565b6001600160a01b0381165f90815260a360209081526040808320338452909152812054151561071d565b609f6020525f90815260409020805460018201546002830180546001600160a01b0390931693919261299a90614b65565b80601f01602080910402602001604051908101604052809291908181526020018280546129c690614b65565b8015612a115780601f106129e857610100808354040283529160200191612a11565b820191905f5260205f20905b8154815290600101906020018083116129f457829003601f168201915b5050505050905083565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015612b0357507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ad4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612af89190614e7f565b6001600160a01b0316145b612b755760405162461bcd60e51b815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f77656400000000000000000000000000000000000000006064820152608401610779565b8260a5548114612bc75760405162461bcd60e51b815260206004820152600d60248201527f696e76616c6964206e6f6e6365000000000000000000000000000000000000006044820152606401610779565b612bd2846001614ac4565b60a5555f805b83811015612f3857609b54609e5f878785818110612bf857612bf8614dae565b9050602002016020810190612c0d919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205411612c3757600191505b5f609e5f878785818110612c4d57612c4d614dae565b9050602002016020810190612c62919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115612eba575f6001609e5f888886818110612ca057612ca0614dae565b9050602002016020810190612cb5919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f2054612cdf9190614ddb565b90505b609d54612cf190600190614ddb565b811015612dc357609d612d05826001614ac4565b81548110612d1557612d15614dae565b5f91825260209091200154609d80546001600160a01b039092169183908110612d4057612d40614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506001609e5f609d8481548110612d8357612d83614dae565b5f9182526020808320909101546001600160a01b0316835282019290925260400181208054909190612db6908490614ddb565b9091555050600101612ce2565b50609d805480612dd557612dd5614ead565b5f8281526020812082015f19908101805473ffffffffffffffffffffffffffffffffffffffff19169055909101909155609e90868684818110612e1a57612e1a614dae565b9050602002016020810190612e2f919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205f90555f60a15f878785818110612e6757612e67614dae565b9050602002016020810190612e7c919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20541115612eba576001609c5f828254612eb49190614ddb565b90915550505b609f5f868684818110612ecf57612ecf614dae565b9050602002016020810190612ee4919061465b565b6001600160a01b0316815260208101919091526040015f908120805473ffffffffffffffffffffffffffffffffffffffff191681556001810182905590612f2e60028301826145fd565b5050600101612bd8565b507f3511bf213f9290ba907e91e12a43e8471251e1879580ae5509292a3514c23f618484604051612f6a929190614eda565b60405180910390a18015612f8057612f80613a98565b5050505050565b5f60605f8411612fd95760405162461bcd60e51b815260206004820152601160248201527f696e76616c696420706167652073697a650000000000000000000000000000006044820152606401610779565b6001600160a01b0385165f90815260a260205260409020612ff990613a35565b91508367ffffffffffffffff81111561301457613014614b38565b60405190808252806020026020018201604052801561303d578160200160208202803683370190505b5090505f61304b8486614f27565b90505f600161305a8682614ac4565b6130649088614f27565b61306e9190614ddb565b905061307b600185614ddb565b8111156130905761308d600185614ddb565b90505b815f5b828211613109576130c7826130a781614f3e565b6001600160a01b038c165f90815260a26020526040902090945090614178565b85826130d281614f3e565b9350815181106130e4576130e4614dae565b60200260200101906001600160a01b031690816001600160a01b031681525050613093565b50505050935093915050565b61311d613c18565b335f90815260a46020526040812054815b818110156134335760975460ff16158061317e575061314b6128cb565b335f90815260a46020526040902080548390811061316b5761316b614dae565b905f5260205f2090600302016002015411155b1561342157335f90815260a4602052604090208054829081106131a3576131a3614dae565b905f5260205f20906003020160010154836131be9190614ac4565b335f90815260a46020526040812080549295509091839081106131e3576131e3614dae565b5f91825260208220600390910201546001600160a01b0316915060a4816132073390565b6001600160a01b03166001600160a01b031681526020019081526020015f20838154811061323757613237614dae565b905f5260205f2090600302016002015490505f60a45f6132543390565b6001600160a01b03166001600160a01b031681526020019081526020015f20848154811061328457613284614dae565b905f5260205f2090600302016001015490506001856132a39190614ddb565b84101561336857335f90815260a4602052604090206132c3600187614ddb565b815481106132d3576132d3614dae565b905f5260205f20906003020160a45f6132e93390565b6001600160a01b03166001600160a01b031681526020019081526020015f20858154811061331957613319614dae565b5f91825260209091208254600390920201805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03909216919091178155600180830154908201556002918201549101555b335f90815260a46020526040902080548061338557613385614ead565b5f8281526020812060035f1990930192830201805473ffffffffffffffffffffffffffffffffffffffff19168155600181810183905560029091019190915591556133d09086614ddb565b604080518481526020810184905291965033916001600160a01b038616917f921046659ea3b3b3f8e8fefd2bece3121b2d929ead94c696a75beedee477fdb6910160405180910390a350505061312e565b61342c816001614ac4565b905061312e565b505f82116134835760405162461bcd60e51b815260206004820152601760248201527f6e6f204d6f72706820746f6b656e20746f20636c61696d0000000000000000006044820152606401610779565b61348d3383614183565b50506125d96001606555565b6001600160a01b0381165f90815260a460209081526040808320805482518185028101850190935280835260609492939192909184015b82821015613524575f848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016134d0565b505050509050919050565b613537613a3e565b6001600160a01b0381166135b35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610779565b61155481614096565b6135c4613c18565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ac2ac640336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b15801561364a575f80fd5b505af115801561365c573d5f803e3d5ffd5b505050506125d96001606555565b613672613a3e565b8260a55481146136c45760405162461bcd60e51b815260206004820152600d60248201527f696e76616c6964206e6f6e6365000000000000000000000000000000000000006044820152606401610779565b6136cf846001614ac4565b60a5555f805b83811015612f3857609b54609e5f8787858181106136f5576136f5614dae565b905060200201602081019061370a919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20541161373457600191505b5f609e5f87878581811061374a5761374a614dae565b905060200201602081019061375f919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205411156139b7575f6001609e5f88888681811061379d5761379d614dae565b90506020020160208101906137b2919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f20546137dc9190614ddb565b90505b609d546137ee90600190614ddb565b8110156138c057609d613802826001614ac4565b8154811061381257613812614dae565b5f91825260209091200154609d80546001600160a01b03909216918390811061383d5761383d614dae565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055506001609e5f609d848154811061388057613880614dae565b5f9182526020808320909101546001600160a01b03168352820192909252604001812080549091906138b3908490614ddb565b90915550506001016137df565b50609d8054806138d2576138d2614ead565b5f8281526020812082015f19908101805473ffffffffffffffffffffffffffffffffffffffff19169055909101909155609e9086868481811061391757613917614dae565b905060200201602081019061392c919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205f90555f60a15f87878581811061396457613964614dae565b9050602002016020810190613979919061465b565b6001600160a01b03166001600160a01b031681526020019081526020015f205411156139b7576001609c5f8282546139b19190614ddb565b90915550505b609f5f8686848181106139cc576139cc614dae565b90506020020160208101906139e1919061465b565b6001600160a01b0316815260208101919091526040015f908120805473ffffffffffffffffffffffffffffffffffffffff191681556001810182905590613a2b60028301826145fd565b50506001016136d5565b5f61071d825490565b6033546001600160a01b031633146125d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610779565b60995460975460ff1615613abc57609954609c541015613ab75750609c545b613acd565b609954609d541015613acd5750609d545b5f8167ffffffffffffffff811115613ae757613ae7614b38565b604051908082528060200260200182016040528015613b10578160200160208202803683370190505b5090505f5b82811015613b7d57609d8181548110613b3057613b30614dae565b905f5260205f20015f9054906101000a90046001600160a01b0316828281518110613b5d57613b5d614dae565b6001600160a01b0390921660209283029190910190910152600101613b15565b506040517f9b8201a40000000000000000000000000000000000000000000000000000000081526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639b8201a490613be3908490600401614f56565b5f604051808303815f87803b158015613bfa575f80fd5b505af1158015613c0c573d5f803e3d5ffd5b50509151609b55505050565b600260655403613c6a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002606555565b6001606555565b5f613c8c836001600160a01b03841661442c565b9392505050565b5f805b6001600160a01b0384165f90815260a46020526040902054811015613d13576001600160a01b038481165f90815260a46020526040902080549185169183908110613ce357613ce3614dae565b5f9182526020909120600390910201546001600160a01b031603613d0b57600191505061071d565b600101613c96565b505f9392505050565b6040517fde6ac9330000000000000000000000000000000000000000000000000000000081526001600160a01b03838116600483015282811660248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063de6ac93390604401602060405180830381865afa158015613da5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613dc99190614f68565b159392505050565b5f613c8c836001600160a01b03841661450f565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015613e66573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e8a9190614f87565b6040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b0386811660048301528581166024830152604482018590529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303815f875af1158015613f1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f409190614f68565b613f8c5760405162461bcd60e51b815260206004820152601360248201527f7472616e7366657246726f6d206661696c6564000000000000000000000000006044820152606401610779565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa15801561400d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906140319190614f87565b90505f8311801561404a5750826140488383614ddb565b145b612f805760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610779565b603380546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166141705760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610779565b6125d961455b565b5f613c8c83836145d7565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015614204573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142289190614f87565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af11580156142b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142d69190614f68565b6143225760405162461bcd60e51b815260206004820152600f60248201527f7472616e73666572206661696c656400000000000000000000000000000000006044820152606401610779565b6040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156143a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906143c79190614f87565b90505f831180156143e05750826143de8383614ddb565b145b610a0e5760405162461bcd60e51b815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c656400000000006044820152606401610779565b5f8181526001830160205260408120548015614506575f61444e600183614ddb565b85549091505f9061446190600190614ddb565b90508181146144c0575f865f01828154811061447f5761447f614dae565b905f5260205f200154905080875f01848154811061449f5761449f614dae565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806144d1576144d1614ead565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f90556001935050505061071d565b5f91505061071d565b5f81815260018301602052604081205461455457508154600181810184555f84815260208082209093018490558454848252828601909352604090209190915561071d565b505f61071d565b5f54610100900460ff16613c715760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610779565b5f825f0182815481106145ec576145ec614dae565b905f5260205f200154905092915050565b50805461460990614b65565b5f825580601f10614618575050565b601f0160209004905f5260205f209081019061155491905b80821115614643575f8155600101614630565b5090565b6001600160a01b0381168114611554575f80fd5b5f6020828403121561466b575f80fd5b8135613c8c81614647565b5f8060408385031215614687575f80fd5b82359150602083013567ffffffffffffffff8111156146a4575f80fd5b8301606081860312156146b5575f80fd5b809150509250929050565b5f602082840312156146d0575f80fd5b5035919050565b5f80604083850312156146e8575f80fd5b82356146f381614647565b946020939093013593505050565b5f8083601f840112614711575f80fd5b50813567ffffffffffffffff811115614728575f80fd5b6020830191508360208260051b8501011115614742575f80fd5b9250929050565b5f806020838503121561475a575f80fd5b823567ffffffffffffffff811115614770575f80fd5b61477c85828601614701565b90969095509350505050565b5f81518084525f5b818110156147ac57602081850181015186830182015201614790565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b83811015614881578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0018552815180516001600160a01b031684528781015188850152860151606087850181905261486d81860183614788565b968901969450505090860190600101614810565b509098975050505050505050565b5f805f805f8060a087890312156148a4575f80fd5b86356148af81614647565b9550602087013594506040870135935060608701359250608087013567ffffffffffffffff8111156148df575f80fd5b6148eb89828a01614701565b979a9699509497509295939492505050565b6001600160a01b0384168152826020820152606060408201525f6149246060830184614788565b95945050505050565b5f806040838503121561493e575f80fd5b823561494981614647565b915060208301356146b581614647565b5f805f6040848603121561496b575f80fd5b83359250602084013567ffffffffffffffff811115614988575f80fd5b61499486828701614701565b9497909650939450505050565b5f805f606084860312156149b3575f80fd5b83356149be81614647565b95602085013595506040909401359392505050565b5f815180845260208085019450602084015f5b83811015614a0b5781516001600160a01b0316875295820195908201906001016149e6565b509495945050505050565b828152604060208201525f614a2e60408301846149d3565b949350505050565b602080825282518282018190525f919060409081850190868401855b82811015614a8a57815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101614a52565b5091979650505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561071d5761071d614a97565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614b0a575f80fd5b83018035915067ffffffffffffffff821115614b24575f80fd5b602001915036819003821315614742575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600181811c90821680614b7957607f821691505b602082108103611f0f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b601f8211156108fc57805f5260205f20601f840160051c81016020851015614bd55750805b601f840160051c820191505b81811015612f80575f8155600101614be1565b8135614bff81614647565b6001600160a01b03811673ffffffffffffffffffffffffffffffffffffffff1983541617825550600160208084013560018401556002830160408501357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1863603018112614c6b575f80fd5b8501803567ffffffffffffffff811115614c83575f80fd5b8036038483011315614c93575f80fd5b614ca781614ca18554614b65565b85614bb0565b5f601f821160018114614cda575f8315614cc357508382018601355b5f19600385901b1c1916600184901b178555614d50565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b82811015614d2657868501890135825593880193908901908801614d07565b5084821015614d44575f1960f88660031b161c198885880101351681555b505060018360011b0185555b505050505050505050565b83815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b8181038181111561071d5761071d614a97565b5f81614dfc57614dfc614a97565b505f190190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f82614e3e57614e3e614e03565b500690565b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112614e75575f80fd5b9190910192915050565b5f60208284031215614e8f575f80fd5b8151613c8c81614647565b5f82614ea857614ea8614e03565b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208082528181018390525f908460408401835b86811015614f1c578235614f0181614647565b6001600160a01b031682529183019190830190600101614eee565b509695505050505050565b808202811582820484141761071d5761071d614a97565b5f5f198203614f4f57614f4f614a97565b5060010190565b602081525f613c8c60208301846149d3565b5f60208284031215614f78575f80fd5b81518015158114613c8c575f80fd5b5f60208284031215614f97575f80fd5b505191905056fea164736f6c6343000818000a", } // L2StakingABI is the input ABI used to generate the binding from. diff --git a/bindings/bindings/l2staking_more.go b/bindings/bindings/l2staking_more.go index 9488720ab..082a8d2e7 100644 --- a/bindings/bindings/l2staking_more.go +++ b/bindings/bindings/l2staking_more.go @@ -13,7 +13,7 @@ const L2StakingStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\ var L2StakingStorageLayout = new(solc.StorageLayout) -var L2StakingDeployedBin = "0x608060405234801561000f575f80fd5b50600436106102cc575f3560e01c8063715018a61161017c578063927ede2d116100dd578063d557714111610093578063f0261bc21161006e578063f0261bc2146106b1578063f2fde38b146106ba578063fad99f98146106cd575f80fd5b8063d557714114610662578063e10911b114610689578063ed70b34314610691575f80fd5b8063b5d2e0dc116100c3578063b5d2e0dc146105f8578063c64814dd14610617578063d31d83d914610641575f80fd5b8063927ede2d146105c457806396ab994d146105eb575f80fd5b806384d7d1d4116101325780638e21d5fb116101185780638e21d5fb1461055c5780639168ae721461058357806391bd43a4146105a5575f80fd5b806384d7d1d41461051b5780638da5cb5b1461053e575f80fd5b8063766718081161016257806376671808146104cd5780637b05afb5146104d5578063831cfb58146104f4575f80fd5b8063715018a6146104bd578063746c8ae1146104c5575f80fd5b80633385ccc21161023157806340b5c837116101e7578063459598a2116101c2578063459598a21461048f57806346cdc18a146104a25780636d454d51146104aa575f80fd5b806340b5c8371461046157806343352d6114610474578063439162b51461047c575f80fd5b80633c323a1b116102175780633c323a1b146103e05780633cb747bf146103f35780633d9353fe1461043a575f80fd5b80633385ccc2146103c45780633b802421146103d7575f80fd5b8063174e31c4116102865780632cc138be1161026c5780632cc138be146103925780632e787be31461039b57806330158eea146103a4575f80fd5b8063174e31c41461036c57806319fac8fd1461037f575f80fd5b80630eb573af116102b65780630eb573af1461030b5780630f3b70591461031e57806312a3e94714610363575f80fd5b806243b758146102d05780630be67fcc146102f6575b5f80fd5b6102e36102de366004614bd5565b6106d5565b6040519081526020015b60405180910390f35b610309610304366004614c38565b610708565b005b610309610319366004614c77565b610d5d565b61033161032c366004614c8e565b610e8a565b6040805173ffffffffffffffffffffffffffffffffffffffff90941684526020840192909252908201526060016102ed565b6102e3609a5481565b61030961037a366004614c8e565b610edf565b61030961038d366004614c77565b611098565b6102e360985481565b6102e360995481565b6103b76103b2366004614c38565b6111ee565b6040516102ed9190614d19565b6103096103d2366004614bd5565b611456565b6102e3609c5481565b6103096103ee366004614c8e565b611bcf565b7f00000000000000000000000000000000000000000000000000000000000000005b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016102ed565b6104157f000000000000000000000000000000000000000000000000000000000000000081565b61030961046f366004614c77565b6123e2565b6103b7612529565b61030961048a366004614dcc565b612786565b61041561049d366004614c77565b612d92565b609d546102e3565b6103096104b8366004614e3a565b612dc7565b610309613134565b610309613147565b6102e36134fa565b6102e36104e3366004614bd5565b60a06020525f908152604090205481565b6104157f000000000000000000000000000000000000000000000000000000000000000081565b61052e610529366004614bd5565b613588565b60405190151581526020016102ed565b60335473ffffffffffffffffffffffffffffffffffffffff16610415565b6104157f000000000000000000000000000000000000000000000000000000000000000081565b610596610591366004614bd5565b6135bf565b6040516102ed93929190614e71565b6102e36105b3366004614bd5565b60a16020525f908152604090205481565b6104157f000000000000000000000000000000000000000000000000000000000000000081565b60975461052e9060ff1681565b6102e3610606366004614bd5565b609e6020525f908152604090205481565b6102e3610625366004614eae565b60a360209081525f928352604080842090915290825290205481565b61065461064f366004614ee5565b61367e565b6040516102ed929190614f67565b6104157f000000000000000000000000000000000000000000000000000000000000000081565b610309613839565b6106a461069f366004614bd5565b613c81565b6040516102ed9190614f87565b6102e3609b5481565b6103096106c8366004614bd5565b613d31565b610309613de5565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a26020526040812061070290613ead565b92915050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614801561082457507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061080c9190614ff5565b73ffffffffffffffffffffffffffffffffffffffff16145b6108b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f776564000000000000000000000000000000000000000060648201526084015b60405180910390fd5b5f805b82811015610d1057609b54609e5f8686858181106108d8576108d8615010565b90506020020160208101906108ed9190614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541161093157600191505b5f609e5f86868581811061094757610947615010565b905060200201602081019061095c9190614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541115610c7a575f6001609e5f8787868181106109b4576109b4615010565b90506020020160208101906109c99190614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610a0d919061506a565b90505b609d54610a1f9060019061506a565b811015610b2557609d610a3382600161507d565b81548110610a4357610a43615010565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff9092169183908110610a7b57610a7b615010565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001609e5f609d8481548110610ad857610ad8615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400181208054909190610b1890849061506a565b9091555050600101610a10565b50609d805480610b3757610b37615090565b5f8281526020812082017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055909101909155609e90858584818110610ba657610ba6615010565b9050602002016020810190610bbb9190614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f90555f60a15f868685818110610c0d57610c0d615010565b9050602002016020810190610c229190614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541115610c7a576001609c5f828254610c74919061506a565b90915550505b609f5f858584818110610c8f57610c8f615010565b9050602002016020810190610ca49190614bd5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f90812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590610d066002830182614b6a565b50506001016108b8565b507f3511bf213f9290ba907e91e12a43e8471251e1879580ae5509292a3514c23f618383604051610d429291906150bd565b60405180910390a18015610d5857610d58613eb6565b505050565b610d6561405d565b5f81118015610d7657506099548114155b610e02576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f696e76616c6964206e65772073657175656e63657220736574206d617820736960448201527f7a6500000000000000000000000000000000000000000000000000000000000060648201526084016108ac565b609980549082905560408051828152602081018490527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a16097545f9060ff16610e5757609d54610e5b565b609c545b90505f6099548210610e6f57609954610e71565b815b9050609b548114610e8457610e84613eb6565b50505050565b60a4602052815f5260405f208181548110610ea3575f80fd5b5f91825260209091206003909102018054600182015460029092015473ffffffffffffffffffffffffffffffffffffffff909116935090915083565b610ee76140de565b73ffffffffffffffffffffffffffffffffffffffff8216610fc45773ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016635cf20c7b336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602481018490526044015f604051808303815f87803b158015610fa9575f80fd5b505af1158015610fbb573d5f803e3d5ffd5b5050505061108a565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001663996cba6883336040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604481018490526064015f604051808303815f87803b158015611073575f80fd5b505af1158015611085573d5f803e3d5ffd5b505050505b6110946001606555565b5050565b335f908152609e602052604090205461110d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f6f6e6c79207374616b657220616c6c6f7765640000000000000000000000000060448201526064016108ac565b6014811115611178576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420636f6d6d697373696f6e000000000000000000000000000060448201526064016108ac565b335f90815260a06020526040812082905560975460ff16611199575f6111ac565b6111a16134fa565b6111ac90600161507d565b604080518481526020810183905291925033917f6e500db30ce535d38852e318f333e9be41a3fec6c65d234ebb06203c896db9a5910160405180910390a25050565b60605f8267ffffffffffffffff81111561120a5761120a615117565b60405190808252806020026020018201604052801561125657816020015b60408051606080820183525f8083526020830152918101919091528152602001906001900390816112285790505b5090505f5b8381101561144e576040518060600160405280609f5f88888681811061128357611283615010565b90506020020160208101906112989190614bd5565b73ffffffffffffffffffffffffffffffffffffffff908116825260208083019390935260409091015f908120549091168352910190609f908888868181106112e2576112e2615010565b90506020020160208101906112f79190614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600101548152602001609f5f88888681811061134e5761134e615010565b90506020020160208101906113639190614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2060020180546113aa90615144565b80601f01602080910402602001604051908101604052809291908181526020018280546113d690615144565b80156114215780601f106113f857610100808354040283529160200191611421565b820191905f5260205f20905b81548152906001019060200180831161140457829003601f168201915b505050505081525082828151811061143b5761143b615010565b602090810291909101015260010161125b565b509392505050565b61145e6140de565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a3602090815260408083203384529091529020546114f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f7374616b696e6720616d6f756e74206973207a65726f0000000000000000000060448201526064016108ac565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609e60205260408120546097549015919060ff1661152d575f611540565b6115356134fa565b61154090600161507d565b6097549091505f9060ff168015611555575082155b61155f578161156c565b609a5461156c908361507d565b6040805160608101825273ffffffffffffffffffffffffffffffffffffffff8781168083525f81815260a36020908152858220338084528183528784208054848901908152888a018b815283875260a486528a87208054600180820183559189528789208c5160039092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909b16178a558251908a015551600290980197909755908452908252829055925191815260a19092529281208054949550919361163b90849061506a565b909155505073ffffffffffffffffffffffffffffffffffffffff85165f90815260a26020526040902061166e9033614158565b5073ffffffffffffffffffffffffffffffffffffffff85165f908152609e6020526040902054841580156116a4575060975460ff165b80156116b15750609c5481105b1561199d5773ffffffffffffffffffffffffffffffffffffffff86165f908152609e60205260408120546116e79060019061506a565b90505b6001609c546116f9919061506a565b81101561199b5760a15f609d838154811061171657611716615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040018120549060a190609d61175885600161507d565b8154811061176857611768615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040019020541115611993575f609d82815481106117b3576117b3615010565b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff169050609d6117e383600161507d565b815481106117f3576117f3615010565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff909216918490811061182b5761182b615010565b5f91825260209091200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905580609d61188684600161507d565b8154811061189657611896615010565b5f91825260209091200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff929092169190911790556118ee82600161507d565b609e5f609d858154811061190457611904615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205561194082600261507d565b609e5f609d61195086600161507d565b8154811061196057611960615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902055505b6001016116ea565b505b841580156119cd575073ffffffffffffffffffffffffffffffffffffffff86165f90815260a16020526040902054155b156119ea576001609c5f8282546119e4919061506a565b90915550505b73ffffffffffffffffffffffffffffffffffffffff8681165f81815260a160205260408082205481517f7f683ee30000000000000000000000000000000000000000000000000000000081526004810194909452336024850152604484018990526064840152517f000000000000000000000000000000000000000000000000000000000000000090931692637f683ee392608480820193929182900301818387803b158015611a98575f80fd5b505af1158015611aaa573d5f803e3d5ffd5b50505050611ab53390565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f92039db29d8c0a1aa1433fe109c69488c8c5e51b23c9de7d303ad80c1fef778c84602001518787604051611b2a939291909283526020830191909152604082015260600190565b60405180910390a384158015611b42575060975460ff165b8015611b505750609b548111155b8015611bb05750609b5473ffffffffffffffffffffffffffffffffffffffff87165f908152609e60205260409020541180611bb05750609c5473ffffffffffffffffffffffffffffffffffffffff87165f908152609e6020526040902054115b15611bbd57611bbd613eb6565b5050505050611bcc6001606555565b50565b73ffffffffffffffffffffffffffffffffffffffff82165f908152609e60205260409020548290611c5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6e6f74207374616b65720000000000000000000000000000000000000000000060448201526064016108ac565b611c646140de565b5f8211611ccd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964207374616b6520616d6f756e7400000000000000000000000060448201526064016108ac565b611cd73384614180565b15611d3e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f756e64656c65676174696f6e20756e636c61696d65640000000000000000000060448201526064016108ac565b73ffffffffffffffffffffffffffffffffffffffff83165f90815260a360209081526040808320338452909152902054611de357611d7c3384614230565b15611de3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f72657761726420756e636c61696d65640000000000000000000000000000000060448201526064016108ac565b73ffffffffffffffffffffffffffffffffffffffff83165f90815260a1602052604081208054849290611e1790849061507d565b909155505073ffffffffffffffffffffffffffffffffffffffff83165f90815260a36020908152604080832033845290915281208054849290611e5b90849061507d565b909155505073ffffffffffffffffffffffffffffffffffffffff83165f90815260a260205260409020611e8e90336142f2565b5073ffffffffffffffffffffffffffffffffffffffff83165f90815260a16020526040902054829003611ed3576001609c5f828254611ecd919061507d565b90915550505b73ffffffffffffffffffffffffffffffffffffffff83165f908152609e602052604090205460975460ff168015611f0a5750600181115b156121ea575f611f1b60018361506a565b90505b80156121e85760a15f609d611f3460018561506a565b81548110611f4457611f44615010565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460a15f609d8481548110611fbc57611fbc615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205411156121d6575f609d61200160018461506a565b8154811061201157612011615010565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff9092169250908390811061204b5761204b615010565b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff16609d61207960018561506a565b8154811061208957612089615010565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080609d83815481106120e2576120e2615010565b5f918252602082200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff93909316929092179091558290609e90609d61214160018561506a565b8154811061215157612151615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205561218d82600161507d565b609e5f609d85815481106121a3576121a3615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902055505b806121e08161518f565b915050611f1e565b505b6097545f9060ff166121fc575f61220f565b6122046134fa565b61220f90600161507d565b73ffffffffffffffffffffffffffffffffffffffff86165f81815260a36020908152604080832033808552908352928190205481519081529182018990528181018590525193945090927fc4ad67bad2c1f682946a406d840f1b273f5cd5a53fcc1a03d078d92bfa2e07d09181900360600190a373ffffffffffffffffffffffffffffffffffffffff8581165f81815260a360209081526040808320338085528184528285205486865260a18552838620548287529290945282517fb809af0f000000000000000000000000000000000000000000000000000000008152600481019690965260248601526044850187905260648501839052608485015290881460a4840152517f00000000000000000000000000000000000000000000000000000000000000009093169263b809af0f9260c480820193929182900301818387803b15801561235d575f80fd5b505af115801561236f573d5f803e3d5ffd5b5050505061238461237d3390565b3086614313565b60975460ff1680156123975750609b5482115b80156123c9575060995473ffffffffffffffffffffffffffffffffffffffff86165f908152609e602052604090205411155b156123d6576123d6613eb6565b5050610d586001606555565b6123ea61405d565b60975460ff1615612457576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f72657761726420616c726561647920737461727465640000000000000000000060448201526064016108ac565b4281118015612470575061246e62015180826151f0565b155b801561247e57506098548114155b6124e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d650000000000000060448201526064016108ac565b609880549082905560408051828152602081018490527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a15050565b609d546060905f9067ffffffffffffffff81111561254957612549615117565b60405190808252806020026020018201604052801561259557816020015b60408051606080820183525f8083526020830152918101919091528152602001906001900390816125675790505b5090505f5b609d54811015612780576040518060600160405280609f5f609d85815481106125c5576125c5615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff90811684528382019490945260409092018120549092168352609d80549390910192609f9291908690811061261e5761261e615010565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600101548152602001609f5f609d858154811061269e5761269e615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902060020180546126dc90615144565b80601f016020809104026020016040519081016040528092919081815260200182805461270890615144565b80156127535780601f1061272a57610100808354040283529160200191612753565b820191905f5260205f20905b81548152906001019060200180831161273657829003601f168201915b505050505081525082828151811061276d5761276d615010565b602090810291909101015260010161259a565b50919050565b5f54610100900460ff16158080156127a457505f54600160ff909116105b806127bd5750303b1580156127bd57505f5460ff166001145b612849576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108ac565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156128a5575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8716612922576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206f776e65722061646472657373000000000000000000000060448201526064016108ac565b5f86116129b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f73657175656e6365727353697a65206d7573742067726561746572207468616e60448201527f203000000000000000000000000000000000000000000000000000000000000060648201526084016108ac565b5f8511612a1a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c696420756e64656c65676174654c6f636b45706f6368730000000060448201526064016108ac565b4284118015612a335750612a3162015180856151f0565b155b612a99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d650000000000000060448201526064016108ac565b81612b00576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f696e76616c696420696e697469616c207374616b65727300000000000000000060448201526064016108ac565b612b09876145c1565b612b11614637565b6099869055609a8590556098849055609b8290555f5b609b54811015612cb457838382818110612b4357612b43615010565b9050602002810190612b559190615203565b609f5f868685818110612b6a57612b6a615010565b9050602002810190612b7c9190615203565b612b8a906020810190614bd5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f20612bb982826152e4565b905050609d848483818110612bd057612bd0615010565b9050602002810190612be29190615203565b612bf0906020810190614bd5565b8154600180820184555f93845260209093200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055612c5190829061507d565b609e5f868685818110612c6657612c66615010565b9050602002810190612c789190615203565b612c86906020810190614bd5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2055600101612b27565b50604080515f8152602081018890527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a1604080515f8152602081018690527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a18015612d89575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b609d8181548110612da1575f80fd5b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016148015612ee357507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ea7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ecb9190614ff5565b73ffffffffffffffffffffffffffffffffffffffff16145b612f6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f776564000000000000000000000000000000000000000060648201526084016108ac565b609e5f612f7f6020840184614bd5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20545f0361306057609d612fce6020830183614bd5565b81546001810183555f928352602080842090910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155609d5491609e9161303990850185614bd5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f20555b80609f5f6130716020840184614bd5565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f206130a082826152e4565b506130b090506020820182614bd5565b73ffffffffffffffffffffffffffffffffffffffff167f058ecb29c230cd5df283c89e996187ed521393fe4546cd1b097921c4b2de293d60208301356130f9604085018561523f565b604051613108939291906154a1565b60405180910390a260975460ff161580156131275750609954609d5411155b15611bcc57611bcc613eb6565b61313c61405d565b6131455f6145c1565b565b61314f61405d565b6098544210156131e0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f63616e2774207374617274206265666f7265207265776172642073746172742060448201527f74696d650000000000000000000000000000000000000000000000000000000060648201526084016108ac565b5f609c541161324b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6e6f6e652063616e64696461746500000000000000000000000000000000000060448201526064016108ac565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091555b609d5481101561348a575f5b818110156134815760a15f609d83815481106132a4576132a4615010565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460a15f609d858154811061331c5761331c615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040019020541115613479575f609d828154811061336757613367615010565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff909216925090849081106133a1576133a1615010565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff90921691849081106133d9576133d9615010565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080609d848154811061343257613432615010565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505b600101613286565b5060010161327a565b505f5b609d548110156134f1576134a281600161507d565b609e5f609d84815481106134b8576134b8615010565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205560010161348d565b50613145613eb6565b5f609854421015613567576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f726577617264206973206e6f742073746172746564207965740000000000000060448201526064016108ac565b6201518060985442613579919061506a565b61358391906154f4565b905090565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a3602090815260408083203384529091528120541515610702565b609f6020525f908152604090208054600182015460028301805473ffffffffffffffffffffffffffffffffffffffff9093169391926135fd90615144565b80601f016020809104026020016040519081016040528092919081815260200182805461362990615144565b80156136745780601f1061364b57610100808354040283529160200191613674565b820191905f5260205f20905b81548152906001019060200180831161365757829003601f168201915b5050505050905083565b5f60605f84116136ea576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f696e76616c696420706167652073697a6500000000000000000000000000000060448201526064016108ac565b73ffffffffffffffffffffffffffffffffffffffff85165f90815260a26020526040902061371790613ead565b91508367ffffffffffffffff81111561373257613732615117565b60405190808252806020026020018201604052801561375b578160200160208202803683370190505b5090505f6137698486615507565b90505f6001613778868261507d565b6137829088615507565b61378c919061506a565b905061379960018561506a565b8111156137ae576137ab60018561506a565b90505b815b81811161382e5773ffffffffffffffffffffffffffffffffffffffff88165f90815260a2602052604090206137e590826146d5565b8482815181106137f7576137f7615010565b73ffffffffffffffffffffffffffffffffffffffff90921660209283029190910190910152806138268161551e565b9150506137b0565b505050935093915050565b6138416140de565b335f90815260a46020526040812054815b81811015613c015760975460ff1615806138a2575061386f6134fa565b335f90815260a46020526040902080548390811061388f5761388f615010565b905f5260205f2090600302016002015411155b15613bef57335f90815260a4602052604090208054829081106138c7576138c7615010565b905f5260205f20906003020160010154836138e2919061507d565b335f90815260a460205260408120805492955090918390811061390757613907615010565b5f918252602082206003909102015473ffffffffffffffffffffffffffffffffffffffff16915060a4816139383390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20838154811061398257613982615010565b905f5260205f2090600302016002015490505f60a45f61399f3390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2084815481106139e9576139e9615010565b905f5260205f209060030201600101549050600185613a08919061506a565b841015613aff57335f90815260a460205260409020613a2860018761506a565b81548110613a3857613a38615010565b905f5260205f20906003020160a45f613a4e3390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208581548110613a9857613a98615010565b5f9182526020909120825460039092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091178155600180830154908201556002918201549101555b335f90815260a460205260409020805480613b1c57613b1c615090565b5f8281526020812060037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9093019283020180547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560018181018390556002909101919091559155613b91908661506a565b6040805184815260208101849052919650339173ffffffffffffffffffffffffffffffffffffffff8616917f921046659ea3b3b3f8e8fefd2bece3121b2d929ead94c696a75beedee477fdb6910160405180910390a3505050613852565b613bfa81600161507d565b9050613852565b505f8211613c6b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6e6f204d6f72706820746f6b656e20746f20636c61696d00000000000000000060448201526064016108ac565b613c7533836146e0565b50506131456001606555565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a460209081526040808320805482518185028101850190935280835260609492939192909184015b82821015613d26575f8481526020908190206040805160608101825260038602909201805473ffffffffffffffffffffffffffffffffffffffff16835260018082015484860152600290910154918301919091529083529092019101613cc5565b505050509050919050565b613d3961405d565b73ffffffffffffffffffffffffffffffffffffffff8116613ddc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016108ac565b611bcc816145c1565b613ded6140de565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001663ac2ac640336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff90911660048201526024015f604051808303815f87803b158015613e8d575f80fd5b505af1158015613e9f573d5f803e3d5ffd5b505050506131456001606555565b5f610702825490565b60995460975460ff1615613eda57609954609c541015613ed55750609c545b613eeb565b609954609d541015613eeb5750609d545b5f8167ffffffffffffffff811115613f0557613f05615117565b604051908082528060200260200182016040528015613f2e578160200160208202803683370190505b5090505f5b82811015613fb557609d8181548110613f4e57613f4e615010565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828281518110613f8857613f88615010565b73ffffffffffffffffffffffffffffffffffffffff90921660209283029190910190910152600101613f33565b506040517f9b8201a400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690639b8201a490614028908490600401615555565b5f604051808303815f87803b15801561403f575f80fd5b505af1158015614051573d5f803e3d5ffd5b50509151609b55505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314613145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108ac565b60026065540361414a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108ac565b6002606555565b6001606555565b5f6141798373ffffffffffffffffffffffffffffffffffffffff841661497f565b9392505050565b5f805b73ffffffffffffffffffffffffffffffffffffffff84165f90815260a460205260409020548110156142275773ffffffffffffffffffffffffffffffffffffffff8481165f90815260a460205260409020805491851691839081106141ea576141ea615010565b5f91825260209091206003909102015473ffffffffffffffffffffffffffffffffffffffff160361421f576001915050610702565b600101614183565b505f9392505050565b6040517fde6ac93300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015282811660248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063de6ac93390604401602060405180830381865afa1580156142c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142ea9190615567565b159392505050565b5f6141798373ffffffffffffffffffffffffffffffffffffffff8416614a62565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156143a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906143c59190615586565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301528581166024830152604482018590529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303815f875af1158015614464573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906144889190615567565b506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015614517573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061453b9190615586565b90505f83118015614554575082614552838361506a565b145b6145ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c6564000000000060448201526064016108ac565b5050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166146cd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108ac565b613145614aae565b5f6141798383614b44565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa15801561476e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906147929190615586565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af1158015614829573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061484d9190615567565b506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156148dc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149009190615586565b90505f83118015614919575082614917838361506a565b145b610e84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c6564000000000060448201526064016108ac565b5f8181526001830160205260408120548015614a59575f6149a160018361506a565b85549091505f906149b49060019061506a565b9050818114614a13575f865f0182815481106149d2576149d2615010565b905f5260205f200154905080875f0184815481106149f2576149f2615010565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080614a2457614a24615090565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610702565b5f915050610702565b5f818152600183016020526040812054614aa757508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610702565b505f610702565b5f54610100900460ff16614151576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108ac565b5f825f018281548110614b5957614b59615010565b905f5260205f200154905092915050565b508054614b7690615144565b5f825580601f10614b85575050565b601f0160209004905f5260205f2090810190611bcc91905b80821115614bb0575f8155600101614b9d565b5090565b73ffffffffffffffffffffffffffffffffffffffff81168114611bcc575f80fd5b5f60208284031215614be5575f80fd5b813561417981614bb4565b5f8083601f840112614c00575f80fd5b50813567ffffffffffffffff811115614c17575f80fd5b6020830191508360208260051b8501011115614c31575f80fd5b9250929050565b5f8060208385031215614c49575f80fd5b823567ffffffffffffffff811115614c5f575f80fd5b614c6b85828601614bf0565b90969095509350505050565b5f60208284031215614c87575f80fd5b5035919050565b5f8060408385031215614c9f575f80fd5b8235614caa81614bb4565b946020939093013593505050565b5f81518084525f5b81811015614cdc57602081850181015186830182015201614cc0565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b83811015614dbe578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff16845287810151888501528601516060878501819052614daa81860183614cb8565b968901969450505090860190600101614d40565b509098975050505050505050565b5f805f805f8060a08789031215614de1575f80fd5b8635614dec81614bb4565b9550602087013594506040870135935060608701359250608087013567ffffffffffffffff811115614e1c575f80fd5b614e2889828a01614bf0565b979a9699509497509295939492505050565b5f60208284031215614e4a575f80fd5b813567ffffffffffffffff811115614e60575f80fd5b820160608185031215614179575f80fd5b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f614ea56060830184614cb8565b95945050505050565b5f8060408385031215614ebf575f80fd5b8235614eca81614bb4565b91506020830135614eda81614bb4565b809150509250929050565b5f805f60608486031215614ef7575f80fd5b8335614f0281614bb4565b95602085013595506040909401359392505050565b5f815180845260208085019450602084015f5b83811015614f5c57815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101614f2a565b509495945050505050565b828152604060208201525f614f7f6040830184614f17565b949350505050565b602080825282518282018190525f919060409081850190868401855b82811015614fe8578151805173ffffffffffffffffffffffffffffffffffffffff16855286810151878601528501518585015260609093019290850190600101614fa3565b5091979650505050505050565b5f60208284031215615005575f80fd5b815161417981614bb4565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103818111156107025761070261503d565b808201808211156107025761070261503d565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208082528181018390525f908460408401835b8681101561510c5782356150e481614bb4565b73ffffffffffffffffffffffffffffffffffffffff16825291830191908301906001016150d1565b509695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600181811c9082168061515857607f821691505b602082108103612780577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f8161519d5761519d61503d565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f826151fe576151fe6151c3565b500690565b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112615235575f80fd5b9190910192915050565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112615272575f80fd5b83018035915067ffffffffffffffff82111561528c575f80fd5b602001915036819003821315614c31575f80fd5b601f821115610d5857805f5260205f20601f840160051c810160208510156152c55750805b601f840160051c820191505b818110156145ba575f81556001016152d1565b81356152ef81614bb4565b73ffffffffffffffffffffffffffffffffffffffff81167fffffffffffffffffffffffff000000000000000000000000000000000000000083541617825550600160208084013560018401556002830160408501357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1863603018112615373575f80fd5b8501803567ffffffffffffffff81111561538b575f80fd5b803603848301131561539b575f80fd5b6153af816153a98554615144565b856152a0565b5f601f821160018114615401575f83156153cb57508382018601355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600385901b1c1916600184901b178555615496565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b8281101561544d5786850189013582559388019390890190880161542e565b508482101561548a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88660031b161c198885880101351681555b505060018360011b0185555b505050505050505050565b83815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b5f82615502576155026151c3565b500490565b80820281158282048414176107025761070261503d565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361554e5761554e61503d565b5060010190565b602081525f6141796020830184614f17565b5f60208284031215615577575f80fd5b81518015158114614179575f80fd5b5f60208284031215615596575f80fd5b505191905056fea164736f6c6343000818000a" +var L2StakingDeployedBin = "0x608060405234801561000f575f80fd5b50600436106102ec575f3560e01c8063746c8ae111610192578063affed0e0116100e8578063e10911b111610093578063f2fde38b1161006e578063f2fde38b146106f6578063fad99f9814610709578063fc6facc614610711575f80fd5b8063e10911b1146106c5578063ed70b343146106cd578063f0261bc2146106ed575f80fd5b8063cce6cf9f116100c3578063cce6cf9f1461066a578063d31d83d91461067d578063d55771411461069e575f80fd5b8063affed0e014610618578063b5d2e0dc14610621578063c64814dd14610640575f80fd5b80638da5cb5b1161014857806391bd43a41161012357806391bd43a4146105c5578063927ede2d146105e457806396ab994d1461060b575f80fd5b80638da5cb5b1461055e5780638e21d5fb1461057c5780639168ae72146105a3575f80fd5b80637b05afb5116101785780637b05afb5146104f5578063831cfb581461051457806384d7d1d41461053b575f80fd5b8063746c8ae1146104e557806376671808146104ed575f80fd5b80633b8024211161024757806343352d61116101fd57806346cdc18a116101d857806346cdc18a146104c25780637046529b146104ca578063715018a6146104dd575f80fd5b806343352d6114610494578063439162b51461049c578063459598a2146104af575f80fd5b80633cb747bf1161022d5780633cb747bf146104135780633d9353fe1461045a57806340b5c83714610481575f80fd5b80633b802421146103f75780633c323a1b14610400575f80fd5b8063174e31c4116102a75780632e787be3116102825780632e787be3146103bb57806330158eea146103c45780633385ccc2146103e4575f80fd5b8063174e31c41461038c57806319fac8fd1461039f5780632cc138be146103b2575f80fd5b80630eb573af116102d75780630eb573af1461032b5780630f3b70591461033e57806312a3e94714610383575f80fd5b806243b758146102f05780629c6f0c14610316575b5f80fd5b6103036102fe3660046152e8565b610724565b6040519081526020015b60405180910390f35b610329610324366004615303565b610757565b005b61032961033936600461534d565b6109a8565b61035161034c366004615364565b610ad5565b6040805173ffffffffffffffffffffffffffffffffffffffff909416845260208401929092529082015260600161030d565b610303609a5481565b61032961039a366004615364565b610b2a565b6103296103ad36600461534d565b610ce3565b61030360985481565b61030360995481565b6103d76103d23660046153d6565b610e39565b60405161030d9190615476565b6103296103f23660046152e8565b6110a1565b610303609c5481565b61032961040e366004615364565b61181a565b7f00000000000000000000000000000000000000000000000000000000000000005b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161030d565b6104357f000000000000000000000000000000000000000000000000000000000000000081565b61032961048f36600461534d565b61202d565b6103d7612174565b6103296104aa366004615529565b6123d1565b6104356104bd36600461534d565b6129dd565b609d54610303565b6103296104d8366004615303565b612a12565b610329612bba565b610329612bcd565b610303612f80565b6103036105033660046152e8565b60a06020525f908152604090205481565b6104357f000000000000000000000000000000000000000000000000000000000000000081565b61054e6105493660046152e8565b61300e565b604051901515815260200161030d565b60335473ffffffffffffffffffffffffffffffffffffffff16610435565b6104357f000000000000000000000000000000000000000000000000000000000000000081565b6105b66105b13660046152e8565b613045565b60405161030d93929190615597565b6103036105d33660046152e8565b60a16020525f908152604090205481565b6104357f000000000000000000000000000000000000000000000000000000000000000081565b60975461054e9060ff1681565b61030360a55481565b61030361062f3660046152e8565b609e6020525f908152604090205481565b61030361064e3660046155d4565b60a360209081525f928352604080842090915290825290205481565b610329610678366004615600565b613104565b61069061068b366004615648565b6137d0565b60405161030d9291906156ca565b6104357f000000000000000000000000000000000000000000000000000000000000000081565b6103296139ac565b6106e06106db3660046152e8565b613df4565b60405161030d91906156ea565b610303609b5481565b6103296107043660046152e8565b613ea4565b610329613f58565b61032961071f366004615600565b614020565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a260205260408120610751906144fd565b92915050565b61075f614506565b8160a55481146107d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c6964206e6f6e63650000000000000000000000000000000000000060448201526064015b60405180910390fd5b6107db836001615785565b60a555609e5f6107ee60208501856152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20545f036108cf57609d61083d60208401846152e8565b81546001810183555f928352602080842090910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155609d5491609e916108a8908601866152e8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f20555b81609f5f6108e060208401846152e8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2061090f82826158b5565b5061091f905060208301836152e8565b73ffffffffffffffffffffffffffffffffffffffff167f058ecb29c230cd5df283c89e996187ed521393fe4546cd1b097921c4b2de293d60208401356109686040860186615798565b60405161097793929190615a72565b60405180910390a260975460ff161580156109965750609954609d5411155b156109a3576109a3614587565b505050565b6109b0614506565b5f811180156109c157506099548114155b610a4d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f696e76616c6964206e65772073657175656e63657220736574206d617820736960448201527f7a6500000000000000000000000000000000000000000000000000000000000060648201526084016107c7565b609980549082905560408051828152602081018490527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a16097545f9060ff16610aa257609d54610aa6565b609c545b90505f6099548210610aba57609954610abc565b815b9050609b548114610acf57610acf614587565b50505050565b60a4602052815f5260405f208181548110610aee575f80fd5b5f91825260209091206003909102018054600182015460029092015473ffffffffffffffffffffffffffffffffffffffff909116935090915083565b610b3261472e565b73ffffffffffffffffffffffffffffffffffffffff8216610c0f5773ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016635cf20c7b336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602481018490526044015f604051808303815f87803b158015610bf4575f80fd5b505af1158015610c06573d5f803e3d5ffd5b50505050610cd5565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001663996cba6883336040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604481018490526064015f604051808303815f87803b158015610cbe575f80fd5b505af1158015610cd0573d5f803e3d5ffd5b505050505b610cdf6001606555565b5050565b335f908152609e6020526040902054610d58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f6f6e6c79207374616b657220616c6c6f7765640000000000000000000000000060448201526064016107c7565b6014811115610dc3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420636f6d6d697373696f6e000000000000000000000000000060448201526064016107c7565b335f90815260a06020526040812082905560975460ff16610de4575f610df7565b610dec612f80565b610df7906001615785565b604080518481526020810183905291925033917f6e500db30ce535d38852e318f333e9be41a3fec6c65d234ebb06203c896db9a5910160405180910390a25050565b60605f8267ffffffffffffffff811115610e5557610e556157f9565b604051908082528060200260200182016040528015610ea157816020015b60408051606080820183525f808352602083015291810191909152815260200190600190039081610e735790505b5090505f5b83811015611099576040518060600160405280609f5f888886818110610ece57610ece615ac5565b9050602002016020810190610ee391906152e8565b73ffffffffffffffffffffffffffffffffffffffff908116825260208083019390935260409091015f908120549091168352910190609f90888886818110610f2d57610f2d615ac5565b9050602002016020810190610f4291906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600101548152602001609f5f888886818110610f9957610f99615ac5565b9050602002016020810190610fae91906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206002018054610ff590615826565b80601f016020809104026020016040519081016040528092919081815260200182805461102190615826565b801561106c5780601f106110435761010080835404028352916020019161106c565b820191905f5260205f20905b81548152906001019060200180831161104f57829003601f168201915b505050505081525082828151811061108657611086615ac5565b6020908102919091010152600101610ea6565b509392505050565b6110a961472e565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a36020908152604080832033845290915290205461113f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f7374616b696e6720616d6f756e74206973207a65726f0000000000000000000060448201526064016107c7565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609e60205260408120546097549015919060ff16611178575f61118b565b611180612f80565b61118b906001615785565b6097549091505f9060ff1680156111a0575082155b6111aa57816111b7565b609a546111b79083615785565b6040805160608101825273ffffffffffffffffffffffffffffffffffffffff8781168083525f81815260a36020908152858220338084528183528784208054848901908152888a018b815283875260a486528a87208054600180820183559189528789208c5160039092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909b16178a558251908a015551600290980197909755908452908252829055925191815260a190925292812080549495509193611286908490615af2565b909155505073ffffffffffffffffffffffffffffffffffffffff85165f90815260a2602052604090206112b990336147a8565b5073ffffffffffffffffffffffffffffffffffffffff85165f908152609e6020526040902054841580156112ef575060975460ff165b80156112fc5750609c5481105b156115e85773ffffffffffffffffffffffffffffffffffffffff86165f908152609e602052604081205461133290600190615af2565b90505b6001609c546113449190615af2565b8110156115e65760a15f609d838154811061136157611361615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040018120549060a190609d6113a3856001615785565b815481106113b3576113b3615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205411156115de575f609d82815481106113fe576113fe615ac5565b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff169050609d61142e836001615785565b8154811061143e5761143e615ac5565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff909216918490811061147657611476615ac5565b5f91825260209091200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905580609d6114d1846001615785565b815481106114e1576114e1615ac5565b5f91825260209091200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055611539826001615785565b609e5f609d858154811061154f5761154f615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205561158b826002615785565b609e5f609d61159b866001615785565b815481106115ab576115ab615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902055505b600101611335565b505b84158015611618575073ffffffffffffffffffffffffffffffffffffffff86165f90815260a16020526040902054155b15611635576001609c5f82825461162f9190615af2565b90915550505b73ffffffffffffffffffffffffffffffffffffffff8681165f81815260a160205260408082205481517f7f683ee30000000000000000000000000000000000000000000000000000000081526004810194909452336024850152604484018990526064840152517f000000000000000000000000000000000000000000000000000000000000000090931692637f683ee392608480820193929182900301818387803b1580156116e3575f80fd5b505af11580156116f5573d5f803e3d5ffd5b505050506117003390565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f92039db29d8c0a1aa1433fe109c69488c8c5e51b23c9de7d303ad80c1fef778c84602001518787604051611775939291909283526020830191909152604082015260600190565b60405180910390a38415801561178d575060975460ff165b801561179b5750609b548111155b80156117fb5750609b5473ffffffffffffffffffffffffffffffffffffffff87165f908152609e602052604090205411806117fb5750609c5473ffffffffffffffffffffffffffffffffffffffff87165f908152609e6020526040902054115b1561180857611808614587565b50505050506118176001606555565b50565b73ffffffffffffffffffffffffffffffffffffffff82165f908152609e602052604090205482906118a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6e6f74207374616b65720000000000000000000000000000000000000000000060448201526064016107c7565b6118af61472e565b5f8211611918576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964207374616b6520616d6f756e7400000000000000000000000060448201526064016107c7565b61192233846147d0565b15611989576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f756e64656c65676174696f6e20756e636c61696d65640000000000000000000060448201526064016107c7565b73ffffffffffffffffffffffffffffffffffffffff83165f90815260a360209081526040808320338452909152902054611a2e576119c73384614880565b15611a2e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f72657761726420756e636c61696d65640000000000000000000000000000000060448201526064016107c7565b73ffffffffffffffffffffffffffffffffffffffff83165f90815260a1602052604081208054849290611a62908490615785565b909155505073ffffffffffffffffffffffffffffffffffffffff83165f90815260a36020908152604080832033845290915281208054849290611aa6908490615785565b909155505073ffffffffffffffffffffffffffffffffffffffff83165f90815260a260205260409020611ad99033614942565b5073ffffffffffffffffffffffffffffffffffffffff83165f90815260a16020526040902054829003611b1e576001609c5f828254611b189190615785565b90915550505b73ffffffffffffffffffffffffffffffffffffffff83165f908152609e602052604090205460975460ff168015611b555750600181115b15611e35575f611b66600183615af2565b90505b8015611e335760a15f609d611b7f600185615af2565b81548110611b8f57611b8f615ac5565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460a15f609d8481548110611c0757611c07615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040019020541115611e21575f609d611c4c600184615af2565b81548110611c5c57611c5c615ac5565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff90921692509083908110611c9657611c96615ac5565b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff16609d611cc4600185615af2565b81548110611cd457611cd4615ac5565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080609d8381548110611d2d57611d2d615ac5565b5f918252602082200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff93909316929092179091558290609e90609d611d8c600185615af2565b81548110611d9c57611d9c615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902055611dd8826001615785565b609e5f609d8581548110611dee57611dee615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902055505b80611e2b81615b05565b915050611b69565b505b6097545f9060ff16611e47575f611e5a565b611e4f612f80565b611e5a906001615785565b73ffffffffffffffffffffffffffffffffffffffff86165f81815260a36020908152604080832033808552908352928190205481519081529182018990528181018590525193945090927fc4ad67bad2c1f682946a406d840f1b273f5cd5a53fcc1a03d078d92bfa2e07d09181900360600190a373ffffffffffffffffffffffffffffffffffffffff8581165f81815260a360209081526040808320338085528184528285205486865260a18552838620548287529290945282517fb809af0f000000000000000000000000000000000000000000000000000000008152600481019690965260248601526044850187905260648501839052608485015290881460a4840152517f00000000000000000000000000000000000000000000000000000000000000009093169263b809af0f9260c480820193929182900301818387803b158015611fa8575f80fd5b505af1158015611fba573d5f803e3d5ffd5b50505050611fcf611fc83390565b3086614963565b60975460ff168015611fe25750609b5482115b8015612014575060995473ffffffffffffffffffffffffffffffffffffffff86165f908152609e602052604090205411155b1561202157612021614587565b50506109a36001606555565b612035614506565b60975460ff16156120a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f72657761726420616c726561647920737461727465640000000000000000000060448201526064016107c7565b42811180156120bb57506120b96201518082615b66565b155b80156120c957506098548114155b61212f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d650000000000000060448201526064016107c7565b609880549082905560408051828152602081018490527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a15050565b609d546060905f9067ffffffffffffffff811115612194576121946157f9565b6040519080825280602002602001820160405280156121e057816020015b60408051606080820183525f8083526020830152918101919091528152602001906001900390816121b25790505b5090505f5b609d548110156123cb576040518060600160405280609f5f609d858154811061221057612210615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff90811684528382019490945260409092018120549092168352609d80549390910192609f9291908690811061226957612269615ac5565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600101548152602001609f5f609d85815481106122e9576122e9615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040019020600201805461232790615826565b80601f016020809104026020016040519081016040528092919081815260200182805461235390615826565b801561239e5780601f106123755761010080835404028352916020019161239e565b820191905f5260205f20905b81548152906001019060200180831161238157829003601f168201915b50505050508152508282815181106123b8576123b8615ac5565b60209081029190910101526001016121e5565b50919050565b5f54610100900460ff16158080156123ef57505f54600160ff909116105b806124085750303b15801561240857505f5460ff166001145b612494576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016107c7565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156124f0575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff871661256d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e76616c6964206f776e65722061646472657373000000000000000000000060448201526064016107c7565b5f86116125fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f73657175656e6365727353697a65206d7573742067726561746572207468616e60448201527f203000000000000000000000000000000000000000000000000000000000000060648201526084016107c7565b5f8511612665576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c696420756e64656c65676174654c6f636b45706f6368730000000060448201526064016107c7565b428411801561267e575061267c6201518085615b66565b155b6126e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e76616c6964207265776172642073746172742074696d650000000000000060448201526064016107c7565b8161274b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f696e76616c696420696e697469616c207374616b65727300000000000000000060448201526064016107c7565b61275487614c6f565b61275c614ce5565b6099869055609a8590556098849055609b8290555f5b609b548110156128ff5783838281811061278e5761278e615ac5565b90506020028101906127a09190615b79565b609f5f8686858181106127b5576127b5615ac5565b90506020028101906127c79190615b79565b6127d59060208101906152e8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2061280482826158b5565b905050609d84848381811061281b5761281b615ac5565b905060200281019061282d9190615b79565b61283b9060208101906152e8565b8154600180820184555f93845260209093200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905561289c908290615785565b609e5f8686858181106128b1576128b1615ac5565b90506020028101906128c39190615b79565b6128d19060208101906152e8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2055600101612772565b50604080515f8152602081018890527f98b982a120d9be7d9c68d85a1aed8158d1d52e517175bfb3eb4280692f19b1ed910160405180910390a1604080515f8152602081018690527f91c38708087fb4ba51bd0e6a106cc1fbaf340479a2e81d18f2341e8c78f97555910160405180910390a180156129d4575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b609d81815481106129ec575f80fd5b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016148015612b2e57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612af2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b169190615bb5565b73ffffffffffffffffffffffffffffffffffffffff16145b61075f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f776564000000000000000000000000000000000000000060648201526084016107c7565b612bc2614506565b612bcb5f614c6f565b565b612bd5614506565b609854421015612c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f63616e2774207374617274206265666f7265207265776172642073746172742060448201527f74696d650000000000000000000000000000000000000000000000000000000060648201526084016107c7565b5f609c5411612cd1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6e6f6e652063616e64696461746500000000000000000000000000000000000060448201526064016107c7565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091555b609d54811015612f10575f5b81811015612f075760a15f609d8381548110612d2a57612d2a615ac5565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460a15f609d8581548110612da257612da2615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff1683528201929092526040019020541115612eff575f609d8281548110612ded57612ded615ac5565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff90921692509084908110612e2757612e27615ac5565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff9092169184908110612e5f57612e5f615ac5565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080609d8481548110612eb857612eb8615ac5565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505b600101612d0c565b50600101612d00565b505f5b609d54811015612f7757612f28816001615785565b609e5f609d8481548110612f3e57612f3e615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902055600101612f13565b50612bcb614587565b5f609854421015612fed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f726577617264206973206e6f742073746172746564207965740000000000000060448201526064016107c7565b6201518060985442612fff9190615af2565b6130099190615bd0565b905090565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a3602090815260408083203384529091528120541515610751565b609f6020525f908152604090208054600182015460028301805473ffffffffffffffffffffffffffffffffffffffff90931693919261308390615826565b80601f01602080910402602001604051908101604052809291908181526020018280546130af90615826565b80156130fa5780601f106130d1576101008083540402835291602001916130fa565b820191905f5260205f20905b8154815290600101906020018083116130dd57829003601f168201915b5050505050905083565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614801561322057507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131e4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906132089190615bb5565b73ffffffffffffffffffffffffffffffffffffffff16145b6132ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f7374616b696e673a206f6e6c79206f74686572207374616b696e6720636f6e7460448201527f7261637420616c6c6f776564000000000000000000000000000000000000000060648201526084016107c7565b8260a5548114613318576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c6964206e6f6e63650000000000000000000000000000000000000060448201526064016107c7565b613323846001615785565b60a5555f805b8381101561378157609b54609e5f87878581811061334957613349615ac5565b905060200201602081019061335e91906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054116133a257600191505b5f609e5f8787858181106133b8576133b8615ac5565b90506020020160208101906133cd91906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205411156136eb575f6001609e5f88888681811061342557613425615ac5565b905060200201602081019061343a91906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461347e9190615af2565b90505b609d5461349090600190615af2565b81101561359657609d6134a4826001615785565b815481106134b4576134b4615ac5565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff90921691839081106134ec576134ec615ac5565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001609e5f609d848154811061354957613549615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400181208054909190613589908490615af2565b9091555050600101613481565b50609d8054806135a8576135a8615be3565b5f8281526020812082017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055909101909155609e9086868481811061361757613617615ac5565b905060200201602081019061362c91906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f90555f60a15f87878581811061367e5761367e615ac5565b905060200201602081019061369391906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205411156136eb576001609c5f8282546136e59190615af2565b90915550505b609f5f86868481811061370057613700615ac5565b905060200201602081019061371591906152e8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f90812080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681556001810182905590613777600283018261527d565b5050600101613329565b507f3511bf213f9290ba907e91e12a43e8471251e1879580ae5509292a3514c23f6184846040516137b3929190615c10565b60405180910390a180156137c9576137c9614587565b5050505050565b5f60605f841161383c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f696e76616c696420706167652073697a6500000000000000000000000000000060448201526064016107c7565b73ffffffffffffffffffffffffffffffffffffffff85165f90815260a260205260409020613869906144fd565b91508367ffffffffffffffff811115613884576138846157f9565b6040519080825280602002602001820160405280156138ad578160200160208202803683370190505b5090505f6138bb8486615c6a565b90505f60016138ca8682615785565b6138d49088615c6a565b6138de9190615af2565b90506138eb600185615af2565b811115613900576138fd600185615af2565b90505b815f5b8282116139a0576139448261391781615c81565b73ffffffffffffffffffffffffffffffffffffffff8c165f90815260a26020526040902090945090614d83565b858261394f81615c81565b93508151811061396157613961615ac5565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613903565b50505050935093915050565b6139b461472e565b335f90815260a46020526040812054815b81811015613d745760975460ff161580613a1557506139e2612f80565b335f90815260a460205260409020805483908110613a0257613a02615ac5565b905f5260205f2090600302016002015411155b15613d6257335f90815260a460205260409020805482908110613a3a57613a3a615ac5565b905f5260205f2090600302016001015483613a559190615785565b335f90815260a4602052604081208054929550909183908110613a7a57613a7a615ac5565b5f918252602082206003909102015473ffffffffffffffffffffffffffffffffffffffff16915060a481613aab3390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208381548110613af557613af5615ac5565b905f5260205f2090600302016002015490505f60a45f613b123390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208481548110613b5c57613b5c615ac5565b905f5260205f209060030201600101549050600185613b7b9190615af2565b841015613c7257335f90815260a460205260409020613b9b600187615af2565b81548110613bab57613bab615ac5565b905f5260205f20906003020160a45f613bc13390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208581548110613c0b57613c0b615ac5565b5f9182526020909120825460039092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091178155600180830154908201556002918201549101555b335f90815260a460205260409020805480613c8f57613c8f615be3565b5f8281526020812060037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9093019283020180547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560018181018390556002909101919091559155613d049086615af2565b6040805184815260208101849052919650339173ffffffffffffffffffffffffffffffffffffffff8616917f921046659ea3b3b3f8e8fefd2bece3121b2d929ead94c696a75beedee477fdb6910160405180910390a35050506139c5565b613d6d816001615785565b90506139c5565b505f8211613dde576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f6e6f204d6f72706820746f6b656e20746f20636c61696d00000000000000000060448201526064016107c7565b613de83383614d8e565b5050612bcb6001606555565b73ffffffffffffffffffffffffffffffffffffffff81165f90815260a460209081526040808320805482518185028101850190935280835260609492939192909184015b82821015613e99575f8481526020908190206040805160608101825260038602909201805473ffffffffffffffffffffffffffffffffffffffff16835260018082015484860152600290910154918301919091529083529092019101613e38565b505050509050919050565b613eac614506565b73ffffffffffffffffffffffffffffffffffffffff8116613f4f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016107c7565b61181781614c6f565b613f6061472e565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001663ac2ac640336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff90911660048201526024015f604051808303815f87803b158015614000575f80fd5b505af1158015614012573d5f803e3d5ffd5b50505050612bcb6001606555565b614028614506565b8260a5548114614094576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c6964206e6f6e63650000000000000000000000000000000000000060448201526064016107c7565b61409f846001615785565b60a5555f805b8381101561378157609b54609e5f8787858181106140c5576140c5615ac5565b90506020020160208101906140da91906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541161411e57600191505b5f609e5f87878581811061413457614134615ac5565b905060200201602081019061414991906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541115614467575f6001609e5f8888868181106141a1576141a1615ac5565b90506020020160208101906141b691906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546141fa9190615af2565b90505b609d5461420c90600190615af2565b81101561431257609d614220826001615785565b8154811061423057614230615ac5565b5f91825260209091200154609d805473ffffffffffffffffffffffffffffffffffffffff909216918390811061426857614268615ac5565b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001609e5f609d84815481106142c5576142c5615ac5565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400181208054909190614305908490615af2565b90915550506001016141fd565b50609d80548061432457614324615be3565b5f8281526020812082017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055909101909155609e9086868481811061439357614393615ac5565b90506020020160208101906143a891906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f90555f60a15f8787858181106143fa576143fa615ac5565b905060200201602081019061440f91906152e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541115614467576001609c5f8282546144619190615af2565b90915550505b609f5f86868481811061447c5761447c615ac5565b905060200201602081019061449191906152e8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f90812080547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560018101829055906144f3600283018261527d565b50506001016140a5565b5f610751825490565b60335473ffffffffffffffffffffffffffffffffffffffff163314612bcb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107c7565b60995460975460ff16156145ab57609954609c5410156145a65750609c545b6145bc565b609954609d5410156145bc5750609d545b5f8167ffffffffffffffff8111156145d6576145d66157f9565b6040519080825280602002602001820160405280156145ff578160200160208202803683370190505b5090505f5b8281101561468657609d818154811061461f5761461f615ac5565b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682828151811061465957614659615ac5565b73ffffffffffffffffffffffffffffffffffffffff90921660209283029190910190910152600101614604565b506040517f9b8201a400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690639b8201a4906146f9908490600401615cb8565b5f604051808303815f87803b158015614710575f80fd5b505af1158015614722573d5f803e3d5ffd5b50509151609b55505050565b60026065540361479a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016107c7565b6002606555565b6001606555565b5f6147c98373ffffffffffffffffffffffffffffffffffffffff8416615092565b9392505050565b5f805b73ffffffffffffffffffffffffffffffffffffffff84165f90815260a460205260409020548110156148775773ffffffffffffffffffffffffffffffffffffffff8481165f90815260a4602052604090208054918516918390811061483a5761483a615ac5565b5f91825260209091206003909102015473ffffffffffffffffffffffffffffffffffffffff160361486f576001915050610751565b6001016147d3565b505f9392505050565b6040517fde6ac93300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015282811660248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063de6ac93390604401602060405180830381865afa158015614916573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061493a9190615cca565b159392505050565b5f6147c98373ffffffffffffffffffffffffffffffffffffffff8416615175565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156149f1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614a159190615ce9565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301528581166024830152604482018590529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303815f875af1158015614ab4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614ad89190615cca565b614b3e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f7472616e7366657246726f6d206661696c65640000000000000000000000000060448201526064016107c7565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015614bcc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614bf09190615ce9565b90505f83118015614c09575082614c078383615af2565b145b6137c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c6564000000000060448201526064016107c7565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16614d7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016107c7565b612bcb6151c1565b5f6147c98383615257565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015614e1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614e409190615ce9565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303815f875af1158015614ed7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614efb9190615cca565b614f61576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7472616e73666572206661696c6564000000000000000000000000000000000060448201526064016107c7565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015614fef573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906150139190615ce9565b90505f8311801561502c57508261502a8383615af2565b145b610acf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6d6f72706820746f6b656e207472616e73666572206661696c6564000000000060448201526064016107c7565b5f818152600183016020526040812054801561516c575f6150b4600183615af2565b85549091505f906150c790600190615af2565b9050818114615126575f865f0182815481106150e5576150e5615ac5565b905f5260205f200154905080875f01848154811061510557615105615ac5565b5f918252602080832090910192909255918252600188019052604090208390555b855486908061513757615137615be3565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610751565b5f915050610751565b5f8181526001830160205260408120546151ba57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610751565b505f610751565b5f54610100900460ff166147a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016107c7565b5f825f01828154811061526c5761526c615ac5565b905f5260205f200154905092915050565b50805461528990615826565b5f825580601f10615298575050565b601f0160209004905f5260205f209081019061181791905b808211156152c3575f81556001016152b0565b5090565b73ffffffffffffffffffffffffffffffffffffffff81168114611817575f80fd5b5f602082840312156152f8575f80fd5b81356147c9816152c7565b5f8060408385031215615314575f80fd5b82359150602083013567ffffffffffffffff811115615331575f80fd5b830160608186031215615342575f80fd5b809150509250929050565b5f6020828403121561535d575f80fd5b5035919050565b5f8060408385031215615375575f80fd5b8235615380816152c7565b946020939093013593505050565b5f8083601f84011261539e575f80fd5b50813567ffffffffffffffff8111156153b5575f80fd5b6020830191508360208260051b85010111156153cf575f80fd5b9250929050565b5f80602083850312156153e7575f80fd5b823567ffffffffffffffff8111156153fd575f80fd5b6154098582860161538e565b90969095509350505050565b5f81518084525f5b818110156154395760208185018101518683018201520161541d565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b8381101561551b578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015188850152860151606087850181905261550781860183615415565b96890196945050509086019060010161549d565b509098975050505050505050565b5f805f805f8060a0878903121561553e575f80fd5b8635615549816152c7565b9550602087013594506040870135935060608701359250608087013567ffffffffffffffff811115615579575f80fd5b61558589828a0161538e565b979a9699509497509295939492505050565b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f6155cb6060830184615415565b95945050505050565b5f80604083850312156155e5575f80fd5b82356155f0816152c7565b91506020830135615342816152c7565b5f805f60408486031215615612575f80fd5b83359250602084013567ffffffffffffffff81111561562f575f80fd5b61563b8682870161538e565b9497909650939450505050565b5f805f6060848603121561565a575f80fd5b8335615665816152c7565b95602085013595506040909401359392505050565b5f815180845260208085019450602084015f5b838110156156bf57815173ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161568d565b509495945050505050565b828152604060208201525f6156e2604083018461567a565b949350505050565b602080825282518282018190525f919060409081850190868401855b8281101561574b578151805173ffffffffffffffffffffffffffffffffffffffff16855286810151878601528501518585015260609093019290850190600101615706565b5091979650505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561075157610751615758565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126157cb575f80fd5b83018035915067ffffffffffffffff8211156157e5575f80fd5b6020019150368190038213156153cf575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600181811c9082168061583a57607f821691505b6020821081036123cb577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b601f8211156109a357805f5260205f20601f840160051c810160208510156158965750805b601f840160051c820191505b818110156137c9575f81556001016158a2565b81356158c0816152c7565b73ffffffffffffffffffffffffffffffffffffffff81167fffffffffffffffffffffffff000000000000000000000000000000000000000083541617825550600160208084013560018401556002830160408501357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1863603018112615944575f80fd5b8501803567ffffffffffffffff81111561595c575f80fd5b803603848301131561596c575f80fd5b6159808161597a8554615826565b85615871565b5f601f8211600181146159d2575f831561599c57508382018601355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600385901b1c1916600184901b178555615a67565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b82811015615a1e578685018901358255938801939089019088016159ff565b5084821015615a5b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88660031b161c198885880101351681555b505060018360011b0185555b505050505050505050565b83815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b8181038181111561075157610751615758565b5f81615b1357615b13615758565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f82615b7457615b74615b39565b500690565b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112615bab575f80fd5b9190910192915050565b5f60208284031215615bc5575f80fd5b81516147c9816152c7565b5f82615bde57615bde615b39565b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208082528181018390525f908460408401835b86811015615c5f578235615c37816152c7565b73ffffffffffffffffffffffffffffffffffffffff1682529183019190830190600101615c24565b509695505050505050565b808202811582820484141761075157610751615758565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203615cb157615cb1615758565b5060010190565b602081525f6147c9602083018461567a565b5f60208284031215615cda575f80fd5b815180151581146147c9575f80fd5b5f60208284031215615cf9575f80fd5b505191905056fea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(L2StakingStorageLayoutJSON), L2StakingStorageLayout); err != nil { diff --git a/bindings/bindings/rollup.go b/bindings/bindings/rollup.go index 755d06fc3..75ab0ee21 100644 --- a/bindings/bindings/rollup.go +++ b/bindings/bindings/rollup.go @@ -33,7 +33,8 @@ var ( type IRollupBatchDataInput struct { Version uint8 ParentBatchHeader []byte - BlockContexts []byte + LastBlockNumber uint64 + NumL1Messages uint16 PrevStateRoot [32]byte PostStateRoot [32]byte WithdrawalRoot [32]byte @@ -48,8 +49,8 @@ type IRollupBatchSignatureInput struct { // RollupMetaData contains all meta data concerning the Rollup contract. var RollupMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_prevStateRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", - Bin: "0x60a060405234801562000010575f80fd5b506040516200493f3803806200493f83398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516147e16200015e5f395f81816105ec0152613a7b01526147e15ff3fe608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063cd4edc69116100b7578063cd4edc6914610917578063ce5db8d61461092a578063d279c1911461093f575f80fd5b8063b35dac4e146108ba578063b3e0a509146108d9578063bedb86fb146108f8575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d1461085b578063b31a77d314610886578063b34844251461089b575f80fd5b8063a415d8dc146107f9578063a479265d14610827578063a4f209b01461083c575f80fd5b80638f1d37761161016c5780638f1d3776146106f9578063910129d4146107a957806397fc007c146107da575f80fd5b8063728cdbca146106a457806388b1ea09146106c35780638da5cb5b146106dc575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa146106465780636c578c1d14610671578063715018a614610690575f80fd5b80635ef7a94a1461057b5780635f77cf1d146105db5780636126729014610627575f80fd5b80634a8d544f1161022c5780634a8d544f1461053257806357e0af6c146105455780635c975abb14610564575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046140f4565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614126565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614184565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046140f4565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046141cc565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046140f4565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046140f4565b611326565b34801561047c575f80fd5b5061036961048b3660046140f4565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046140f4565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b61039661054036600461420b565b611354565b348015610550575f80fd5b5061039661055f3660046140f4565b611bd7565b34801561056f575f80fd5b5060655460ff1661033f565b348015610586575f80fd5b506105bb6105953660046140f4565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105e6575f80fd5b5061060e7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610632575f80fd5b506103966106413660046140f4565b611c82565b348015610651575f80fd5b506103696106603660046140f4565b60ab6020525f908152604090205481565b34801561067c575f80fd5b5061039661068b366004614126565b611e97565b34801561069b575f80fd5b50610396611f54565b3480156106af575f80fd5b506103966106be366004614278565b611f67565b3480156106ce575f80fd5b5060a65461033f9060ff1681565b3480156106e7575f80fd5b506033546001600160a01b03166104e6565b348015610704575f80fd5b506107656107133660046140f4565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107b4575f80fd5b5061033f6107c33660046140f4565b5f90815260a4602052604090206003015460ff1690565b3480156107e5575f80fd5b506103966107f4366004614126565b6122aa565b348015610804575f80fd5b5061033f610813366004614126565b609f6020525f908152604090205460ff1681565b348015610832575f80fd5b5061036960995481565b348015610847575f80fd5b506103966108563660046140f4565b61238d565b348015610866575f80fd5b50610369610875366004614126565b60a56020525f908152604090205481565b348015610891575f80fd5b5061036960a85481565b3480156108a6575f80fd5b506103966108b53660046142d3565b61243d565b3480156108c5575f80fd5b506103966108d4366004614126565b612682565b3480156108e4575f80fd5b506103966108f33660046141cc565b6126db565b348015610903575f80fd5b50610396610912366004614347565b612a2b565b610396610925366004614362565b612b86565b348015610935575f80fd5b5061036960985481565b34801561094a575f80fd5b50610396610959366004614126565b613152565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046140f4565b613211565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046140f4565b61325b565b3480156109db575f80fd5b506103966109ea366004614126565b6132fe565b3480156109fa575f80fd5b5061036960a95481565b610a0c61338b565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade61338b565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b3985856133e5565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856143c5565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826143d8565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d0781613211565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906143c5565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e87613400565b5f80610e9384846133e5565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611326565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f6381613211565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856143d8565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f26111e5846011015160c01c90565b600985015160c01c613453565b60a25f6112006001846143d8565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123990846143d8565b81526020019081526020015f205f905560a45f60018361125991906143d8565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611302866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134e57505f82815260a1602052604090205415155b92915050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156113c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e491906143eb565b6114305760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a854156114805760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b611488613400565b6114956020830183614406565b60ff16156114e55760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b5f6114f36040840184614426565b915050806115435760405162461bcd60e51b815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610a70565b60608301356115945760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60808301356115e55760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f806115fc6115f76020870187614426565b6133e5565b915091505f61160f836001015160c01c90565b90505f60a1816116208460016143c5565b81526020019081526020015f20541461167b5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e5481146116cc5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a1602052604090205482146117285760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab60205260409020546060870135146117885760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f611797846011015160c01c90565b90505f80806117e96117ac60408c018c614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508792508891506135109050565b600196909601959485019493840193925090505f80491561180b575f4961182d565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b60408051611f2081019091529850905060f96118588961185060208f018f614406565b60ff1661368d565b60c087811b60018b015285811b60098b015286901b60118a01526019890183905260608c013560598a015260808c013560798a015260a08c013560998a01526118c7896118a860208e018e614426565b6040516118b6929190614487565b604051809103902060b99190910152565b60d98901889052603989018290528089205f88815260a1602090815260408083209390935560ab905290812060808e0135905560a65460ff16156119345760a7545f90815260a460205260409020600201546099544291611927916143c5565b61193191906143d8565b90505b6040518060800160405280428152602001826098544261195491906143c5565b61195e91906143c5565b81526020016119af8f80604001906119769190614426565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061369492505050565b81526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015611a23573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a479190614496565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8990556097546001600160a01b031692506374fe27b791508c3590611aaf90611aa9908f018f614426565b5f6136eb565b5f8e8060400190611ac09190614426565b6040518663ffffffff1660e01b8152600401611ae09594939291906144f4565b602060405180830381865afa158015611afb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b1f91906143eb565b611b915760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b611bdf61338b565b5f81118015611bf057506099548114155b611c3c5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff16158015611ca257505f5460ff8083169116105b611d145760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611d4f5f5460ff1690565b60ff16600214611da15760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b81611e145760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab6020526040902054611e3d57609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611c76565b611e9f61338b565b6001600160a01b0381165f908152609f602052604090205460ff16611f065760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b611f5c61338b565b611f655f61373f565b565b5f54610100900460ff1615808015611f8557505f54600160ff909116105b80611f9e5750303b158015611f9e57505f5460ff166001145b6120105760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff19166001179055801561204e575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061206b57506001600160a01b038516155b156120a2576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166120f85760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b6121006137a8565b61210861382c565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a180156122a1575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b6122b261338b565b6001600160a01b038116158015906122d85750609c546001600160a01b03828116911614155b6123245760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61239561338b565b5f811180156123a5575060648111155b80156123b3575060a9548114155b6123ff5760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611c76565b60a8541561248d5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612495613400565b5f806124a186866133e5565b915091505f6124b4836001015160c01c90565b5f81815260a1602052604090205490915082146125135760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b61251c81613211565b6125685760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff1916905560995460029091015442916125c1916143c5565b11612637575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152612632918391906138b0565b6122a1565b612642838686613a0c565b6122a181336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613bbf565b61268a61338b565b60aa80545f90915561269c8282613c8b565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611c76565b6126e361338b565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea541561275a5760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f8061276684846133e5565b915091505f612779836001015160c01c90565b905080156127c95760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f6127d5846079015190565b9050806128245760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c156128795760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612885856019015190565b036128d25760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440146128fe856039015190565b1461294b5760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b612a3361338b565b8015612b5457612a41613d36565b60a65460ff1615612b135760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091612a959084906143c5565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612b5c613d90565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612b36565b50565b335f908152609f602052604090205460ff16612be45760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a85415612c345760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612c3c613400565b60a65460ff1615612c8f5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d5410612cea5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a160205260409020548114612d515760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b612d648267ffffffffffffffff16611326565b612db05760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b031615612e2b5760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a260205260409020600101544210612ebb5760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f0b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f2f9190614496565b341015612f7e5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516130d091815260200190565b60405180910390a35f609d5460016130e891906143c5565b90505b609e548111613140578267ffffffffffffffff16811461312e576099545f82815260a26020526040812060010180549091906131289084906143c5565b90915550505b8061313881614567565b9150506130eb565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036131b15760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a560205260408120556131ca8282613c8b565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a8260405161320591815260200190565b60405180910390a25050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134e5750505f90815260a46020526040902060030154610100900460ff161590565b61326361338b565b5f8111801561327457506098548114155b6132c05760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611c76565b61330661338b565b6001600160a01b0381166133825760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b612b838161373f565b6033546001600160a01b03163314611f655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6133f28585613dc9565b812090969095509350505050565b60655460ff1615611f655760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361345e575050565b8082035f5b8281101561350a5761010081840381111561347d57508083035b609b546040517f3c7f528300000000000000000000000000000000000000000000000000000000815260048101859052602481018390526001600160a01b0390911690633c7f5283906044015f604051808303815f87803b1580156134e0575f80fd5b505af11580156134f2573d5f803e3d5ffd5b50505050610100830192505061010081019050613463565b50505050565b60405183515f9182916020870191908190849061352e908590613e32565b90506002840193505f5b818110156135b257603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613588603c8361459e565b61359290876143c5565b90505f6135a382603a015160f01c90565b97909701965050600101613538565b506020850282016040525b801561367b575f6135d285603a015160f01c90565b90506135e083828b8b613ec7565b92505f6135f1866038015160f01c90565b9050818110156136435760405162461bcd60e51b815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610a70565b50978801979690960195603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016135bd565b50819003902096919550909350505050565b8082535050565b5f805f6020840190506002810191505f6136af828651613e32565b90505f5b6136be6001836143d8565b8110156136d457603c93909301926001016136b3565b505f6136e1845160c01c90565b9695505050505050565b60605f808080806136fe888a018a6146a2565b955095509550955095505081871061371c5794506137389350505050565b838710613730578295505050505050613738565b509293505050505b9392505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166138245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f65613f95565b5f54610100900460ff166138a85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f6561401d565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af1158015613934573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139589190614496565b5f86815260a460205260409020600101549091506139779082906143c5565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906139b69084906143c5565b90915550506040516139c990849061473f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613a595760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f613a68846001015160c01c90565b90505f613a76856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613aa5876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a848613b67885160f81c90565b858888866040518663ffffffff1660e01b8152600401613b8b95949392919061476b565b5f6040518083038186803b158015613ba1575f80fd5b505afa158015613bb3573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613be3908461459e565b613bed919061479c565b9050613bf981836143d8565b60aa5f828254613c0991906143c5565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613c359084906143c5565b9091555050604051613c4890849061473f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613d32575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613cda576040519150601f19603f3d011682016040523d82523d5f602084013e613cdf565b606091505b5050905080613d305760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613d3e613400565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613d733390565b6040516001600160a01b03909116815260200160405180910390a1565b613d986140a2565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613d73565b5f8160f9811015613e1c5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040529250929050565b5f613e3e835160f01c90565b9050805f03613e79576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613e84603c8261459e565b613e8f9060026143c5565b821461134e576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f03613ed6575083613f8d565b609b546001600160a01b03165f5b85811015613f87576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f906001600160a01b0384169063ae453cd590602401602060405180830381865afa158015613f4a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f6e9190614496565b8852506020909601956001948501949384019301613ee4565b50859150505b949350505050565b5f54610100900460ff166140115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff166140995760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f653361373f565b60655460ff16611f655760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f60208284031215614104575f80fd5b5035919050565b80356001600160a01b0381168114614121575f80fd5b919050565b5f60208284031215614136575f80fd5b6137388261410b565b5f8083601f84011261414f575f80fd5b50813567ffffffffffffffff811115614166575f80fd5b60208301915083602082850101111561417d575f80fd5b9250929050565b5f805f60408486031215614196575f80fd5b833567ffffffffffffffff8111156141ac575f80fd5b6141b88682870161413f565b909790965060209590950135949350505050565b5f80602083850312156141dd575f80fd5b823567ffffffffffffffff8111156141f3575f80fd5b6141ff8582860161413f565b90969095509350505050565b5f806040838503121561421c575f80fd5b823567ffffffffffffffff80821115614233575f80fd5b9084019060c08287031215614246575f80fd5b9092506020840135908082111561425b575f80fd5b5083016060818603121561426d575f80fd5b809150509250929050565b5f805f805f8060c0878903121561428d575f80fd5b6142968761410b565b95506142a46020880161410b565b94506142b26040880161410b565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156142e6575f80fd5b843567ffffffffffffffff808211156142fd575f80fd5b6143098883890161413f565b90965094506020870135915080821115614321575f80fd5b5061432e8782880161413f565b95989497509550505050565b8015158114612b83575f80fd5b5f60208284031215614357575f80fd5b81356137388161433a565b5f8060408385031215614373575f80fd5b823567ffffffffffffffff8116811461438a575f80fd5b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134e5761134e614398565b8181038181111561134e5761134e614398565b5f602082840312156143fb575f80fd5b81516137388161433a565b5f60208284031215614416575f80fd5b813560ff81168114613738575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614459575f80fd5b83018035915067ffffffffffffffff821115614473575f80fd5b60200191503681900382131561417d575f80fd5b818382375f9101908152919050565b5f602082840312156144a6575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b8181101561453e5784516001600160a01b031683529383019391830191600101614519565b505087604086015284810360608601526145598187896144ad565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361459757614597614398565b5060010190565b808202811582820484141761134e5761134e614398565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145f1575f80fd5b8135602067ffffffffffffffff8083111561460e5761460e6145b5565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614651576146516145b5565b6040529384526020818701810194908101925087851115614670575f80fd5b6020870191505b84821015614697576146888261410b565b83529183019190830190614677565b979650505050505050565b5f805f805f8060c087890312156146b7575f80fd5b86359550602087013567ffffffffffffffff808211156146d5575f80fd5b6146e18a838b016145e2565b96506040890135955060608901359150808211156146fd575f80fd5b6147098a838b016145e2565b94506080890135935060a0890135915080821115614725575f80fd5b5061473289828a016145e2565b9150509295509295509295565b5f82515f5b8181101561475e5760208186018101518583015201614744565b505f920191825250919050565b858152846020820152608060408201525f61478a6080830185876144ad565b90508260608301529695505050505050565b5f826147cf577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint64\",\"name\":\"lastBlockNumber\",\"type\":\"uint64\"},{\"internalType\":\"uint16\",\"name\":\"numL1Messages\",\"type\":\"uint16\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_prevStateRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", + Bin: "0x60a060405234801562000010575f80fd5b50604051620049833803806200498383398101604081905262000033916200010f565b6001600160401b0381166080526200004a62000051565b506200013e565b5f54610100900460ff1615620000bd5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146200010d575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f6020828403121562000120575f80fd5b81516001600160401b038116811462000137575f80fd5b9392505050565b6080516148256200015e5f395f81816105ec0152613a2901526148255ff3fe608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd146109b1578063f2fde38b146109d0578063fb1e8b04146109ef575f80fd5b8063ddd8a3dc1461095e578063de8b30351461097d578063dff7827e1461099c575f80fd5b8063cd4edc69116100b7578063cd4edc6914610917578063ce5db8d61461092a578063d279c1911461093f575f80fd5b8063b35dac4e146108ba578063b3e0a509146108d9578063bedb86fb146108f8575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d1461085b578063b31a77d314610886578063b34844251461089b575f80fd5b8063a415d8dc146107f9578063a479265d14610827578063a4f209b01461083c575f80fd5b80638f1d37761161016c5780638f1d3776146106f9578063910129d4146107a957806397fc007c146107da575f80fd5b8063728cdbca146106a457806388b1ea09146106c35780638da5cb5b146106dc575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa146106465780636c578c1d14610671578063715018a614610690575f80fd5b80635ef7a94a1461057b5780635f77cf1d146105db5780636126729014610627575f80fd5b8063428868b51161022c578063428868b51461053257806357e0af6c146105455780635c975abb14610564575f80fd5b80632b7ac3f3146104c75780633b70c18a146104fe5780633e001b661461051d575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b3660046140c8565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b506103966103913660046140fa565b610a04565b005b3480156103a3575f80fd5b506103966103b2366004614158565b610ad6565b3480156103c2575f80fd5b5061033f6103d13660046140c8565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b506103966104083660046141a0565b610e2f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c3660046140c8565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c3660046140c8565b611326565b34801561047c575f80fd5b5061036961048b3660046140c8565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b63660046140c8565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104e6906001600160a01b031681565b6040516001600160a01b03909116815260200161034b565b348015610509575f80fd5b50609b546104e6906001600160a01b031681565b348015610528575f80fd5b5061036960aa5481565b6103966105403660046141df565b611354565b348015610550575f80fd5b5061039661055f3660046140c8565b611bbb565b34801561056f575f80fd5b5060655460ff1661033f565b348015610586575f80fd5b506105bb6105953660046140c8565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b3480156105e6575f80fd5b5061060e7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610632575f80fd5b506103966106413660046140c8565b611c66565b348015610651575f80fd5b506103696106603660046140c8565b60ab6020525f908152604090205481565b34801561067c575f80fd5b5061039661068b3660046140fa565b611e7b565b34801561069b575f80fd5b50610396611f38565b3480156106af575f80fd5b506103966106be36600461424c565b611f4b565b3480156106ce575f80fd5b5060a65461033f9060ff1681565b3480156106e7575f80fd5b506033546001600160a01b03166104e6565b348015610704575f80fd5b506107656107133660046140c8565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff831693680100000000000000009093046001600160a01b0316929060ff8082169161010090041686565b6040805167ffffffffffffffff90971687526001600160a01b03909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b3480156107b4575f80fd5b5061033f6107c33660046140c8565b5f90815260a4602052604090206003015460ff1690565b3480156107e5575f80fd5b506103966107f43660046140fa565b61228e565b348015610804575f80fd5b5061033f6108133660046140fa565b609f6020525f908152604090205460ff1681565b348015610832575f80fd5b5061036960995481565b348015610847575f80fd5b506103966108563660046140c8565b612371565b348015610866575f80fd5b506103696108753660046140fa565b60a56020525f908152604090205481565b348015610891575f80fd5b5061036960a85481565b3480156108a6575f80fd5b506103966108b53660046142a7565b612421565b3480156108c5575f80fd5b506103966108d43660046140fa565b612742565b3480156108e4575f80fd5b506103966108f33660046141a0565b61279b565b348015610903575f80fd5b5061039661091236600461431b565b612aeb565b61039661092536600461434d565b612c46565b348015610935575f80fd5b5061036960985481565b34801561094a575f80fd5b506103966109593660046140fa565b613212565b348015610969575f80fd5b506097546104e6906001600160a01b031681565b348015610988575f80fd5b5061033f6109973660046140c8565b6132d1565b3480156109a7575f80fd5b50610369609a5481565b3480156109bc575f80fd5b506103966109cb3660046140c8565b61331b565b3480156109db575f80fd5b506103966109ea3660046140fa565b6133be565b3480156109fa575f80fd5b5061036960a95481565b610a0c61344b565b6001600160a01b0381165f908152609f602052604090205460ff1615610a795760405162461bcd60e51b815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b6001600160a01b0381165f818152609f6020908152604091829020805460ff1916600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610ade61344b565b5f8111610b2d5760405162461bcd60e51b815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610a70565b5f80610b3985856134a5565b915091505f610b4c836001015160c01c90565b5f81815260a160205260409020549091508214610bab5760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b5f60a181610bb987856143a2565b81526020019081526020015f205414610c395760405162461bcd60e51b8152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610a70565b609d548111610cb05760405162461bcd60e51b815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b610cbb6001826143b5565b609e555b8315610e2757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610d07816132d1565b15610d62575f81815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091610d529084906143a2565b909155505060a6805460ff191690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610ddf575060a85481145b15610de9575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610cbf575b505050505050565b60a85415610e7f5760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b610e8761353e565b5f80610e9384846134a5565b915091505f610ea6836001015160c01c90565b5f81815260a160205260409020549091508214610f055760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b610f0e81611326565b610f5a5760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b610f63816132d1565b15610fb05760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003015460ff16156110115760405162461bcd60e51b815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610a70565b5f81815260a260205260409020600101544210156110715760405162461bcd60e51b815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610a70565b605983015160a05f6110846001856143b5565b81526020019081526020015f2054146110df5760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f81815260a060205260409020541561113a5760405162461bcd60e51b815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610a70565b80609d546001011461118e5760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b609d819055600160a35f6111a3866099015190565b815260208101919091526040015f20805460ff191691151591909117905560798301515f82815260a060205260409020556111f26111e5846011015160c01c90565b600985015160c01c613591565b60a25f6112006001846143b5565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab919061123990846143b5565b81526020019081526020015f205f905560a45f60018361125991906143b5565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d611302866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061134e57505f82815260a1602052604090205415155b92915050565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156113c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e491906143c8565b6114305760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b60a854156114805760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b61148861353e565b61149560208301836143e3565b60ff1615806114b357506114ac60208301836143e3565b60ff166001145b6114ff5760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610a70565b60808201356115505760405162461bcd60e51b815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610a70565b60a08201356115a15760405162461bcd60e51b815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610a70565b5f806115b86115b36020860186614403565b6134a5565b915091505f6115cb836001015160c01c90565b90505f60a1816115dc8460016143a2565b81526020019081526020015f2054146116375760405162461bcd60e51b815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610a70565b609e5481146116885760405162461bcd60e51b815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610a70565b5f81815260a1602052604090205482146116e45760405162461bcd60e51b815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610a70565b5f81815260ab60205260409020546080860135146117445760405162461bcd60e51b815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610a70565b5f611753846011015160c01c90565b90505f61177f6117696060890160408a01614464565b61177960808a0160608b0161447d565b8461364e565b9050611791608088016060890161447d565b6001939093019261ffff1691909101905f8049156117b0575f496117d2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b905060f96117e360208a018a6143e3565b60ff166001036117f257506101015b6040805182810190915296506118178761180f60208c018c6143e3565b60ff16613692565b60c085901b60018801526118458761183560808c0160608d0161447d565b61ffff1660c01b60099190910152565b60c084811b6011890152601988018490526039880183905260808a0135605989015260a08a0135607989015289013560998801526118a98761188a60208b018b614403565b60405161189892919061449e565b604051809103902060b99190910152565b60d9870186905260016118bf60208b018b6143e3565b60ff16106118f1576118f1876118db60608c0160408d01614464565b67ffffffffffffffff1660c01b60f99190910152565b8087205f86815260a1602090815260408083209390935560ab905290812060a08b0135905560a65460ff16156119505760a7545f90815260a460205260409020600201546099544291611943916143a2565b61194d91906143b5565b90505b6040518060800160405280428152602001826098544261197091906143a2565b61197a91906143a2565b815260200161198f60608d0160408e01614464565b67ffffffffffffffff1681526097546020909101906001600160a01b031663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015611a0d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a3191906144ad565b90525f87815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e8790556097546001600160a01b031692506374fe27b79150893590611a9990611a93908c018c614403565b5f613699565b5f611aa760408d018d614403565b6040518663ffffffff1660e01b8152600401611ac795949392919061450b565b602060405180830381865afa158015611ae2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b0691906143c8565b611b785760405162461bcd60e51b815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610a70565b5f84815260a16020526040808220549051909186917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050565b611bc361344b565b5f81118015611bd457506099548114155b611c205760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610a70565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff16158015611c8657505f5460ff8083169116105b611cf85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff831617610100179055611d335f5460ff1690565b60ff16600214611d855760405162461bcd60e51b815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610a70565b81611df85760405162461bcd60e51b815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610a70565b609e545f90815260ab6020526040902054611e2157609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611c5a565b611e8361344b565b6001600160a01b0381165f908152609f602052604090205460ff16611eea5760405162461bcd60e51b815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610a70565b6001600160a01b0381165f818152609f60209081526040808320805460ff19169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610acb565b611f4061344b565b611f495f6136ed565b565b5f54610100900460ff1615808015611f6957505f54600160ff909116105b80611f825750303b158015611f8257505f5460ff166001145b611ff45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a70565b5f805460ff191660011790558015612032575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6001600160a01b038616158061204f57506001600160a01b038516155b15612086576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0387166120dc5760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610a70565b6120e4613756565b6120ec6137da565b609780546001600160a01b03808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015612285575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b61229661344b565b6001600160a01b038116158015906122bc5750609c546001600160a01b03828116911614155b6123085760405162461bcd60e51b815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610a70565b609c80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b61237961344b565b5f81118015612389575060648111155b8015612397575060a9548114155b6123e35760405162461bcd60e51b815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610a70565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101611c5a565b60a854156124715760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b61247961353e565b6097546001600160a01b03166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156124e5573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061250991906143c8565b6125555760405162461bcd60e51b815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610a70565b5f8061256186866134a5565b915091505f612574836001015160c01c90565b5f81815260a1602052604090205490915082146125d35760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b6125dc816132d1565b6126285760405162461bcd60e51b815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610a70565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a6805460ff191690556099546002909101544291612681916143a2565b116126f7575f81815260a4602090815260408083206003908101805460ff1916600117905560a2835292819020909201548251808401909352600783527f54696d656f757400000000000000000000000000000000000000000000000000918301919091526126f29183919061385e565b612285565b6127028386866139ba565b61228581336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250613b6d565b61274a61344b565b60aa80545f90915561275c8282613c39565b604080516001600160a01b0384168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101611c5a565b6127a361344b565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea541561281a5760405162461bcd60e51b815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610a70565b5f8061282684846134a5565b915091505f612839836001015160c01c90565b905080156128895760405162461bcd60e51b815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610a70565b5f612895846079015190565b9050806128e45760405162461bcd60e51b815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610a70565b600984015160c01c156129395760405162461bcd60e51b815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610a70565b5f612945856019015190565b036129925760405162461bcd60e51b815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610a70565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440146129be856039015190565b14612a0b5760405162461bcd60e51b815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610a70565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b612af361344b565b8015612c1457612b01613ce4565b60a65460ff1615612bd35760a7545f90815260a460209081526040808320600181015490546801000000000000000090046001600160a01b0316845260a59092528220805491929091612b559084906143a2565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a6805460ff191690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b6040516001600160a01b03909116815260200160405180910390a150565b612c1c613d3e565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612bf6565b50565b335f908152609f602052604090205460ff16612ca45760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610a70565b60a85415612cf45760405162461bcd60e51b815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610a70565b612cfc61353e565b60a65460ff1615612d4f5760405162461bcd60e51b815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610a70565b8167ffffffffffffffff16609d5410612daa5760405162461bcd60e51b815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a160205260409020548114612e115760405162461bcd60e51b815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610a70565b612e248267ffffffffffffffff16611326565b612e705760405162461bcd60e51b815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a460205260409020546801000000000000000090046001600160a01b031615612eeb5760405162461bcd60e51b815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610a70565b67ffffffffffffffff82165f90815260a260205260409020600101544210612f7b5760405162461bcd60e51b815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610a70565b60975f9054906101000a90046001600160a01b03166001600160a01b0316630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612fcb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fef91906144ad565b34101561303e5760405162461bcd60e51b815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610a70565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a4909552969096209451855492516001600160a01b031668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092179290921790556001600160a01b03168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161319091815260200190565b60405180910390a35f609d5460016131a891906143a2565b90505b609e548111613200578267ffffffffffffffff1681146131ee576099545f82815260a26020526040812060010180549091906131e89084906143a2565b90915550505b806131f88161457e565b9150506131ab565b505060a6805460ff1916600117905550565b335f90815260a56020526040812054908190036132715760405162461bcd60e51b815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610a70565b335f90815260a5602052604081205561328a8282613c39565b816001600160a01b03167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a826040516132c591815260200190565b60405180910390a25050565b5f81815260a460205260408120546801000000000000000090046001600160a01b03161580159061134e5750505f90815260a46020526040902060030154610100900460ff161590565b61332361344b565b5f8111801561333457506098548114155b6133805760405162461bcd60e51b815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610a70565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101611c5a565b6133c661344b565b6001600160a01b0381166134425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610a70565b612c43816136ed565b6033546001600160a01b03163314611f495760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a70565b5f805f6134b28585613d77565b90505f8160ff165f036134d3576134c98686613de7565b9094509050613530565b8160ff166001036134e8576134c98686613e50565b60405162461bcd60e51b815260206004820152601960248201527f556e737570706f727465642062617463682076657273696f6e000000000000006044820152606401610a70565b808420925050509250929050565b60655460ff1615611f495760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610a70565b805f0361359c575050565b8082035f5b82811015613648576101008184038111156135bb57508083035b609b546040517f3c7f528300000000000000000000000000000000000000000000000000000000815260048101859052602481018390526001600160a01b0390911690633c7f5283906044015f604051808303815f87803b15801561361e575f80fd5b505af1158015613630573d5f803e3d5ffd5b505050506101008301925050610100810190506135a1565b50505050565b6040805160c085901b815260f084901b6008820152600a60208502820181019092525f9181016136838161ffff871686613ea3565b82900390912095945050505050565b8082535050565b60605f808080806136ac888a018a6146a2565b95509550955095509550508187106136ca5794506136e69350505050565b8387106136de5782955050505050506136e6565b509293505050505b9392505050565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166137d25760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f49613f69565b5f54610100900460ff166138565760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f49613ff1565b60a88390555f83815260a460205260408082205460975491517f45bc4d1000000000000000000000000000000000000000000000000000000000815260048101869052680100000000000000009091046001600160a01b03908116939216906345bc4d10906024016020604051808303815f875af11580156138e2573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061390691906144ad565b5f86815260a460205260409020600101549091506139259082906143a2565b5f86815260a460209081526040808320546801000000000000000090046001600160a01b0316835260a5909152812080549091906139649084906143a2565b909155505060405161397790849061473f565b604051908190038120906001600160a01b0384169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80613a075760405162461bcd60e51b815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610a70565b5f613a16846001015160c01c90565b90505f613a24856039015190565b90505f7f0000000000000000000000000000000000000000000000000000000000000000613a53876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c549091506001600160a01b0316632c09a848613b15885160f81c90565b858888866040518663ffffffff1660e01b8152600401613b3995949392919061476b565b5f6040518083038186803b158015613b4f575f80fd5b505afa158015613b61573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a954909190606490613b91908461479c565b613b9b91906147b3565b9050613ba781836143b5565b60aa5f828254613bb791906143a2565b90915550506001600160a01b0384165f90815260a5602052604081208054839290613be39084906143a2565b9091555050604051613bf690849061473f565b604051908190038120906001600160a01b0386169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b8015613ce0575f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114613c88576040519150601f19603f3d011682016040523d82523d5f602084013e613c8d565b606091505b5050905080613cde5760405162461bcd60e51b815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610a70565b505b5050565b613cec61353e565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613d213390565b6040516001600160a01b03909116815260200160405180910390a1565b613d46614076565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33613d21565b5f81613dc55760405162461bcd60e51b815260206004820152601260248201527f456d7074792062617463682068656164657200000000000000000000000000006044820152606401610a70565b82825f818110613dd757613dd76147eb565b919091013560f81c949350505050565b5f8160f9811015613e3a5760405162461bcd60e51b815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610a70565b6040519150808483378082016040529250929050565b5f816101018114613e3a5760405162461bcd60e51b815260206004820181905260248201527f626174636820686561646572206c656e67746820697320696e636f72726563746044820152606401610a70565b5f825f03613eb25750826136e6565b609b546001600160a01b03165f5b84811015613f5f576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f906001600160a01b0384169063ae453cd590602401602060405180830381865afa158015613f26573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f4a91906144ad565b87525060209095019460019384019301613ec0565b5093949350505050565b5f54610100900460ff16613fe55760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b6065805460ff19169055565b5f54610100900460ff1661406d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a70565b611f49336136ed565b60655460ff16611f495760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610a70565b5f602082840312156140d8575f80fd5b5035919050565b80356001600160a01b03811681146140f5575f80fd5b919050565b5f6020828403121561410a575f80fd5b6136e6826140df565b5f8083601f840112614123575f80fd5b50813567ffffffffffffffff81111561413a575f80fd5b602083019150836020828501011115614151575f80fd5b9250929050565b5f805f6040848603121561416a575f80fd5b833567ffffffffffffffff811115614180575f80fd5b61418c86828701614113565b909790965060209590950135949350505050565b5f80602083850312156141b1575f80fd5b823567ffffffffffffffff8111156141c7575f80fd5b6141d385828601614113565b90969095509350505050565b5f80604083850312156141f0575f80fd5b823567ffffffffffffffff80821115614207575f80fd5b9084019060e0828703121561421a575f80fd5b9092506020840135908082111561422f575f80fd5b50830160608186031215614241575f80fd5b809150509250929050565b5f805f805f8060c08789031215614261575f80fd5b61426a876140df565b9550614278602088016140df565b9450614286604088016140df565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f80604085870312156142ba575f80fd5b843567ffffffffffffffff808211156142d1575f80fd5b6142dd88838901614113565b909650945060208701359150808211156142f5575f80fd5b5061430287828801614113565b95989497509550505050565b8015158114612c43575f80fd5b5f6020828403121561432b575f80fd5b81356136e68161430e565b803567ffffffffffffffff811681146140f5575f80fd5b5f806040838503121561435e575f80fd5b61436783614336565b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561134e5761134e614375565b8181038181111561134e5761134e614375565b5f602082840312156143d8575f80fd5b81516136e68161430e565b5f602082840312156143f3575f80fd5b813560ff811681146136e6575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614436575f80fd5b83018035915067ffffffffffffffff821115614450575f80fd5b602001915036819003821315614151575f80fd5b5f60208284031215614474575f80fd5b6136e682614336565b5f6020828403121561448d575f80fd5b813561ffff811681146136e6575f80fd5b818382375f9101908152919050565b5f602082840312156144bd575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b818110156145555784516001600160a01b031683529383019391830191600101614530565b505087604086015284810360608601526145708187896144c4565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036145ae576145ae614375565b5060010190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126145f1575f80fd5b8135602067ffffffffffffffff8083111561460e5761460e6145b5565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715614651576146516145b5565b6040529384526020818701810194908101925087851115614670575f80fd5b6020870191505b8482101561469757614688826140df565b83529183019190830190614677565b979650505050505050565b5f805f805f8060c087890312156146b7575f80fd5b86359550602087013567ffffffffffffffff808211156146d5575f80fd5b6146e18a838b016145e2565b96506040890135955060608901359150808211156146fd575f80fd5b6147098a838b016145e2565b94506080890135935060a0890135915080821115614725575f80fd5b5061473289828a016145e2565b9150509295509295509295565b5f82515f5b8181101561475e5760208186018101518583015201614744565b505f920191825250919050565b858152846020820152608060408201525f61478a6080830185876144c4565b90508260608301529695505050505050565b808202811582820484141761134e5761134e614375565b5f826147e6577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a", } // RollupABI is the input ABI used to generate the binding from. @@ -1260,23 +1261,23 @@ func (_Rollup *RollupTransactorSession) ClaimReward(receiver common.Address) (*t return _Rollup.Contract.ClaimReward(&_Rollup.TransactOpts, receiver) } -// CommitBatch is a paid mutator transaction binding the contract method 0x4a8d544f. +// CommitBatch is a paid mutator transaction binding the contract method 0x428868b5. // -// Solidity: function commitBatch((uint8,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() +// Solidity: function commitBatch((uint8,bytes,uint64,uint16,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() func (_Rollup *RollupTransactor) CommitBatch(opts *bind.TransactOpts, batchDataInput IRollupBatchDataInput, batchSignatureInput IRollupBatchSignatureInput) (*types.Transaction, error) { return _Rollup.contract.Transact(opts, "commitBatch", batchDataInput, batchSignatureInput) } -// CommitBatch is a paid mutator transaction binding the contract method 0x4a8d544f. +// CommitBatch is a paid mutator transaction binding the contract method 0x428868b5. // -// Solidity: function commitBatch((uint8,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() +// Solidity: function commitBatch((uint8,bytes,uint64,uint16,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() func (_Rollup *RollupSession) CommitBatch(batchDataInput IRollupBatchDataInput, batchSignatureInput IRollupBatchSignatureInput) (*types.Transaction, error) { return _Rollup.Contract.CommitBatch(&_Rollup.TransactOpts, batchDataInput, batchSignatureInput) } -// CommitBatch is a paid mutator transaction binding the contract method 0x4a8d544f. +// CommitBatch is a paid mutator transaction binding the contract method 0x428868b5. // -// Solidity: function commitBatch((uint8,bytes,bytes,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() +// Solidity: function commitBatch((uint8,bytes,uint64,uint16,bytes32,bytes32,bytes32) batchDataInput, (uint256,bytes,bytes) batchSignatureInput) payable returns() func (_Rollup *RollupTransactorSession) CommitBatch(batchDataInput IRollupBatchDataInput, batchSignatureInput IRollupBatchSignatureInput) (*types.Transaction, error) { return _Rollup.Contract.CommitBatch(&_Rollup.TransactOpts, batchDataInput, batchSignatureInput) } diff --git a/bindings/bindings/rollup_more.go b/bindings/bindings/rollup_more.go index 3581703c1..126e8accf 100644 --- a/bindings/bindings/rollup_more.go +++ b/bindings/bindings/rollup_more.go @@ -13,7 +13,7 @@ const RollupStorageLayoutJSON = "{\"storage\":[{\"astId\":1000,\"contract\":\"co var RollupStorageLayout = new(solc.StorageLayout) -var RollupDeployedBin = "0x608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610a0c578063f2fde38b14610a2b578063fb1e8b0414610a4a575f80fd5b8063ddd8a3dc146109ac578063de8b3035146109d8578063dff7827e146109f7575f80fd5b8063cd4edc69116100b7578063cd4edc6914610965578063ce5db8d614610978578063d279c1911461098d575f80fd5b8063b35dac4e14610908578063b3e0a50914610927578063bedb86fb14610946575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d146108a9578063b31a77d3146108d4578063b3484425146108e9575f80fd5b8063a415d8dc14610847578063a479265d14610875578063a4f209b01461088a575f80fd5b80638f1d37761161016c5780638f1d37761461072d578063910129d4146107f757806397fc007c14610828575f80fd5b8063728cdbca146106cb57806388b1ea09146106ea5780638da5cb5b14610703575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa1461066d5780636c578c1d14610698578063715018a6146106b7575f80fd5b80635ef7a94a146105a25780635f77cf1d14610602578063612672901461064e575f80fd5b80634a8d544f1161022c5780634a8d544f1461055957806357e0af6c1461056c5780635c975abb1461058b575f80fd5b80632b7ac3f3146104c75780633b70c18a146105185780633e001b6614610544575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614b80565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614bbf565b610a5f565b005b3480156103a3575f80fd5b506103966103b2366004614c1d565b610b83565b3480156103c2575f80fd5b5061033f6103d1366004614b80565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b50610396610408366004614c65565b610f6f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614b80565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614b80565b61156e565b34801561047c575f80fd5b5061036961048b366004614b80565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614b80565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161034b565b348015610523575f80fd5b50609b546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b34801561054f575f80fd5b5061036960aa5481565b610396610567366004614ca4565b61159c565b348015610577575f80fd5b50610396610586366004614b80565b611f7e565b348015610596575f80fd5b5060655460ff1661033f565b3480156105ad575f80fd5b506105e26105bc366004614b80565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b34801561060d575f80fd5b506106357f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610659575f80fd5b50610396610668366004614b80565b612043565b348015610678575f80fd5b50610369610687366004614b80565b60ab6020525f908152604090205481565b3480156106a3575f80fd5b506103966106b2366004614bbf565b6122a6565b3480156106c2575f80fd5b506103966123b5565b3480156106d6575f80fd5b506103966106e5366004614d11565b6123c8565b3480156106f5575f80fd5b5060a65461033f9060ff1681565b34801561070e575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104f3565b348015610738575f80fd5b506107a6610747366004614b80565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b348015610802575f80fd5b5061033f610811366004614b80565b5f90815260a4602052604090206003015460ff1690565b348015610833575f80fd5b50610396610842366004614bbf565b612791565b348015610852575f80fd5b5061033f610861366004614bbf565b609f6020525f908152604090205460ff1681565b348015610880575f80fd5b5061036960995481565b348015610895575f80fd5b506103966108a4366004614b80565b6128b5565b3480156108b4575f80fd5b506103696108c3366004614bbf565b60a56020525f908152604090205481565b3480156108df575f80fd5b5061036960a85481565b3480156108f4575f80fd5b50610396610903366004614d6c565b61297f565b348015610913575f80fd5b50610396610922366004614bbf565b612c4e565b348015610932575f80fd5b50610396610941366004614c65565b612cb4565b348015610951575f80fd5b50610396610960366004614de0565b6130a0565b610396610973366004614dfb565b613233565b348015610983575f80fd5b5061036960985481565b348015610998575f80fd5b506103966109a7366004614bbf565b613948565b3480156109b7575f80fd5b506097546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109e3575f80fd5b5061033f6109f2366004614b80565b613a2e565b348015610a02575f80fd5b50610369609a5481565b348015610a17575f80fd5b50610396610a26366004614b80565b613a85565b348015610a36575f80fd5b50610396610a45366004614bbf565b613b42565b348015610a55575f80fd5b5061036960a95481565b610a67613bf6565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610afb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b8b613bf6565b5f8111610bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610af2565b5f80610c008585613c77565b915091505f610c13836001015160c01c90565b5f81815260a160205260409020549091508214610c8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b5f60a181610c9a8785614e5e565b81526020019081526020015f205414610d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610af2565b609d548111610dc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b610dd0600182614e71565b609e555b8315610f6757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610e1c81613a2e565b15610ea2575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e74908490614e5e565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610f1f575060a85481145b15610f29575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610dd4575b505050505050565b60a85415610fd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b610fe1613c92565b5f80610fed8484613c77565b915091505f611000836001015160c01c90565b5f81815260a160205260409020549091508214611079576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6110828161156e565b6110e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b6110f181613a2e565b15611158576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003015460ff16156111d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610af2565b5f81815260a2602052604090206001015442101561124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610af2565b605983015160a05f611260600185614e71565b81526020019081526020015f2054146112d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f81815260a060205260409020541561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610af2565b80609d54600101146113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b609d819055600160a35f6113cd866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561143a61142d846011015160c01c90565b600985015160c01c613cff565b60a25f611448600184614e71565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906114819084614e71565b81526020019081526020015f205f905560a45f6001836114a19190614e71565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d61154a866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061159657505f82815260a1602052604090205415155b92915050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015611622573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116469190614e84565b6116ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610af2565b60a85415611716576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61171e613c92565b61172b6020830183614e9f565b60ff1615611795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610af2565b5f6117a36040840184614ebf565b9150508061180d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f626174636820697320656d7074790000000000000000000000000000000000006044820152606401610af2565b6060830135611878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610af2565b60808301356118e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610af2565b5f806118fa6118f56020870187614ebf565b613c77565b915091505f61190d836001015160c01c90565b90505f60a18161191e846001614e5e565b81526020019081526020015f205414611993576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610af2565b609e5481146119fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b5f81815260a160205260409020548214611a74576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610af2565b5f81815260ab6020526040902054606087013514611aee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f611afd846011015160c01c90565b90505f8080611b4f611b1260408c018c614ebf565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250889150613dc99050565b600196909601959485019493840193925090505f804915611b71575f49611b93565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b60408051611f2081019091529850905060f9611bbe89611bb660208f018f614e9f565b60ff16613f60565b60c087811b60018b015285811b60098b015286901b60118a01526019890183905260608c013560598a015260808c013560798a015260a08c013560998a0152611c2d89611c0e60208e018e614ebf565b604051611c1c929190614f20565b604051809103902060b99190910152565b60d98901889052603989018290528089205f88815260a1602090815260408083209390935560ab905290812060808e0135905560a65460ff1615611c9a5760a7545f90815260a460205260409020600201546099544291611c8d91614e5e565b611c979190614e71565b90505b60405180608001604052804281526020018260985442611cba9190614e5e565b611cc49190614e5e565b8152602001611d158f8060400190611cdc9190614ebf565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250613f6792505050565b815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015611da3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dc79190614f2f565b90525f89815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e89905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b791508c3590611e3c90611e36908f018f614ebf565b5f613fbe565b5f8e8060400190611e4d9190614ebf565b6040518663ffffffff1660e01b8152600401611e6d959493929190614f8d565b602060405180830381865afa158015611e88573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611eac9190614e84565b611f38576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b5f86815260a16020526040808220549051909188917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050505050565b611f86613bf6565b5f81118015611f9757506099548114155b611ffd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610af2565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561206357505f5460ff8083169116105b6120ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff83161761010017905561212a5f5460ff1690565b60ff16600214612196576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610af2565b81612223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610af2565b609e545f90815260ab602052604090205461224c57609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001612037565b6122ae613bf6565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1661233c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610af2565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b78565b6123bd613bf6565b6123c65f614012565b565b5f54610100900460ff16158080156123e657505f54600160ff909116105b806123ff5750303b1580156123ff57505f5460ff166001145b61248b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156124e7575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8616158061251e575073ffffffffffffffffffffffffffffffffffffffff8516155b15612555576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff87166125d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610af2565b6125da614088565b6125e2614126565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015612788575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b612799613bf6565b73ffffffffffffffffffffffffffffffffffffffff8116158015906127d95750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b61283f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610af2565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b6128bd613bf6565b5f811180156128cd575060648111155b80156128db575060a9548114155b612941576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610af2565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101612037565b60a854156129e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b6129f1613c92565b5f806129fd8686613c77565b915091505f612a10836001015160c01c90565b5f81815260a160205260409020549091508214612a89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b612a9281613a2e565b612af8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556099546002909101544291612b6f91614e5e565b11612c03575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152612bfe918391906141c4565b612788565b612c0e838686614347565b61278881336040518060400160405280600d81526020017f50726f6f66207375636365737300000000000000000000000000000000000000815250614521565b612c56613bf6565b60aa80545f909155612c688282614607565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101612037565b612cbc613bf6565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415612d4d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610af2565b5f80612d598484613c77565b915091505f612d6c836001015160c01c90565b90508015612dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610af2565b5f612de2846079015190565b905080612e4b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610af2565b600984015160c01c15612eba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610af2565b5f612ec6856019015190565b03612f2d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610af2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014612f59856039015190565b14612fc0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610af2565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b6130a8613bf6565b8015613201576130b66146d9565b60a65460ff16156131b35760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091613117908490614e5e565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b61320961475e565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336131d6565b50565b335f908152609f602052604090205460ff166132ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610af2565b60a85415613315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61331d613c92565b60a65460ff161561338a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610af2565b8167ffffffffffffffff16609d54106133ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a160205260409020548114613480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6134938267ffffffffffffffff1661156e565b6134f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff161561359b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a260205260409020600101544210613645576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610af2565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156136af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136d39190614f2f565b34101561373c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b9976346040516138a891815260200190565b60405180910390a35f609d5460016138c09190614e5e565b90505b609e548111613918578267ffffffffffffffff168114613906576099545f82815260a2602052604081206001018054909190613900908490614e5e565b90915550505b806139108161500d565b9150506138c3565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a56020526040812054908190036139c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610af2565b335f90815260a560205260408120556139da8282614607565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051613a2291815260200190565b60405180910390a25050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16158015906115965750505f90815260a46020526040902060030154610100900460ff161590565b613a8d613bf6565b5f81118015613a9e57506098548114155b613b04576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610af2565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101612037565b613b4a613bf6565b73ffffffffffffffffffffffffffffffffffffffff8116613bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610af2565b61323081614012565b60335473ffffffffffffffffffffffffffffffffffffffff1633146123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610af2565b5f805f613c8485856147b5565b812090969095509350505050565b60655460ff16156123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610af2565b805f03613d0a575050565b8082035f5b82811015613dc357610100818403811115613d2957508083035b609b546040517f3c7f5283000000000000000000000000000000000000000000000000000000008152600481018590526024810183905273ffffffffffffffffffffffffffffffffffffffff90911690633c7f5283906044015f604051808303815f87803b158015613d99575f80fd5b505af1158015613dab573d5f803e3d5ffd5b50505050610100830192505061010081019050613d0f565b50505050565b60405183515f91829160208701919081908490613de7908590614838565b90506002840193505f5b81811015613e6b57603c81028501805184526020908101517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000001690840152603a830192505f613e41603c83615044565b613e4b9087614e5e565b90505f613e5c82603a015160f01c90565b97909701965050600101613df1565b506020850282016040525b8015613f4e575f613e8b85603a015160f01c90565b9050613e9983828b8b6148cd565b92505f613eaa866038015160f01c90565b905081811015613f16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6e756d20747873206c657373207468616e206e756d204c31206d7367730000006044820152606401610af2565b50978801979690960195603c93909301927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01613e76565b50819003902096919550909350505050565b8082535050565b5f805f6020840190506002810191505f613f82828651614838565b90505f5b613f91600183614e71565b811015613fa757603c9390930192600101613f86565b505f613fb4845160c01c90565b9695505050505050565b60605f80808080613fd1888a018a615148565b9550955095509550955050818710613fef57945061400b9350505050565b83871061400357829550505050505061400b565b509293505050505b9392505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff1661411e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6123c66149b5565b5f54610100900460ff166141bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6123c6614a75565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af1158015614255573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142799190614f2f565b5f86815260a46020526040902060010154909150614298908290614e5e565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a5909152812080549091906142e4908490614e5e565b90915550506040516142f79084906151e5565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b806143ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610af2565b5f6143bd846001015160c01c90565b90505f6143cb856039015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006143fa876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a8486144c9885160f81c90565b858888866040518663ffffffff1660e01b81526004016144ed959493929190615211565b5f6040518083038186803b158015614503575f80fd5b505afa158015614515573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a9549091906064906145459084615044565b61454f9190615242565b905061455b8183614e71565b60aa5f82825461456b9190614e5e565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a56020526040812080548392906145a4908490614e5e565b90915550506040516145b79084906151e5565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80156146d5575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f8114614663576040519150601f19603f3d011682016040523d82523d5f602084013e614668565b606091505b50509050806146d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610af2565b505b5050565b6146e1613c92565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586147343390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b614766614b14565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33614734565b5f8160f9811015614822576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610af2565b6040519150808483378082016040529250929050565b5f614844835160f01c90565b9050805f0361487f576040517f5168407700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61488a603c82615044565b614895906002614e5e565b8214611596576040517f4a969e2d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f036148dc5750836149ad565b609b5473ffffffffffffffffffffffffffffffffffffffff165f5b858110156149a7576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f9073ffffffffffffffffffffffffffffffffffffffff84169063ae453cd590602401602060405180830381865afa15801561496a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061498e9190614f2f565b88525060209096019560019485019493840193016148f7565b50859150505b949350505050565b5f54610100900460ff16614a4b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff16614b0b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6123c633614012565b60655460ff166123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610af2565b5f60208284031215614b90575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614bba575f80fd5b919050565b5f60208284031215614bcf575f80fd5b61400b82614b97565b5f8083601f840112614be8575f80fd5b50813567ffffffffffffffff811115614bff575f80fd5b602083019150836020828501011115614c16575f80fd5b9250929050565b5f805f60408486031215614c2f575f80fd5b833567ffffffffffffffff811115614c45575f80fd5b614c5186828701614bd8565b909790965060209590950135949350505050565b5f8060208385031215614c76575f80fd5b823567ffffffffffffffff811115614c8c575f80fd5b614c9885828601614bd8565b90969095509350505050565b5f8060408385031215614cb5575f80fd5b823567ffffffffffffffff80821115614ccc575f80fd5b9084019060c08287031215614cdf575f80fd5b90925060208401359080821115614cf4575f80fd5b50830160608186031215614d06575f80fd5b809150509250929050565b5f805f805f8060c08789031215614d26575f80fd5b614d2f87614b97565b9550614d3d60208801614b97565b9450614d4b60408801614b97565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614d7f575f80fd5b843567ffffffffffffffff80821115614d96575f80fd5b614da288838901614bd8565b90965094506020870135915080821115614dba575f80fd5b50614dc787828801614bd8565b95989497509550505050565b8015158114613230575f80fd5b5f60208284031215614df0575f80fd5b813561400b81614dd3565b5f8060408385031215614e0c575f80fd5b823567ffffffffffffffff81168114614e23575f80fd5b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561159657611596614e31565b8181038181111561159657611596614e31565b5f60208284031215614e94575f80fd5b815161400b81614dd3565b5f60208284031215614eaf575f80fd5b813560ff8116811461400b575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614ef2575f80fd5b83018035915067ffffffffffffffff821115614f0c575f80fd5b602001915036819003821315614c16575f80fd5b818382375f9101908152919050565b5f60208284031215614f3f575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b81811015614fe457845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101614fb2565b50508760408601528481036060860152614fff818789614f46565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361503d5761503d614e31565b5060010190565b808202811582820484141761159657611596614e31565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112615097575f80fd5b8135602067ffffffffffffffff808311156150b4576150b461505b565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156150f7576150f761505b565b6040529384526020818701810194908101925087851115615116575f80fd5b6020870191505b8482101561513d5761512e82614b97565b8352918301919083019061511d565b979650505050505050565b5f805f805f8060c0878903121561515d575f80fd5b86359550602087013567ffffffffffffffff8082111561517b575f80fd5b6151878a838b01615088565b96506040890135955060608901359150808211156151a3575f80fd5b6151af8a838b01615088565b94506080890135935060a08901359150808211156151cb575f80fd5b506151d889828a01615088565b9150509295509295509295565b5f82515f5b8181101561520457602081860181015185830152016151ea565b505f920191825250919050565b858152846020820152608060408201525f615230608083018587614f46565b90508260608301529695505050505050565b5f82615275577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea164736f6c6343000818000a" +var RollupDeployedBin = "0x608060405260043610610306575f3560e01c8063728cdbca11610191578063b35dac4e116100dc578063ddd8a3dc11610087578063e3fff1dd11610062578063e3fff1dd14610a0c578063f2fde38b14610a2b578063fb1e8b0414610a4a575f80fd5b8063ddd8a3dc146109ac578063de8b3035146109d8578063dff7827e146109f7575f80fd5b8063cd4edc69116100b7578063cd4edc6914610965578063ce5db8d614610978578063d279c1911461098d575f80fd5b8063b35dac4e14610908578063b3e0a50914610927578063bedb86fb14610946575f80fd5b8063a415d8dc1161013c578063abc8d68d11610117578063abc8d68d146108a9578063b31a77d3146108d4578063b3484425146108e9575f80fd5b8063a415d8dc14610847578063a479265d14610875578063a4f209b01461088a575f80fd5b80638f1d37761161016c5780638f1d37761461072d578063910129d4146107f757806397fc007c14610828575f80fd5b8063728cdbca146106cb57806388b1ea09146106ea5780638da5cb5b14610703575f80fd5b80632b7ac3f3116102515780635ef7a94a116101fc57806368589dfa116101d757806368589dfa1461066d5780636c578c1d14610698578063715018a6146106b7575f80fd5b80635ef7a94a146105a25780635f77cf1d14610602578063612672901461064e575f80fd5b8063428868b51161022c578063428868b51461055957806357e0af6c1461056c5780635c975abb1461058b575f80fd5b80632b7ac3f3146104c75780633b70c18a146105185780633e001b6614610544575f80fd5b806313361101116102b157806321e2f9e01161028c57806321e2f9e0146104525780632362f03e146104715780632571098d1461049c575f80fd5b806313361101146103ee57806318463fb01461040d57806318af3b2b14610422575f80fd5b806310d44583116102e157806310d4458314610398578063116a1f42146103b7578063121dcd50146103d9575f80fd5b806304d7721514610311578063059def61146103545780630ceb678014610377575f80fd5b3661030d57005b5f80fd5b34801561031c575f80fd5b5061033f61032b366004614ba2565b60a36020525f908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561035f575f80fd5b50610369609d5481565b60405190815260200161034b565b348015610382575f80fd5b50610396610391366004614be1565b610a5f565b005b3480156103a3575f80fd5b506103966103b2366004614c3f565b610b83565b3480156103c2575f80fd5b5061033f6103d1366004614ba2565b609d54101590565b3480156103e4575f80fd5b50610369609e5481565b3480156103f9575f80fd5b50610396610408366004614c87565b610f6f565b348015610418575f80fd5b5061036960a75481565b34801561042d575f80fd5b5061033f61043c366004614ba2565b5f90815260a26020526040902060010154421090565b34801561045d575f80fd5b5061033f61046c366004614ba2565b61156e565b34801561047c575f80fd5b5061036961048b366004614ba2565b60a16020525f908152604090205481565b3480156104a7575f80fd5b506103696104b6366004614ba2565b60a06020525f908152604090205481565b3480156104d2575f80fd5b50609c546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161034b565b348015610523575f80fd5b50609b546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b34801561054f575f80fd5b5061036960aa5481565b610396610567366004614cc6565b61159c565b348015610577575f80fd5b50610396610586366004614ba2565b611f48565b348015610596575f80fd5b5060655460ff1661033f565b3480156105ad575f80fd5b506105e26105bc366004614ba2565b60a26020525f908152604090208054600182015460028301546003909301549192909184565b60408051948552602085019390935291830152606082015260800161034b565b34801561060d575f80fd5b506106357f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161034b565b348015610659575f80fd5b50610396610668366004614ba2565b61200d565b348015610678575f80fd5b50610369610687366004614ba2565b60ab6020525f908152604090205481565b3480156106a3575f80fd5b506103966106b2366004614be1565b612270565b3480156106c2575f80fd5b5061039661237f565b3480156106d6575f80fd5b506103966106e5366004614d33565b612392565b3480156106f5575f80fd5b5060a65461033f9060ff1681565b34801561070e575f80fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166104f3565b348015610738575f80fd5b506107a6610747366004614ba2565b60a46020525f9081526040902080546001820154600283015460039093015467ffffffffffffffff8316936801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16929060ff8082169161010090041686565b6040805167ffffffffffffffff909716875273ffffffffffffffffffffffffffffffffffffffff909516602087015293850192909252606084015215156080830152151560a082015260c00161034b565b348015610802575f80fd5b5061033f610811366004614ba2565b5f90815260a4602052604090206003015460ff1690565b348015610833575f80fd5b50610396610842366004614be1565b61275b565b348015610852575f80fd5b5061033f610861366004614be1565b609f6020525f908152604090205460ff1681565b348015610880575f80fd5b5061036960995481565b348015610895575f80fd5b506103966108a4366004614ba2565b61287f565b3480156108b4575f80fd5b506103696108c3366004614be1565b60a56020525f908152604090205481565b3480156108df575f80fd5b5061036960a85481565b3480156108f4575f80fd5b50610396610903366004614d8e565b612949565b348015610913575f80fd5b50610396610922366004614be1565b612d28565b348015610932575f80fd5b50610396610941366004614c87565b612d8e565b348015610951575f80fd5b50610396610960366004614e02565b61317a565b610396610973366004614e34565b61330d565b348015610983575f80fd5b5061036960985481565b348015610998575f80fd5b506103966109a7366004614be1565b613a22565b3480156109b7575f80fd5b506097546104f39073ffffffffffffffffffffffffffffffffffffffff1681565b3480156109e3575f80fd5b5061033f6109f2366004614ba2565b613b08565b348015610a02575f80fd5b50610369609a5481565b348015610a17575f80fd5b50610396610a26366004614ba2565b613b5f565b348015610a36575f80fd5b50610396610a45366004614be1565b613c1c565b348015610a55575f80fd5b5061036960a95481565b610a67613cd0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff1615610afb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f6163636f756e7420697320616c72656164792061206368616c6c656e6765720060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915591519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc00991015b60405180910390a250565b610b8b613cd0565b5f8111610bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f636f756e74206d757374206265206e6f6e7a65726f00000000000000000000006044820152606401610af2565b5f80610c008585613d51565b915091505f610c13836001015160c01c90565b5f81815260a160205260409020549091508214610c8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b5f60a181610c9a8785614e89565b81526020019081526020015f205414610d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f726576657274696e67206d7573742073746172742066726f6d2074686520656e60448201527f64696e67000000000000000000000000000000000000000000000000000000006064820152608401610af2565b609d548111610dc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f63616e206f6e6c792072657665727420756e46696e616c697a6564206261746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b610dd0600182614e9c565b609e555b8315610f6757604051829082907ecae2739091badfd91c373f0a16cede691e0cd25bb80cff77dd5caeb4710146905f90a35f81815260a16020526040812055610e1c81613b08565b15610ea2575f81815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a59092528220805491929091610e74908490614e89565b909155505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b5f81815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a85415801590610f1f575060a85481145b15610f29575f60a8555b6001015f81815260a160205260409020547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193915081610dd4575b505050505050565b60a85415610fd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b610fe1613e04565b5f80610fed8484613d51565b915091505f611000836001015160c01c90565b5f81815260a160205260409020549091508214611079576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b6110828161156e565b6110e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b6110f181613b08565b15611158576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003015460ff16156111d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f62617463682073686f756c6420626520726576657274000000000000000000006044820152606401610af2565b5f81815260a2602052604090206001015442101561124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f626174636820696e206368616c6c656e67652077696e646f77000000000000006044820152606401610af2565b605983015160a05f611260600185614e9c565b81526020019081526020015f2054146112d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f81815260a060205260409020541561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f626174636820616c7265616479207665726966696564000000000000000000006044820152606401610af2565b80609d54600101146113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b609d819055600160a35f6113cd866099015190565b815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560798301515f82815260a0602052604090205561143a61142d846011015160c01c90565b600985015160c01c613e71565b60a25f611448600184614e9c565b815260208101919091526040015f908120818155600180820183905560028201839055600390910182905560ab91906114819084614e9c565b81526020019081526020015f205f905560a45f6001836114a19190614e9c565b815260208082019290925260409081015f90812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181018290556002810182905560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905583815260a1909252902054817f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d61154a866079015190565b60998701516040805192835260208301919091520160405180910390a35050505050565b5f81815260a260205260408120541580159061159657505f82815260a1602052604090205415155b92915050565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015611622573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116469190614eaf565b6116ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610af2565b60a85415611716576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b61171e613e04565b61172b6020830183614eca565b60ff16158061174957506117426020830183614eca565b60ff166001145b6117af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f696e76616c69642076657273696f6e00000000000000000000000000000000006044820152606401610af2565b608082013561181a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f70726576696f757320737461746520726f6f74206973207a65726f00000000006044820152606401610af2565b60a0820135611885576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6e657720737461746520726f6f74206973207a65726f000000000000000000006044820152606401610af2565b5f8061189c6118976020860186614eea565b613d51565b915091505f6118af836001015160c01c90565b90505f60a1816118c0846001614e89565b81526020019081526020015f205414611935576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c726561647920636f6d6d69747465640000000000000000006044820152606401610af2565b609e5481146119a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e636f727265637420626174636820696e64657800000000000000000000006044820152606401610af2565b5f81815260a160205260409020548214611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e636f727265637420706172656e74206261746368206861736800000000006044820152606401610af2565b5f81815260ab6020526040902054608086013514611a90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f696e636f72726563742070726576696f757320737461746520726f6f740000006044820152606401610af2565b5f611a9f846011015160c01c90565b90505f611acb611ab56060890160408a01614f4b565b611ac560808a0160608b01614f64565b84613f3b565b9050611add6080880160608901614f64565b6001939093019261ffff1691909101905f804915611afc575f49611b1e565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c4440145b905060f9611b2f60208a018a614eca565b60ff16600103611b3e57506101015b604080518281019091529650611b6387611b5b60208c018c614eca565b60ff16613f7f565b60c085901b6001880152611b9187611b8160808c0160608d01614f64565b61ffff1660c01b60099190910152565b60c084811b6011890152601988018490526039880183905260808a0135605989015260a08a013560798901528901356099880152611bf587611bd660208b018b614eea565b604051611be4929190614f85565b604051809103902060b99190910152565b60d987018690526001611c0b60208b018b614eca565b60ff1610611c3d57611c3d87611c2760608c0160408d01614f4b565b67ffffffffffffffff1660c01b60f99190910152565b8087205f86815260a1602090815260408083209390935560ab905290812060a08b0135905560a65460ff1615611c9c5760a7545f90815260a460205260409020600201546099544291611c8f91614e89565b611c999190614e9c565b90505b60405180608001604052804281526020018260985442611cbc9190614e89565b611cc69190614e89565b8152602001611cdb60608d0160408e01614f4b565b67ffffffffffffffff16815260975460209091019073ffffffffffffffffffffffffffffffffffffffff1663d096c3c6336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015611d73573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d979190614f94565b90525f87815260a2602090815260409182902083518155838201516001820155918301516002830155606090920151600390910155609e87905560975473ffffffffffffffffffffffffffffffffffffffff1692506374fe27b79150893590611e0c90611e06908c018c614eea565b5f613f86565b5f611e1a60408d018d614eea565b6040518663ffffffff1660e01b8152600401611e3a959493929190614ff2565b602060405180830381865afa158015611e55573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e799190614eaf565b611f05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f746865207369676e617475726520766572696669636174696f6e206661696c6560448201527f64000000000000000000000000000000000000000000000000000000000000006064820152608401610af2565b5f84815260a16020526040808220549051909186917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a35050505050505050565b611f50613cd0565b5f81118015611f6157506099548114155b611fc7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f696e76616c6964206e65772070726f6f662077696e646f7700000000000000006044820152606401610af2565b609980549082905560408051828152602081018490527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a6191015b60405180910390a15050565b5f54600290610100900460ff1615801561202d57505f5460ff8083169116105b6120b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660ff8316176101001790556120f45f5460ff1690565b60ff16600214612160576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f6d757374206861766520696e697469616c697a656421000000000000000000006044820152606401610af2565b816121ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f63616e206e6f742073657420737461746520726f6f742077697468206279746560448201527f73333228302921000000000000000000000000000000000000000000000000006064820152608401610af2565b609e545f90815260ab602052604090205461221657609e545f90815260ab602052604090208290555b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001612001565b612278613cd0565b73ffffffffffffffffffffffffffffffffffffffff81165f908152609f602052604090205460ff16612306576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f6163636f756e74206973206e6f742061206368616c6c656e67657200000000006044820152606401610af2565b73ffffffffffffffffffffffffffffffffffffffff81165f818152609f6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527f7feb653c7b1f0d23daeed494225b3f28851cdc8973fcc653866d9b6e205fc0099101610b78565b612387613cd0565b6123905f613fda565b565b5f54610100900460ff16158080156123b057505f54600160ff909116105b806123c95750303b1580156123c957505f5460ff166001145b612455576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610af2565b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156124b1575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff861615806124e8575073ffffffffffffffffffffffffffffffffffffffff8516155b1561251f576040517fecc6fdf000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff871661259c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206c31207374616b696e6720636f6e747261637400000000006044820152606401610af2565b6125a4614050565b6125ac6140ee565b6097805473ffffffffffffffffffffffffffffffffffffffff808a167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255609b8054898416908316179055609c805492881692909116821790556098859055609984905560a98390556040515f907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96908290a3604080515f8152602081018690527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a437910160405180910390a1604080515f8152602081018590527f1e3a2094feb4b696dd3d7caea38ad2f41dbdcac3fa3943c7a693aff8a64b0a61910160405180910390a1604080515f8152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b0223910160405180910390a18015612752575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b612763613cd0565b73ffffffffffffffffffffffffffffffffffffffff8116158015906127a35750609c5473ffffffffffffffffffffffffffffffffffffffff828116911614155b612809576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e76616c6964206e65772076657269666965720000000000000000000000006044820152606401610af2565b609c805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f728af3d16a5760405e27a082c98ab272e9f0a1d02f0085d41532a26093aedd96905f90a35050565b612887613cd0565b5f81118015612897575060648111155b80156128a5575060a9548114155b61290b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f696e76616c69642070726f6f66207265776172642070657263656e74616765006044820152606401610af2565b60a980549082905560408051828152602081018490527ffb81bce17f015797e11949d3c332e2bf9453faf68f728447426803138f2b02239101612001565b60a854156129b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b6129bb613e04565b60975473ffffffffffffffffffffffffffffffffffffffff166368015791336040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa158015612a41573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a659190614eaf565b612acb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6f6e6c7920616374697665207374616b657220616c6c6f7765640000000000006044820152606401610af2565b5f80612ad78686613d51565b915091505f612aea836001015160c01c90565b5f81815260a160205260409020549091508214612b63576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b612b6c81613b08565b612bd2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f626174636820696e206368616c6c656e676500000000000000000000000000006044820152606401610af2565b5f81815260a4602052604090206003810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661010017905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556099546002909101544291612c4991614e89565b11612cdd575f81815260a460209081526040808320600390810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905560a2835292819020909201548251808401909352600783527f54696d656f75740000000000000000000000000000000000000000000000000091830191909152612cd89183919061418c565b612752565b612ce883868661430f565b61275281336040518060400160405280600d81526020017f50726f6f662073756363657373000000000000000000000000000000000000008152506144e9565b612d30613cd0565b60aa80545f909155612d4282826145cf565b6040805173ffffffffffffffffffffffffffffffffffffffff84168152602081018390527fb1b2058a6969e2d25e47bcaebe8ae21c29a23b2752429315b75e2f4f285f3d879101612001565b612d96613cd0565b5f805260a06020527fb84a74ec6ef4d0e83b6006dfaa014ab4026f9f3b97d186e604d29998a4e808ea5415612e27576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f67656e6573697320626174636820696d706f72746564000000000000000000006044820152606401610af2565b5f80612e338484613d51565b915091505f612e46836001015160c01c90565b90508015612eb0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f696e76616c696420626174636820696e646578000000000000000000000000006044820152606401610af2565b5f612ebc846079015190565b905080612f25576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f7a65726f20737461746520726f6f7400000000000000000000000000000000006044820152606401610af2565b600984015160c01c15612f94576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6c31206d65737361676520706f707065642073686f756c6420626520300000006044820152606401610af2565b5f612fa0856019015190565b03613007576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f7a65726f206461746120686173680000000000000000000000000000000000006044820152606401610af2565b7f010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014613033856039015190565b1461309a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c69642076657273696f6e65642068617368000000000000000000006044820152606401610af2565b5f82815260a1602090815260408083208690558051608081018252428082528184019081528183018581526060830186815288875260a2865284872093518455915160018401555160028301555160039091015560ab825280832084905560a0909152808220839055609e849055609d84905551849184917f2c32d4ae151744d0bf0b9464a3e897a1d17ed2f1af71f7c9a75f12ce0d28238f9190a3604080518281525f6020820152849184917f26ba82f907317eedc97d0cbef23de76a43dd6edb563bdb6e9407645b950a7a2d910160405180910390a3505050505050565b613182613cd0565b80156132db576131906146a1565b60a65460ff161561328d5760a7545f90815260a4602090815260408083206001810154905468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16845260a590925282208054919290916131f1908490614e89565b909155505060a7545f90815260a46020526040812080547fffffffff0000000000000000000000000000000000000000000000000000000016815560018101829055600281019190915560030180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016905560a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b6132e3614726565b7f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336132b0565b50565b335f908152609f602052604090205460ff16613385576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f63616c6c6572206368616c6c656e67657220616c6c6f776564000000000000006044820152606401610af2565b60a854156133ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e656564207265766572740000000000000000000000000000000000000000006044820152606401610af2565b6133f7613e04565b60a65460ff1615613464576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f616c726561647920696e206368616c6c656e67650000000000000000000000006044820152606401610af2565b8167ffffffffffffffff16609d54106134d9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f626174636820616c72656164792066696e616c697a65640000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a16020526040902054811461355a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f696e636f727265637420626174636820686173680000000000000000000000006044820152606401610af2565b61356d8267ffffffffffffffff1661156e565b6135d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6261746368206e6f7420657869737400000000000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a4602052604090205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff1615613675576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f626174636820616c7265616479206368616c6c656e67656400000000000000006044820152606401610af2565b67ffffffffffffffff82165f90815260a26020526040902060010154421061371f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f63616e6e6f74206368616c6c656e6765206261746368206f757473696465207460448201527f6865206368616c6c656e67652077696e646f77000000000000000000000000006064820152608401610af2565b60975f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630d13fd7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613789573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137ad9190614f94565b341015613816576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e73756666696369656e742076616c756500000000000000000000000000006044820152606401610af2565b67ffffffffffffffff82811660a78190556040805160c0810182528281523360208083018281523484860190815242606086019081525f6080870181815260a0880182815299825260a49095529690962094518554925173ffffffffffffffffffffffffffffffffffffffff1668010000000000000000027fffffffff00000000000000000000000000000000000000000000000000000000909316981697909717178355945160018301559151600282015592516003909301805492511515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00009093169290921792909217905573ffffffffffffffffffffffffffffffffffffffff168267ffffffffffffffff167f3a6ea19df25b49e7624e313ce7c1ab23984238e93727260db56a81735b1b99763460405161398291815260200190565b60405180910390a35f609d54600161399a9190614e89565b90505b609e5481116139f2578267ffffffffffffffff1681146139e0576099545f82815260a26020526040812060010180549091906139da908490614e89565b90915550505b806139ea81615072565b91505061399d565b505060a680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905550565b335f90815260a5602052604081205490819003613a9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f696e76616c69642062617463684368616c6c656e6765526577617264000000006044820152606401610af2565b335f90815260a56020526040812055613ab482826145cf565b8173ffffffffffffffffffffffffffffffffffffffff167f9c25fa83f414ed363c8d39c98fb3e17567b3431cede71eb062c49d2a63ce247a82604051613afc91815260200190565b60405180910390a25050565b5f81815260a4602052604081205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16158015906115965750505f90815260a46020526040902060030154610100900460ff161590565b613b67613cd0565b5f81118015613b7857506098548114155b613bde576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964206e65772066696e616c697a6520706572696f6400000000006044820152606401610af2565b609880549082905560408051828152602081018490527fa577f4223f91f74e2dad65bbb8c30807587ae95d0d34288057bb3ec0d398a4379101612001565b613c24613cd0565b73ffffffffffffffffffffffffffffffffffffffff8116613cc7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610af2565b61330a81613fda565b60335473ffffffffffffffffffffffffffffffffffffffff163314612390576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610af2565b5f805f613d5e858561477d565b90505f8160ff165f03613d7f57613d758686614807565b9094509050613df6565b8160ff16600103613d9457613d75868661488a565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f556e737570706f727465642062617463682076657273696f6e000000000000006044820152606401610af2565b808420925050509250929050565b60655460ff1615612390576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610af2565b805f03613e7c575050565b8082035f5b82811015613f3557610100818403811115613e9b57508083035b609b546040517f3c7f5283000000000000000000000000000000000000000000000000000000008152600481018590526024810183905273ffffffffffffffffffffffffffffffffffffffff90911690633c7f5283906044015f604051808303815f87803b158015613f0b575f80fd5b505af1158015613f1d573d5f803e3d5ffd5b50505050610100830192505061010081019050613e81565b50505050565b6040805160c085901b815260f084901b6008820152600a60208502820181019092525f918101613f708161ffff8716866148f7565b82900390912095945050505050565b8082535050565b60605f80808080613f99888a018a615196565b9550955095509550955050818710613fb7579450613fd39350505050565b838710613fcb578295505050505050613fd3565b509293505050505b9392505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166140e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b6123906149d7565b5f54610100900460ff16614184576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b612390614a97565b60a88390555f83815260a460205260408082205460975491517f45bc4d10000000000000000000000000000000000000000000000000000000008152600481018690526801000000000000000090910473ffffffffffffffffffffffffffffffffffffffff908116939216906345bc4d10906024016020604051808303815f875af115801561421d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142419190614f94565b5f86815260a46020526040902060010154909150614260908290614e89565b5f86815260a4602090815260408083205468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff16835260a5909152812080549091906142ac908490614e89565b90915550506040516142bf908490615233565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff84169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b80614376576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f496e76616c69642062617463682070726f6f66000000000000000000000000006044820152606401610af2565b5f614385846001015160c01c90565b90505f614393856039015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006143c2876059015190565b6079880151609989015160b98a015160198b015160405160c09690961b7fffffffffffffffff000000000000000000000000000000000000000000000000166020870152602886019490945260488501929092526068840152608883015260a882015260c8810183905260e801604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190528051602090910120609c5490915073ffffffffffffffffffffffffffffffffffffffff16632c09a848614491885160f81c90565b858888866040518663ffffffff1660e01b81526004016144b595949392919061525f565b5f6040518083038186803b1580156144cb575f80fd5b505afa1580156144dd573d5f803e3d5ffd5b50505050505050505050565b5f83815260a4602052604081206001015460a95490919060649061450d9084615290565b61451791906152a7565b90506145238183614e9c565b60aa5f8282546145339190614e89565b909155505073ffffffffffffffffffffffffffffffffffffffff84165f90815260a560205260408120805483929061456c908490614e89565b909155505060405161457f908490615233565b6040519081900381209073ffffffffffffffffffffffffffffffffffffffff86169087907fe70d3820e244d5f71d1a6395db24f3460e8dca966edc1fd3625b6292880a877a905f90a45050505050565b801561469d575f8273ffffffffffffffffffffffffffffffffffffffff16826040515f6040518083038185875af1925050503d805f811461462b576040519150601f19603f3d011682016040523d82523d5f602084013e614630565b606091505b505090508061469b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f526f6c6c75703a20455448207472616e73666572206661696c656400000000006044820152606401610af2565b505b5050565b6146a9613e04565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586146fc3390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b61472e614b36565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336146fc565b5f816147e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f456d7074792062617463682068656164657200000000000000000000000000006044820152606401610af2565b82825f8181106147f7576147f76152df565b919091013560f81c949350505050565b5f8160f9811015614874576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f626174636820686561646572206c656e67746820746f6f20736d616c6c0000006044820152606401610af2565b6040519150808483378082016040529250929050565b5f816101018114614874576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f626174636820686561646572206c656e67746820697320696e636f72726563746044820152606401610af2565b5f825f03614906575082613fd3565b609b5473ffffffffffffffffffffffffffffffffffffffff165f5b848110156149cd576040517fae453cd5000000000000000000000000000000000000000000000000000000008152600481018590525f9073ffffffffffffffffffffffffffffffffffffffff84169063ae453cd590602401602060405180830381865afa158015614994573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149b89190614f94565b87525060209095019460019384019301614921565b5093949350505050565b5f54610100900460ff16614a6d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b5f54610100900460ff16614b2d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610af2565b61239033613fda565b60655460ff16612390576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610af2565b5f60208284031215614bb2575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114614bdc575f80fd5b919050565b5f60208284031215614bf1575f80fd5b613fd382614bb9565b5f8083601f840112614c0a575f80fd5b50813567ffffffffffffffff811115614c21575f80fd5b602083019150836020828501011115614c38575f80fd5b9250929050565b5f805f60408486031215614c51575f80fd5b833567ffffffffffffffff811115614c67575f80fd5b614c7386828701614bfa565b909790965060209590950135949350505050565b5f8060208385031215614c98575f80fd5b823567ffffffffffffffff811115614cae575f80fd5b614cba85828601614bfa565b90969095509350505050565b5f8060408385031215614cd7575f80fd5b823567ffffffffffffffff80821115614cee575f80fd5b9084019060e08287031215614d01575f80fd5b90925060208401359080821115614d16575f80fd5b50830160608186031215614d28575f80fd5b809150509250929050565b5f805f805f8060c08789031215614d48575f80fd5b614d5187614bb9565b9550614d5f60208801614bb9565b9450614d6d60408801614bb9565b9350606087013592506080870135915060a087013590509295509295509295565b5f805f8060408587031215614da1575f80fd5b843567ffffffffffffffff80821115614db8575f80fd5b614dc488838901614bfa565b90965094506020870135915080821115614ddc575f80fd5b50614de987828801614bfa565b95989497509550505050565b801515811461330a575f80fd5b5f60208284031215614e12575f80fd5b8135613fd381614df5565b803567ffffffffffffffff81168114614bdc575f80fd5b5f8060408385031215614e45575f80fd5b614e4e83614e1d565b946020939093013593505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561159657611596614e5c565b8181038181111561159657611596614e5c565b5f60208284031215614ebf575f80fd5b8151613fd381614df5565b5f60208284031215614eda575f80fd5b813560ff81168114613fd3575f80fd5b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614f1d575f80fd5b83018035915067ffffffffffffffff821115614f37575f80fd5b602001915036819003821315614c38575f80fd5b5f60208284031215614f5b575f80fd5b613fd382614e1d565b5f60208284031215614f74575f80fd5b813561ffff81168114613fd3575f80fd5b818382375f9101908152919050565b5f60208284031215614fa4575f80fd5b5051919050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b5f6080820187835260206080602085015281885180845260a08601915060208a0193505f5b8181101561504957845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101615017565b50508760408601528481036060860152615064818789614fab565b9a9950505050505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036150a2576150a2614e5c565b5060010190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f8301126150e5575f80fd5b8135602067ffffffffffffffff80831115615102576151026150a9565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108482111715615145576151456150a9565b6040529384526020818701810194908101925087851115615164575f80fd5b6020870191505b8482101561518b5761517c82614bb9565b8352918301919083019061516b565b979650505050505050565b5f805f805f8060c087890312156151ab575f80fd5b86359550602087013567ffffffffffffffff808211156151c9575f80fd5b6151d58a838b016150d6565b96506040890135955060608901359150808211156151f1575f80fd5b6151fd8a838b016150d6565b94506080890135935060a0890135915080821115615219575f80fd5b5061522689828a016150d6565b9150509295509295509295565b5f82515f5b818110156152525760208186018101518583015201615238565b505f920191825250919050565b858152846020820152608060408201525f61527e608083018587614fab565b90508260608301529695505050505050565b808202811582820484141761159657611596614e5c565b5f826152da577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea164736f6c6343000818000a" func init() { if err := json.Unmarshal([]byte(RollupStorageLayoutJSON), RollupStorageLayout); err != nil { diff --git a/bindings/go.mod b/bindings/go.mod index e0f3d216f..746274140 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -2,9 +2,9 @@ module morph-l2/bindings go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 -require github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 +require github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c require ( github.com/VictoriaMetrics/fastcache v1.12.2 // indirect diff --git a/bindings/go.sum b/bindings/go.sum index 5a9338bd5..2d2d93023 100644 --- a/bindings/go.sum +++ b/bindings/go.sum @@ -109,8 +109,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= diff --git a/contracts/contracts/l1/rollup/IL1MessageQueue.sol b/contracts/contracts/l1/rollup/IL1MessageQueue.sol index 8f33381f5..3a61d3832 100644 --- a/contracts/contracts/l1/rollup/IL1MessageQueue.sol +++ b/contracts/contracts/l1/rollup/IL1MessageQueue.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.16; +pragma solidity =0.8.24; interface IL1MessageQueue { /********** diff --git a/contracts/contracts/l1/rollup/IL1MessageQueueWithGasPriceOracle.sol b/contracts/contracts/l1/rollup/IL1MessageQueueWithGasPriceOracle.sol index a4f043ed4..275b2b017 100644 --- a/contracts/contracts/l1/rollup/IL1MessageQueueWithGasPriceOracle.sol +++ b/contracts/contracts/l1/rollup/IL1MessageQueueWithGasPriceOracle.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.16; +pragma solidity =0.8.24; interface IL1MessageQueueWithGasPriceOracle { /********** diff --git a/contracts/contracts/l1/rollup/IRollup.sol b/contracts/contracts/l1/rollup/IRollup.sol index 680a550d1..caa0d300c 100644 --- a/contracts/contracts/l1/rollup/IRollup.sol +++ b/contracts/contracts/l1/rollup/IRollup.sol @@ -8,14 +8,16 @@ interface IRollup { /// @param version The version of current batch. /// @param parentBatchHeader The header of parent batch, see the comments of `BatchHeaderV0Codec`. - /// @param blockContexts The block contexts of current batch. + /// @param lastBlockNumber The last block number in this batch + /// @param numL1Messages The number of L1 messages in this batch /// @param prevStateRoot The state root of parent batch. /// @param postStateRoot The state root of current batch. /// @param withdrawalRoot The withdraw trie root of current batch. struct BatchDataInput { uint8 version; bytes parentBatchHeader; - bytes blockContexts; + uint64 lastBlockNumber; + uint16 numL1Messages; bytes32 prevStateRoot; bytes32 postStateRoot; bytes32 withdrawalRoot; diff --git a/contracts/contracts/l1/rollup/Rollup.sol b/contracts/contracts/l1/rollup/Rollup.sol index 905913f94..c44303dcc 100644 --- a/contracts/contracts/l1/rollup/Rollup.sol +++ b/contracts/contracts/l1/rollup/Rollup.sol @@ -4,7 +4,7 @@ pragma solidity =0.8.24; import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; import {PausableUpgradeable} from "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol"; import {BatchHeaderCodecV0} from "../../libraries/codec/BatchHeaderCodecV0.sol"; -import {BatchCodecV0} from "../../libraries/codec/BatchCodecV0.sol"; +import {BatchHeaderCodecV1} from "../../libraries/codec/BatchHeaderCodecV1.sol"; import {IRollupVerifier} from "../../libraries/verifier/IRollupVerifier.sol"; import {IL1MessageQueue} from "./IL1MessageQueue.sol"; import {IRollup} from "./IRollup.sol"; @@ -220,10 +220,7 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { BatchDataInput calldata batchDataInput, BatchSignatureInput calldata batchSignatureInput ) external payable override onlyActiveStaker nonReqRevert whenNotPaused { - require(batchDataInput.version == 0, "invalid version"); - // check whether the batch is empty - uint256 _blockContextsLength = batchDataInput.blockContexts.length; - require(_blockContextsLength > 0, "batch is empty"); + require(batchDataInput.version == 0 || batchDataInput.version == 1, "invalid version"); require(batchDataInput.prevStateRoot != bytes32(0), "previous state root is zero"); require(batchDataInput.postStateRoot != bytes32(0), "new state root is zero"); @@ -248,41 +245,46 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { uint256 _totalL1MessagesPoppedOverall = BatchHeaderCodecV0.getTotalL1MessagePopped(_batchPtr); // compute the data hash for batch - uint256 _totalL1MessagesPoppedInBatch; - uint256 _totalNumL1Messages; - bytes32 dataHash; - (dataHash, _totalNumL1Messages) = _commitBatch( - batchDataInput.blockContexts, - _totalL1MessagesPoppedInBatch, + bytes32 dataHash = _commitBatch( + batchDataInput.lastBlockNumber, + batchDataInput.numL1Messages, _totalL1MessagesPoppedOverall ); + unchecked { - _totalL1MessagesPoppedInBatch += _totalNumL1Messages; - _totalL1MessagesPoppedOverall += _totalNumL1Messages; + _totalL1MessagesPoppedOverall += batchDataInput.numL1Messages; } assembly { _batchIndex := add(_batchIndex, 1) // increase batch index } bytes32 _blobVersionedHash = (blobhash(0) == bytes32(0)) ? ZERO_VERSIONED_HASH : blobhash(0); - { + { uint256 _headerLength = BatchHeaderCodecV0.BATCH_HEADER_LENGTH; + if (batchDataInput.version == 1) { + _headerLength = BatchHeaderCodecV1.BATCH_HEADER_LENGTH; + } assembly { _batchPtr := mload(0x40) - mstore(0x40, add(_batchPtr, mul(_headerLength, 32))) + mstore(0x40, add(_batchPtr, _headerLength)) } + // store entries, the order matters BatchHeaderCodecV0.storeVersion(_batchPtr, batchDataInput.version); BatchHeaderCodecV0.storeBatchIndex(_batchPtr, _batchIndex); - BatchHeaderCodecV0.storeL1MessagePopped(_batchPtr, _totalL1MessagesPoppedInBatch); + BatchHeaderCodecV0.storeL1MessagePopped(_batchPtr, batchDataInput.numL1Messages); BatchHeaderCodecV0.storeTotalL1MessagePopped(_batchPtr, _totalL1MessagesPoppedOverall); BatchHeaderCodecV0.storeDataHash(_batchPtr, dataHash); + BatchHeaderCodecV0.storeBlobVersionedHash(_batchPtr, _blobVersionedHash); BatchHeaderCodecV0.storePrevStateHash(_batchPtr, batchDataInput.prevStateRoot); BatchHeaderCodecV0.storePostStateHash(_batchPtr, batchDataInput.postStateRoot); BatchHeaderCodecV0.storeWithdrawRootHash(_batchPtr, batchDataInput.withdrawalRoot); BatchHeaderCodecV0.storeSequencerSetVerifyHash(_batchPtr, keccak256(batchSignatureInput.sequencerSets)); BatchHeaderCodecV0.storeParentBatchHash(_batchPtr, _parentBatchHash); - BatchHeaderCodecV0.storeBlobVersionedHash(_batchPtr, _blobVersionedHash); + // store last block number if version >= 1 + if (batchDataInput.version >= 1) { + BatchHeaderCodecV1.storeLastBlockNumber(_batchPtr, batchDataInput.lastBlockNumber); + } committedBatches[_batchIndex] = BatchHeaderCodecV0.computeBatchHash(_batchPtr, _headerLength); committedStateRoots[_batchIndex] = batchDataInput.postStateRoot; uint256 proveRemainingTime = 0; @@ -294,7 +296,7 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { batchDataStore[_batchIndex] = BatchData( block.timestamp, block.timestamp + finalizationPeriodSeconds + proveRemainingTime, - _loadL2BlockNumber(batchDataInput.blockContexts), + batchDataInput.lastBlockNumber, // Before BLS is implemented, the accuracy of the sequencer set uploaded by rollup cannot be guaranteed. // Therefore, if the batch is successfully challenged, only the submitter will be punished. IL1Staking(l1StakingContract).getStakerBitmap(_msgSender()) // => batchSignature.signedSequencersBitmap @@ -475,7 +477,7 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { *****************************/ /// @dev proveState proves a batch by submitting a proof. - function proveState(bytes calldata _batchHeader, bytes calldata _batchProof) external nonReqRevert whenNotPaused { + function proveState(bytes calldata _batchHeader, bytes calldata _batchProof) external nonReqRevert whenNotPaused onlyActiveStaker{ // get batch data from batch header (uint256 memPtr, bytes32 _batchHash) = _loadBatchHeader(_batchHeader); // check batch hash @@ -705,96 +707,64 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { } } + /// @notice Extract the version number from a batch header + /// @param batchHeader The encoded batch header bytes + /// @return version The version of the batch header + function _getBatchVersion(bytes calldata batchHeader) internal pure returns (uint8 version) { + require(batchHeader.length > 0, "Empty batch header"); + version = uint8(batchHeader[0]); // Safe extraction of the first byte + } + /// @dev Internal function to load batch header from calldata to memory. /// @param _batchHeader The batch header in calldata. /// @return _memPtr The start memory offset of loaded batch header. /// @return _batchHash The hash of the loaded batch header. function _loadBatchHeader(bytes calldata _batchHeader) internal pure returns (uint256 _memPtr, bytes32 _batchHash) { + uint8 _version = _getBatchVersion(_batchHeader); + // load to memory uint256 _length; - (_memPtr, _length) = BatchHeaderCodecV0.loadAndValidate(_batchHeader); + if (_version == 0) { + (_memPtr, _length) = BatchHeaderCodecV0.loadAndValidate(_batchHeader); + } else if (_version == 1) { + (_memPtr, _length) = BatchHeaderCodecV1.loadAndValidate(_batchHeader); + } else { + revert("Unsupported batch version"); + } // compute batch hash + // all the versions use the same way to compute batch hash _batchHash = BatchHeaderCodecV0.computeBatchHash(_memPtr, _length); } - /// @dev Internal function to load the latestL2BlockNumber. - /// @param _blockContexts The batch block contexts in memory. - function _loadL2BlockNumber(bytes memory _blockContexts) internal pure returns (uint256) { - uint256 blockPtr; - uint256 batchPtr; - assembly { - batchPtr := add(_blockContexts, 0x20) - blockPtr := add(batchPtr, 2) - } - uint256 _numBlocks = BatchCodecV0.validateBatchLength(batchPtr, _blockContexts.length); - for (uint256 i = 0; i < _numBlocks - 1; i++) { - unchecked { - blockPtr += BatchCodecV0.BLOCK_CONTEXT_LENGTH; - } - } - uint256 l2BlockNumber = BatchCodecV0.getBlockNumber(blockPtr); - return l2BlockNumber; - } - /// @dev Internal function to commit a batch with version 0. - /// @param _blockContexts The encoded block contexts to commit. - /// @param _totalL1MessagesPoppedInBatch The total number of L1 messages popped in current batch. + /// @param _lastBlockNumber The last block number in this batch. + /// @param _numL1Messages The number of L1 messages in this batch /// @param _totalL1MessagesPoppedOverall The total number of L1 messages popped in all batches including current batch. /// @return _dataHash The computed data hash for this batch. - /// @return _totalNumL1MessagesInBatch The total number of L1 message popped in current batch function _commitBatch( - bytes memory _blockContexts, - uint256 _totalL1MessagesPoppedInBatch, + uint64 _lastBlockNumber, + uint16 _numL1Messages, uint256 _totalL1MessagesPoppedOverall - ) internal view returns (bytes32 _dataHash, uint256 _totalNumL1MessagesInBatch) { - uint256 batchPtr; + ) internal view returns (bytes32 _dataHash) { uint256 startDataPtr; uint256 dataPtr; assembly { dataPtr := mload(0x40) startDataPtr := dataPtr - batchPtr := add(_blockContexts, 0x20) // skip batchContexts.length } - uint256 _numBlocks = BatchCodecV0.validateBatchLength(batchPtr, _blockContexts.length); - assembly { - batchPtr := add(batchPtr, 2) // skip numBlocks - } - // concatenate block contexts, use scope to avoid stack too deep - for (uint256 i = 0; i < _numBlocks; i++) { - dataPtr = BatchCodecV0.copyBlockContext(batchPtr, dataPtr, i); - uint256 blockPtr = batchPtr + i * BatchCodecV0.BLOCK_CONTEXT_LENGTH; - uint256 _numL1MessagesInBlock = BatchCodecV0.getNumL1Messages(blockPtr); - unchecked { - _totalNumL1MessagesInBatch += _numL1MessagesInBlock; - } - } assembly { - mstore(0x40, add(dataPtr, mul(_totalNumL1MessagesInBatch, 0x20))) // reserve memory for l1 message hashes + mstore(dataPtr, shl(192, _lastBlockNumber)) // store lastBlockNumber + dataPtr := add(dataPtr, 8) + mstore(dataPtr, shl(240, _numL1Messages)) // store numL1Messages + dataPtr := add(dataPtr, 2) + mstore(0x40, add(dataPtr, mul(_numL1Messages, 0x20))) // reserve memory for l1 message hashes } - // concatenate tx hashes - while (_numBlocks > 0) { - // concatenate l1 message hashes - uint256 _numL1MessagesInBlock = BatchCodecV0.getNumL1Messages(batchPtr); - dataPtr = _loadL1MessageHashes( - dataPtr, - _numL1MessagesInBlock, - _totalL1MessagesPoppedInBatch, - _totalL1MessagesPoppedOverall - ); - uint256 _numTransactionsInBlock = BatchCodecV0.getNumTransactions(batchPtr); - require(_numTransactionsInBlock >= _numL1MessagesInBlock, "num txs less than num L1 msgs"); - unchecked { - _totalL1MessagesPoppedInBatch += _numL1MessagesInBlock; - _totalL1MessagesPoppedOverall += _numL1MessagesInBlock; - - _numBlocks -= 1; - batchPtr += BatchCodecV0.BLOCK_CONTEXT_LENGTH; - } - } + // concatenate l1 message hashes + dataPtr = _loadL1MessageHashes(dataPtr, _numL1Messages, _totalL1MessagesPoppedOverall); // compute data hash and store to memory assembly { @@ -805,13 +775,11 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { /// @dev Internal function to load L1 message hashes from the message queue. /// @param _ptr The memory offset to store the transaction hash. /// @param _numL1Messages The number of L1 messages to load. - /// @param _totalL1MessagesPoppedInBatch The total number of L1 messages popped in current batch. /// @param _totalL1MessagesPoppedOverall The total number of L1 messages popped in all batches including current batch. /// @return uint256 The new memory offset after loading. function _loadL1MessageHashes( uint256 _ptr, uint256 _numL1Messages, - uint256 _totalL1MessagesPoppedInBatch, uint256 _totalL1MessagesPoppedOverall ) internal view returns (uint256) { if (_numL1Messages == 0) { @@ -826,8 +794,6 @@ contract Rollup is IRollup, OwnableUpgradeable, PausableUpgradeable { mstore(_ptr, _hash) _ptr := add(_ptr, 0x20) } - - _totalL1MessagesPoppedInBatch += 1; _totalL1MessagesPoppedOverall += 1; } } diff --git a/contracts/contracts/l2/staking/IDistribute.sol b/contracts/contracts/l2/staking/IDistribute.sol index 39ac3da90..5bb84d0f0 100644 --- a/contracts/contracts/l2/staking/IDistribute.sol +++ b/contracts/contracts/l2/staking/IDistribute.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; import {EnumerableSetUpgradeable} from "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol"; diff --git a/contracts/contracts/l2/system/IMorphToken.sol b/contracts/contracts/l2/system/IMorphToken.sol index 2c95581d1..e4ae59a4e 100644 --- a/contracts/contracts/l2/system/IMorphToken.sol +++ b/contracts/contracts/l2/system/IMorphToken.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; import {IERC20MetadataUpgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol"; diff --git a/contracts/contracts/l2/system/MorphToken.sol b/contracts/contracts/l2/system/MorphToken.sol index d2a98933a..2665d7d9b 100644 --- a/contracts/contracts/l2/system/MorphToken.sol +++ b/contracts/contracts/l2/system/MorphToken.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; diff --git a/contracts/contracts/l2/system/WrappedEther.sol b/contracts/contracts/l2/system/WrappedEther.sol index 64aa269fd..84e37863d 100644 --- a/contracts/contracts/l2/system/WrappedEther.sol +++ b/contracts/contracts/l2/system/WrappedEther.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import {ERC20Permit} from "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol"; diff --git a/contracts/contracts/libraries/ICrossDomainMessenger.sol b/contracts/contracts/libraries/ICrossDomainMessenger.sol index 9ec8f339d..8d0ee03f8 100644 --- a/contracts/contracts/libraries/ICrossDomainMessenger.sol +++ b/contracts/contracts/libraries/ICrossDomainMessenger.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.9; +pragma solidity =0.8.24; interface ICrossDomainMessenger { /*********** diff --git a/contracts/contracts/libraries/callbacks/IERC677Receiver.sol b/contracts/contracts/libraries/callbacks/IERC677Receiver.sol index fba8d1c9e..2eed96281 100644 --- a/contracts/contracts/libraries/callbacks/IERC677Receiver.sol +++ b/contracts/contracts/libraries/callbacks/IERC677Receiver.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.9; +pragma solidity =0.8.24; interface IERC677Receiver { function onTokenTransfer(address sender, uint256 value, bytes memory data) external; diff --git a/contracts/contracts/libraries/callbacks/IGatewayCallback.sol b/contracts/contracts/libraries/callbacks/IGatewayCallback.sol index c138ca636..0a44f01f1 100644 --- a/contracts/contracts/libraries/callbacks/IGatewayCallback.sol +++ b/contracts/contracts/libraries/callbacks/IGatewayCallback.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.9; +pragma solidity =0.8.24; interface IGatewayCallback { function onGatewayCallback(bytes memory data) external; diff --git a/contracts/contracts/libraries/callbacks/IMessageDropCallback.sol b/contracts/contracts/libraries/callbacks/IMessageDropCallback.sol index 52925e8e4..53961f85e 100644 --- a/contracts/contracts/libraries/callbacks/IMessageDropCallback.sol +++ b/contracts/contracts/libraries/callbacks/IMessageDropCallback.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.9; +pragma solidity =0.8.24; interface IMessageDropCallback { function onDropMessage(bytes memory message) external payable; diff --git a/contracts/contracts/libraries/codec/BatchCodecV0.sol b/contracts/contracts/libraries/codec/BatchCodecV0.sol deleted file mode 100644 index bc2254068..000000000 --- a/contracts/contracts/libraries/codec/BatchCodecV0.sol +++ /dev/null @@ -1,108 +0,0 @@ -// SPDX-License-Identifier: MIT - -pragma solidity ^0.8.16; - -/* solhint-disable */ - -/// @dev Below is the encoding for `Batch`, total 60*n+1 bytes. -/// ```text -/// * Field Bytes Type Index Comments -/// * numBlocks 2 uint16 0 The number of blocks in this batch -/// * block[0] 60 BlockContext 1 The first block in this batch -/// * ...... -/// * block[i] 60 BlockContext 60*i+1 The (i+1)'th block in this batch -/// * ...... -/// * block[n-1] 60 BlockContext 60*n-59 The last block in this batch -/// ``` -/// -/// @dev Below is the encoding for `BlockContext`, total 60 bytes. -/// ```text -/// * Field Bytes Type Index Comments -/// * blockNumber 8 uint64 0 The height of this block. -/// * timestamp 8 uint64 8 The timestamp of this block. -/// * baseFee 32 uint256 16 The base fee of this block. -/// * gasLimit 8 uint64 48 The gas limit of this block. -/// * numTransactions 2 uint16 56 The number of transactions in this block, both L1 & L2 txs. -/// * numL1Messages 2 uint16 58 The number of l1 messages in this block. -/// ``` -library BatchCodecV0 { - /// @dev Thrown when no blocks in batch. - error ErrorNoBlockInBatch(); - - /// @dev Thrown when the length of batch is incorrect. - error ErrorIncorrectBatchLength(); - - /// @dev The length of one block context. - uint256 internal constant BLOCK_CONTEXT_LENGTH = 60; - - /// @notice Validate the length of batch. - /// @param batchPtr The start memory offset of the batch in memory. - /// @param _length The length of the batch. - /// @return _numBlocks The number of blocks in current batch. - function validateBatchLength(uint256 batchPtr, uint256 _length) internal pure returns (uint256 _numBlocks) { - _numBlocks = getNumBlocks(batchPtr); - - // should contain at least one block - if (_numBlocks == 0) revert ErrorNoBlockInBatch(); - - // should contain the number of the blocks and block contexts - if (_length != 2 + _numBlocks * BLOCK_CONTEXT_LENGTH) revert ErrorIncorrectBatchLength(); - } - - /// @notice Return the number of blocks in current batch. - /// @param batchPtr The start memory offset of the batch in memory. - /// @return _numBlocks The number of blocks in current batch. - function getNumBlocks(uint256 batchPtr) internal pure returns (uint256 _numBlocks) { - assembly { - _numBlocks := shr(240, mload(batchPtr)) - } - } - - /// @notice Copy the block context to another memory. - /// @param blockPtr The start memory offset of the first block context in memory. - /// @param dstPtr The destination memory offset to store the block context. - /// @param index The index of block context to copy. - /// @return uint256 The new destination memory offset after copy. - function copyBlockContext(uint256 blockPtr, uint256 dstPtr, uint256 index) internal pure returns (uint256) { - // only first 58 bytes is needed. - assembly { - blockPtr := add(blockPtr, mul(BLOCK_CONTEXT_LENGTH, index)) - mstore(dstPtr, mload(blockPtr)) // first 32 bytes - mstore( - add(dstPtr, 0x20), - and(mload(add(blockPtr, 0x20)), 0xffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000) - ) // next 26 bytes - - dstPtr := add(dstPtr, 58) - } - - return dstPtr; - } - - /// @notice Return the number of transactions in current block. - /// @param blockPtr The start memory offset of the block context in memory. - /// @return _numTransactions The number of transactions in current block. - function getNumTransactions(uint256 blockPtr) internal pure returns (uint256 _numTransactions) { - assembly { - _numTransactions := shr(240, mload(add(blockPtr, 56))) - } - } - - /// @notice Return the number of L1 messages in current block. - /// @param blockPtr The start memory offset of the block context in memory. - /// @return _numL1Messages The number of L1 messages in current block. - function getNumL1Messages(uint256 blockPtr) internal pure returns (uint256 _numL1Messages) { - assembly { - _numL1Messages := shr(240, mload(add(blockPtr, 58))) - } - } - - /// @notice Return the number of the block. - /// @param blockPtr The start memory offset of the block context in memory. - /// @return _blockNumber The block number of blockPtr in current block. - function getBlockNumber(uint256 blockPtr) internal pure returns (uint256 _blockNumber) { - assembly { - _blockNumber := shr(192, mload(blockPtr)) - } - } -} diff --git a/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol b/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol index 1c80a4b25..e043816a3 100644 --- a/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol +++ b/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol @@ -4,7 +4,7 @@ pragma solidity ^0.8.24; // solhint-disable no-inline-assembly -/// @dev Below is the encoding for `BatchHeader` V0, total 249 + ceil(l1MessagePopped / 256) * 32 bytes. +/// @dev Below is the encoding for `BatchHeader` V0, total 249 /// ```text /// * Field Bytes Type Index Comments /// * version 1 uint8 0 The batch version diff --git a/contracts/contracts/libraries/codec/BatchHeaderCodecV1.sol b/contracts/contracts/libraries/codec/BatchHeaderCodecV1.sol new file mode 100644 index 000000000..5bda27769 --- /dev/null +++ b/contracts/contracts/libraries/codec/BatchHeaderCodecV1.sol @@ -0,0 +1,59 @@ +// SPDX-License-Identifier: MIT + +pragma solidity ^0.8.24; + +// solhint-disable no-inline-assembly + +/// @dev Below is the encoding for `BatchHeader` V1, total 257 +/// * Field Bytes Type Index Comments +/// * version 1 uint8 0 The batch version +/// * batchIndex 8 uint64 1 The index of the batch +/// * l1MessagePopped 8 uint64 9 Number of L1 messages popped in the batch +/// * totalL1MessagePopped 8 uint64 17 Number of total L1 messages popped after the batch +/// * dataHash 32 bytes32 25 The data hash of the batch +/// * blobVersionedHash 32 bytes32 57 The versioned hash of the blob with this batch’s data +/// * prevStateHash 32 bytes32 89 Preview state root +/// * postStateHash 32 bytes32 121 Post state root +/// * withdrawRootHash 32 bytes32 153 L2 withdrawal tree root hash +/// * sequencerSetVerifyHash 32 bytes32 185 L2 sequencers set verify hash +/// * parentBatchHash 32 bytes32 217 The parent batch hash +/// +/// @dev Below is the feilds for `BatchHeader` V1 +/// * lastBlockNumber 8 uint64 249 The last block number in this batch +/// ``` + +library BatchHeaderCodecV1 { + /// @dev The length of fixed parts of the batch header. + uint256 internal constant BATCH_HEADER_LENGTH = 257; + + /// @notice Load batch header in calldata to memory. + /// @param _batchHeader The encoded batch header bytes in calldata. + /// @return batchPtr The start memory offset of the batch header in memory. + /// @return length The length in bytes of the batch header. + function loadAndValidate(bytes calldata _batchHeader) internal pure returns (uint256 batchPtr, uint256 length) { + length = _batchHeader.length; + require(length == BATCH_HEADER_LENGTH, "batch header length is incorrect"); + // copy batch header to memory. + assembly { + batchPtr := mload(0x40) + calldatacopy(batchPtr, _batchHeader.offset, length) + mstore(0x40, add(batchPtr, length)) + } + } + + /// @notice Get the last block number of the batch. + function getLastBlockNumber(uint256 batchPtr) internal pure returns (uint256 _lastBlockNumber) { + assembly { + _lastBlockNumber := shr(192, mload(add(batchPtr, 249))) + } + } + + /// @notice Store the last block number of the batch. + /// @param batchPtr The start memory offset of the batch header in memory. + /// @param _lastBlockNumber The last block number to store. + function storeLastBlockNumber(uint256 batchPtr, uint256 _lastBlockNumber) internal pure { + assembly { + mstore(add(batchPtr, 249), shl(192, _lastBlockNumber)) + } + } +} diff --git a/contracts/contracts/libraries/common/IWhitelist.sol b/contracts/contracts/libraries/common/IWhitelist.sol index b3278aff1..ed28c3be0 100644 --- a/contracts/contracts/libraries/common/IWhitelist.sol +++ b/contracts/contracts/libraries/common/IWhitelist.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.16; +pragma solidity =0.8.24; interface IWhitelist { /// @notice Emitted when account whitelist status changed. diff --git a/contracts/contracts/libraries/token/IMorphERC1155Extension.sol b/contracts/contracts/libraries/token/IMorphERC1155Extension.sol index 43e3f8047..03a8387ed 100644 --- a/contracts/contracts/libraries/token/IMorphERC1155Extension.sol +++ b/contracts/contracts/libraries/token/IMorphERC1155Extension.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; // Functions needed on top of the ERC1155 standard to be compliant with the Morph bridge interface IMorphERC1155Extension { diff --git a/contracts/contracts/libraries/token/IMorphERC20Extension.sol b/contracts/contracts/libraries/token/IMorphERC20Extension.sol index ee3be77e9..b549be91d 100644 --- a/contracts/contracts/libraries/token/IMorphERC20Extension.sol +++ b/contracts/contracts/libraries/token/IMorphERC20Extension.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; // Functions needed on top of the ERC20 standard to be compliant with the Morph bridge interface IMorphERC20Extension { diff --git a/contracts/contracts/libraries/token/IMorphERC721Extension.sol b/contracts/contracts/libraries/token/IMorphERC721Extension.sol index 555048c1f..20ce19c20 100644 --- a/contracts/contracts/libraries/token/IMorphERC721Extension.sol +++ b/contracts/contracts/libraries/token/IMorphERC721Extension.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; // Functions needed on top of the ERC721 standard to be compliant with the Morph bridge interface IMorphERC721Extension { diff --git a/contracts/contracts/libraries/verifier/IRollupVerifier.sol b/contracts/contracts/libraries/verifier/IRollupVerifier.sol index 29473e6f5..de9e56098 100644 --- a/contracts/contracts/libraries/verifier/IRollupVerifier.sol +++ b/contracts/contracts/libraries/verifier/IRollupVerifier.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.16; +pragma solidity =0.8.24; interface IRollupVerifier { /// @notice Verify aggregate zk proof. diff --git a/contracts/contracts/libraries/verifier/ISP1Verifier.sol b/contracts/contracts/libraries/verifier/ISP1Verifier.sol index d2f99aec4..8c1bccf54 100644 --- a/contracts/contracts/libraries/verifier/ISP1Verifier.sol +++ b/contracts/contracts/libraries/verifier/ISP1Verifier.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +pragma solidity =0.8.24; /// @title SP1 Verifier Interface /// @notice This contract is the interface for the SP1 Verifier. diff --git a/contracts/contracts/libraries/verifier/IZkEvmVerifier.sol b/contracts/contracts/libraries/verifier/IZkEvmVerifier.sol index 40d5bab18..07f0bad8f 100644 --- a/contracts/contracts/libraries/verifier/IZkEvmVerifier.sol +++ b/contracts/contracts/libraries/verifier/IZkEvmVerifier.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.16; +pragma solidity =0.8.24; interface IZkEvmVerifier { /// @notice Verify aggregate zk proof. diff --git a/contracts/contracts/libraries/verifier/PlonkVerifier.sol b/contracts/contracts/libraries/verifier/PlonkVerifier.sol index 087c25f88..cae70f262 100644 --- a/contracts/contracts/libraries/verifier/PlonkVerifier.sol +++ b/contracts/contracts/libraries/verifier/PlonkVerifier.sol @@ -16,7 +16,7 @@ // Code generated by gnark DO NOT EDIT -pragma solidity ^0.8.19; +pragma solidity =0.8.24; contract PlonkVerifier { diff --git a/contracts/contracts/libraries/verifier/RollupVerifier.sol b/contracts/contracts/libraries/verifier/RollupVerifier.sol index 70326e601..b0db9018c 100644 --- a/contracts/contracts/libraries/verifier/RollupVerifier.sol +++ b/contracts/contracts/libraries/verifier/RollupVerifier.sol @@ -1,6 +1,6 @@ -// SPDX-License-Identifier: GPL-3.0 +// SPDX-License-Identifier: MIT -pragma solidity ^0.8.16; +pragma solidity =0.8.24; /* solhint-disable */ library RollupVerifier { diff --git a/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol b/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol index 7fd8f3ee2..ee2ae0a0d 100644 --- a/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol +++ b/contracts/contracts/libraries/verifier/SP1VerifierPlonk.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +pragma solidity =0.8.24; import {ISP1Verifier, ISP1VerifierWithHash} from "./ISP1Verifier.sol"; import {PlonkVerifier} from "./PlonkVerifier.sol"; diff --git a/contracts/contracts/mock/TestUpgrade.sol b/contracts/contracts/mock/TestUpgrade.sol index b814e62ad..8904035c2 100644 --- a/contracts/contracts/mock/TestUpgrade.sol +++ b/contracts/contracts/mock/TestUpgrade.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity =0.8.24; interface TestUpgrade { function va() external view returns (uint256); function vb() external view returns (uint256); diff --git a/contracts/contracts/test/Rollup.t.sol b/contracts/contracts/test/Rollup.t.sol index 8f093c673..92d7d9dd2 100644 --- a/contracts/contracts/test/Rollup.t.sol +++ b/contracts/contracts/test/Rollup.t.sol @@ -1,11 +1,12 @@ // SPDX-License-Identifier: MIT pragma solidity =0.8.24; -import {BatchCodecV0} from "../libraries/codec/BatchCodecV0.sol"; import {L1MessageBaseTest} from "./base/L1MessageBase.t.sol"; import {Types} from "../libraries/common/Types.sol"; import {IRollup} from "../l1/rollup/IRollup.sol"; import {IL1Staking} from "../l1/staking/IL1Staking.sol"; +import {BatchHeaderCodecV0} from "../libraries/codec/BatchHeaderCodecV0.sol"; +import {BatchHeaderCodecV1} from "../libraries/codec/BatchHeaderCodecV1.sol"; contract RollupCommitBatchTest is L1MessageBaseTest { address public caller = address(0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84); @@ -56,9 +57,7 @@ contract RollupCommitBatchTest is L1MessageBaseTest { rollup.importGenesisBatch(batchHeader0); bytes32 batchHash0 = rollup.committedBatches(0); - bytes memory batch; - - // commit batch1, one batch with one block, 1 tx, 1 L1 message, no skip + // commit batch1, verison 0, one batch with one block, 1 tx, 1 L1 message, no skip // => l1 data hash for batch // 0x9ef1e5694bdb014a1eea42be756a8f63bfd8781d6332e9ef3b5126d90c62f110 // => payload for batch header @@ -75,13 +74,13 @@ contract RollupCommitBatchTest is L1MessageBaseTest { // f1f58308e98844ec99e2990d88bfb36e1a30f0e6591e62af90ae6f8498a1b067 // => hash for parent batch header // 00847173b29b238cf319cde79512b7c213e5a8b4138daa7051914c4592b6dfc7 - bytes memory batchHeader1 = new bytes(249); + bytes memory batchHeader1 = new bytes(BatchHeaderCodecV0.BATCH_HEADER_LENGTH); assembly { mstore(add(batchHeader1, 0x20), 0) // version mstore(add(batchHeader1, add(0x20, 1)), shl(192, 1)) // batchIndex = 1 mstore(add(batchHeader1, add(0x20, 9)), shl(192, 1)) // l1MessagePopped = 1 mstore(add(batchHeader1, add(0x20, 17)), shl(192, 1)) // totalL1MessagePopped = 1 - mstore(add(batchHeader1, add(0x20, 25)), 0x9ef1e5694bdb014a1eea42be756a8f63bfd8781d6332e9ef3b5126d90c62f110) // dataHash + mstore(add(batchHeader1, add(0x20, 25)), 0xcf774750b0b5e45500519bc354320a44c42c1e1e4faf0766b1141a7d3e5bc2ea) // dataHash mstore(add(batchHeader1, add(0x20, 57)), 0x010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014) // l2 tx blob versioned hash mstore(add(batchHeader1, add(0x20, 89)), bytesData1) // prevStateHash mstore(add(batchHeader1, add(0x20, 121)), bytesData1) // postStateHash @@ -92,12 +91,8 @@ contract RollupCommitBatchTest is L1MessageBaseTest { ) // sequencerSetVerifyHash mstore(add(batchHeader1, add(0x20, 217)), batchHash0) // parentBatchHash } - batch = new bytes(2 + 60); - assembly { - mstore(add(batch, 0x20), shl(240, 1)) // numBlocks = 1 - mstore(add(batch, add(0x22, 56)), shl(240, 1)) // numTransactions = 1 - mstore(add(batch, add(0x22, 58)), shl(240, 1)) // numL1Messages = 1 - } + uint64 lastBlockNumber = 1; + uint16 numL1Messages = 1; hevm.mockCall( address(rollup.l1StakingContract()), abi.encodeCall(IL1Staking.isActiveStaker, (address(0))), @@ -110,14 +105,22 @@ contract RollupCommitBatchTest is L1MessageBaseTest { ); hevm.startPrank(address(0)); hevm.expectEmit(true, true, false, true); - emit IRollup.CommitBatch(1, bytes32(0x7764891041982c1f3abd964616bf5c777e752e327779f980a0881ef2bc994324)); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, bytesData1, bytesData1, bytesData3); + emit IRollup.CommitBatch(1, bytes32(0xc1862b08d265f073817a8ce0d7cbb426c16d58a86b93464244ab1d027318642e)); + batchDataInput = IRollup.BatchDataInput( + 0, + batchHeader0, + lastBlockNumber, + numL1Messages, + bytesData1, + bytesData1, + bytesData3 + ); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assertFalse(rollup.isBatchFinalized(1)); bytes32 batchHash1 = rollup.committedBatches(1); - assertEq(batchHash1, bytes32(0x7764891041982c1f3abd964616bf5c777e752e327779f980a0881ef2bc994324)); + assertEq(batchHash1, bytes32(0xc1862b08d265f073817a8ce0d7cbb426c16d58a86b93464244ab1d027318642e)); bytes32 stateRoot1 = rollup.committedStateRoots(1); assertEq(stateRoot1, bytesData1); @@ -134,18 +137,20 @@ contract RollupCommitBatchTest is L1MessageBaseTest { assertFalse(rollup.batchExist(0)); assertEq(rollup.committedStateRoots(0), 0); - // commit batch2 with 4 blocks, correctly + // commit batch2, verison 1, 4 blocks, correctly // 1. block0 has 3 tx, no L1 messages // 2. block1 has 5 tx, 3 L1 messages, no skips // 3. block2 has 10 tx, 5 L1 messages, even is skipped, last is not skipped // 4. block3 has 300 tx, 256 L1 messages, odd position is skipped, last is not skipped - bytes memory batchHeader2 = new bytes(249); + bytes memory batchHeader2 = new bytes(BatchHeaderCodecV1.BATCH_HEADER_LENGTH); + lastBlockNumber = 5; + numL1Messages = 264; assembly { - mstore(add(batchHeader2, 0x20), 0) // version + mstore(add(batchHeader2, 0x20), shl(248, 1)) // version mstore(add(batchHeader2, add(0x20, 1)), shl(192, 2)) // batchIndex = 2 mstore(add(batchHeader2, add(0x20, 9)), shl(192, 264)) // l1MessagePopped = 264 mstore(add(batchHeader2, add(0x20, 17)), shl(192, 265)) // totalL1MessagePopped = 265 - mstore(add(batchHeader2, add(0x20, 25)), 0x81e7e4ffa69f7496f9377a1e4140fbb16fcc81d8086b44a1316fc77cc2b9a63b) // dataHash + mstore(add(batchHeader2, add(0x20, 25)), 0x688bd49eddb8f52296974c2a243b10b91b305edd68f46190df21a83c13a6e2ec) // dataHash mstore(add(batchHeader2, add(0x20, 57)), 0x010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014) // l2 tx blob versioned hash mstore(add(batchHeader2, add(0x20, 89)), bytesData1) // prevStateHash mstore(add(batchHeader2, add(0x20, 121)), bytesData1) // postStateHash @@ -155,18 +160,7 @@ contract RollupCommitBatchTest is L1MessageBaseTest { 0xf1f58308e98844ec99e2990d88bfb36e1a30f0e6591e62af90ae6f8498a1b067 ) // sequencerSetVerifyHash mstore(add(batchHeader2, add(0x20, 217)), batchHash1) // parentBatchHash - } - batch = new bytes(2 + 60 * 4); - assembly { - mstore(add(batch, 0x20), shl(240, 4)) // numBlocks = 4 - mstore(add(batch, add(34, 56)), shl(240, 3)) // block0.numTransactions = 3 - mstore(add(batch, add(34, 58)), shl(240, 0)) // block0.numL1Messages = 0 - mstore(add(batch, add(94, 56)), shl(240, 5)) // block1.numTransactions = 5 - mstore(add(batch, add(94, 58)), shl(240, 3)) // block1.numL1Messages = 3 - mstore(add(batch, add(154, 56)), shl(240, 10)) // block2.numTransactions = 10 - mstore(add(batch, add(154, 58)), shl(240, 5)) // block2.numL1Messages = 5 - mstore(add(batch, add(214, 56)), shl(240, 300)) // block3.numTransactions = 300 - mstore(add(batch, add(214, 58)), shl(240, 256)) // block3.numL1Messages = 256 + mstore(add(batchHeader2, add(0x20, 249)), shl(192, lastBlockNumber)) // lastBlockNumber } hevm.prank(multisig); @@ -182,15 +176,23 @@ contract RollupCommitBatchTest is L1MessageBaseTest { ); hevm.startPrank(address(0)); hevm.expectEmit(true, true, false, true); - emit IRollup.CommitBatch(2, bytes32(0x0389812d59b1230ba183f27cbe53955d98a1bce20512048a9b9e062b71403c94)); + emit IRollup.CommitBatch(2, bytes32(0x772132c2e12f21bfc5f2792838e480830f2c1dd2be0f3207b159905a9f321038)); - batchDataInput = IRollup.BatchDataInput(0, batchHeader1, batch, bytesData1, bytesData1, bytesData4); + batchDataInput = IRollup.BatchDataInput( + 1, + batchHeader1, + lastBlockNumber, + numL1Messages, + bytesData1, + bytesData1, + bytesData4 + ); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assertFalse(rollup.isBatchFinalized(2)); bytes32 batchHash2 = rollup.committedBatches(2); - assertEq(batchHash2, bytes32(0x0389812d59b1230ba183f27cbe53955d98a1bce20512048a9b9e062b71403c94)); + assertEq(batchHash2, bytes32(0x772132c2e12f21bfc5f2792838e480830f2c1dd2be0f3207b159905a9f321038)); bytes32 stateRoot2 = rollup.committedStateRoots(2); assertEq(stateRoot2, bytesData1); @@ -270,28 +272,21 @@ contract RollupTest is L1MessageBaseTest { // only active staker allowed, revert hevm.startPrank(address(0)); hevm.expectRevert("only active staker allowed"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(0), stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, 0, 0, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); // invalid version, revert hevm.startPrank(alice); hevm.expectRevert("invalid version"); - batchDataInput = IRollup.BatchDataInput(1, batchHeader0, new bytes(0), stateRoot, stateRoot, getTreeRoot()); - rollup.commitBatch(batchDataInput, batchSignatureInput); - hevm.stopPrank(); - - // batch is empty, revert - hevm.startPrank(alice); - hevm.expectRevert("batch is empty"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(0), stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(2, batchHeader0, 0, 0, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); // batch header length incorrect, revert hevm.startPrank(alice); hevm.expectRevert("batch header length too small"); - batchDataInput = IRollup.BatchDataInput(0, new bytes(120), new bytes(1), stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, new bytes(120), 0, 0, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -301,7 +296,7 @@ contract RollupTest is L1MessageBaseTest { } hevm.startPrank(alice); hevm.expectRevert("incorrect batch index"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(1), stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, 0, 0, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assembly { @@ -314,7 +309,7 @@ contract RollupTest is L1MessageBaseTest { } hevm.startPrank(alice); hevm.expectRevert("incorrect parent batch hash"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, new bytes(1), stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, 0, 0, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); assembly { @@ -325,66 +320,20 @@ contract RollupTest is L1MessageBaseTest { // incorrect previous state root, revert hevm.startPrank(alice); hevm.expectRevert("incorrect previous state root"); - batchDataInput = IRollup.BatchDataInput( - 0, - batchHeader0, - new bytes(1), - bytes32(uint256(2)), - stateRoot, - getTreeRoot() - ); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, 0, 0, bytes32(uint256(2)), stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); // incorrect batch header length, revert hevm.startPrank(alice); hevm.expectRevert("batch header length too small"); - batchDataInput = IRollup.BatchDataInput(0, new bytes(248), new bytes(1), stateRoot, stateRoot, getTreeRoot()); - rollup.commitBatch(batchDataInput, batchSignatureInput); - hevm.stopPrank(); - - // no block in batch, revert - bytes memory batch = new bytes(2); - hevm.startPrank(alice); - hevm.expectRevert(BatchCodecV0.ErrorNoBlockInBatch.selector); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); - rollup.commitBatch(batchDataInput, batchSignatureInput); - hevm.stopPrank(); - - // invalid batch length, revert - batch = new bytes(3); - batch[1] = bytes1(uint8(1)); // one block in this batch - hevm.startPrank(alice); - hevm.expectRevert(BatchCodecV0.ErrorIncorrectBatchLength.selector); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); - rollup.commitBatch(batchDataInput, batchSignatureInput); - hevm.stopPrank(); - - // num txs less than num L1 msgs, revert - batch = new bytes(2 + 60); - batch[1] = bytes1(uint8(1)); // one block in this batch - batch[59] = bytes1(uint8(1)); // numTransactions = 1 - batch[61] = bytes1(uint8(3)); // numL1Messages = 3 - hevm.startPrank(alice); - hevm.expectRevert("num txs less than num L1 msgs"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); - rollup.commitBatch(batchDataInput, batchSignatureInput); - hevm.stopPrank(); - - // invalid batch length, revert - batch = new bytes(2 + 60 + 1); - batch[1] = bytes1(uint8(1)); // one block in this batch - hevm.startPrank(alice); - hevm.expectRevert(BatchCodecV0.ErrorIncorrectBatchLength.selector); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, new bytes(248), 0, 0, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); // commit batch with one chunk, no tx, correctly - batch = new bytes(2 + 60); - batch[1] = bytes1(uint8(1)); // one block in this batch hevm.startPrank(alice); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, 1, 0, stateRoot, stateRoot, getTreeRoot()); hevm.deal(address(0), 10 ether); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); @@ -393,7 +342,7 @@ contract RollupTest is L1MessageBaseTest { // batch is already committed, revert hevm.startPrank(alice); hevm.expectRevert("batch already committed"); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, getTreeRoot()); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, 1, 0, stateRoot, stateRoot, getTreeRoot()); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.stopPrank(); } @@ -420,20 +369,18 @@ contract RollupTest is L1MessageBaseTest { bytes32 batchHash0 = rollup.committedBatches(0); // commit one batch - bytes memory batch = new bytes(2 + 60); - batch[1] = bytes1(uint8(1)); // one block in this batch hevm.startPrank(alice); - batchDataInput = IRollup.BatchDataInput(0, batchHeader0, batch, stateRoot, stateRoot, bytes32(uint256(4))); + batchDataInput = IRollup.BatchDataInput(0, batchHeader0, 1, 0, stateRoot, stateRoot, bytes32(uint256(4))); rollup.commitBatch(batchDataInput, batchSignatureInput); // first chunk with too many txs hevm.stopPrank(); - assertEq(rollup.committedBatches(1), 0xb7cb76cf9e9f5878136c1d14e095f5d5b435fe8252cad6eb100e51110033b6ed); + assertEq(rollup.committedBatches(1), 0x25c3e4fee90e53de960c1092746c431ab570eacf8513011902fa65f10c814541); bytes memory batchHeader1 = new bytes(249); assembly { mstore(add(batchHeader1, 0x20), 0) // version mstore(add(batchHeader1, add(0x20, 1)), shl(192, 1)) // batchIndex mstore(add(batchHeader1, add(0x20, 9)), 0) // l1MessagePopped mstore(add(batchHeader1, add(0x20, 17)), 0) // totalL1MessagePopped - mstore(add(batchHeader1, add(0x20, 25)), 0x7cdb9d7f02ea58dfeb797ed6b4f7ea68846e4f2b0e30ed1535fc98b60c4ec809) // dataHash + mstore(add(batchHeader1, add(0x20, 25)), 0xe979da4b80d60a17ce56fa19278c6f3a7e1b43359fb8a8ea46d0264de7d653ab) // dataHash mstore(add(batchHeader1, add(0x20, 57)), 0x010657f37554c781402a22917dee2f75def7ab966d7b770905398eba3c444014) // l2 tx blob versioned hash mstore(add(batchHeader1, add(0x20, 89)), bytesData1) // prevStateHash mstore(add(batchHeader1, add(0x20, 121)), bytesData1) // postStateHash @@ -448,7 +395,7 @@ contract RollupTest is L1MessageBaseTest { // commit another batch hevm.startPrank(alice); - batchDataInput = IRollup.BatchDataInput(0, batchHeader1, batch, stateRoot, stateRoot, bytes32(uint256(4))); + batchDataInput = IRollup.BatchDataInput(0, batchHeader1, 1, 0, stateRoot, stateRoot, bytes32(uint256(4))); rollup.commitBatch(batchDataInput, batchSignatureInput); // first chunk with too many txs hevm.stopPrank(); @@ -460,9 +407,9 @@ contract RollupTest is L1MessageBaseTest { // incorrect batch hash, revert hevm.expectRevert("incorrect batch hash"); - batchHeader1[0] = bytes1(uint8(1)); // change version to 1 + batchHeader1[1] = bytes1(uint8(1)); // change 2nd byte to 1 rollup.revertBatch(batchHeader1, 1); - batchHeader1[0] = bytes1(uint8(0)); // change back + batchHeader1[1] = bytes1(uint8(0)); // change back // revert middle batch, revert hevm.expectRevert("reverting must start from the ending"); @@ -504,14 +451,7 @@ contract RollupTest is L1MessageBaseTest { hevm.startPrank(alice); hevm.expectRevert("Pausable: paused"); - batchDataInput = IRollup.BatchDataInput( - 0, - new bytes(0), - new bytes(0), - stateRoot, - stateRoot, - bytes32(uint256(4)) - ); + batchDataInput = IRollup.BatchDataInput(0, new bytes(0), 0, 0, stateRoot, stateRoot, bytes32(uint256(4))); rollup.commitBatch(batchDataInput, batchSignatureInput); hevm.expectRevert("Pausable: paused"); diff --git a/contracts/contracts/test/ZkEvmVerifierV1.t.sol b/contracts/contracts/test/ZkEvmVerifierV1.t.sol index 7891058e8..9ff08b2de 100644 --- a/contracts/contracts/test/ZkEvmVerifierV1.t.sol +++ b/contracts/contracts/test/ZkEvmVerifierV1.t.sol @@ -33,13 +33,14 @@ contract EvmTest is Test { } // Prove state success. - function test_ValidProof() public view { + function test_ValidProof() public { ProofFixture memory fixture = loadFixture(); evm.verifyPlonk(fixture.proof, fixture.publicValues); } // Prove state fail. - function testFail_InValidProof() public view { + function testRevert_InValidProof() public { + vm.expectRevert(); ProofFixture memory fixture = loadFixture(); // Create a fake proof. fixture.proof[31] = 0x00; diff --git a/contracts/deploy/013-DeployProxys.ts b/contracts/deploy/013-DeployProxys.ts index 334cfe82d..24545613a 100644 --- a/contracts/deploy/013-DeployProxys.ts +++ b/contracts/deploy/013-DeployProxys.ts @@ -1,6 +1,7 @@ import "@nomiclabs/hardhat-web3" import "@nomiclabs/hardhat-ethers" import "@nomiclabs/hardhat-waffle" +import { Mutex } from 'async-mutex'; import { HardhatRuntimeEnvironment } from "hardhat/types" import { storage, getContractAddressByName, assertContractVariableWithSigner } from "../src/deploy-utils" @@ -188,4 +189,132 @@ export const deployContractProxies = async ( return "" } -export default deployContractProxies +export const deployContractProxyByStorageNameWithNonce = async ( + hre: HardhatRuntimeEnvironment, + path: string, + deployer: any, + storageName: string, + nonce: number +): Promise => { + try { + const emptyContractImplAddr = getContractAddressByName(path, ImplStorageName.EmptyContract); + const ProxyFactoryName = ContractFactoryName.DefaultProxy; + + const ProxyFactory = await hre.ethers.getContractFactory(ProxyFactoryName); + // TransparentUpgradeableProxy deploy with emptyContract as impl, deployer as admin + const proxy = await ProxyFactory.deploy(emptyContractImplAddr, await deployer.getAddress(), "0x", { + nonce: nonce, + }); + await proxy.deployed() + console.log( + `%s=%s ; TX_HASH: %s`, + storageName, + proxy.address.toLocaleLowerCase(), + proxy.deployTransaction.hash + ); + + // check params + const IProxyContract = await hre.ethers.getContractAt(ContractFactoryName.DefaultProxyInterface, proxy.address); + + console.log(await IProxyContract.admin()); + await assertContractVariableWithSigner(IProxyContract, "admin", await deployer.getAddress()); + const blockNumber = await hre.ethers.provider.getBlockNumber(); + console.log("BLOCK_NUMBER: %s", blockNumber); + const err = await storage(path, storageName, proxy.address.toLocaleLowerCase(), blockNumber || 0); + if (err !== "") { + throw new Error(err); + } + + return ""; + } catch (error) { + console.error(`Error deploying ${storageName}:`, error); + return error.message || "Unknown error"; + } +}; + +export const deployContractProxiesConcurrently = async ( + hre: HardhatRuntimeEnvironment, + path: string, + deployer: any, + config: any +): Promise => { + const WETHFactoryName = ContractFactoryName.WETH; + const WETHImplStorageName = ImplStorageName.WETH; + + try { + if (config.l1WETHAddress == "") { + const Factory = await hre.ethers.getContractFactory(WETHFactoryName); + const contract = await Factory.deploy(); + await contract.deployed(); + console.log( + "%s=%s ; TX_HASH: %s", + WETHImplStorageName, + contract.address.toLocaleLowerCase(), + contract.deployTransaction.hash + ); + + const blockNumber = await hre.ethers.provider.getBlockNumber(); + console.log("BLOCK_NUMBER: %s", blockNumber); + + const err = await storage(path, WETHImplStorageName, contract.address.toLocaleLowerCase(), blockNumber || 0); + if (err != "") { + return err; + } + } else { + const blockNumber = await hre.ethers.provider.getBlockNumber(); + const err = await storage(path, WETHImplStorageName, config.l1WETHAddress.toLocaleLowerCase(), blockNumber || 0); + if (err != "") { + return err; + } + } + + console.log("Start to deploy proxies concurrently...") + + const proxyStorageNames = [ + ProxyStorageName.L1CrossDomainMessengerProxyStorageName, + ProxyStorageName.L1MessageQueueWithGasPriceOracleProxyStorageName, + ProxyStorageName.L1StakingProxyStorageName, + ProxyStorageName.RollupProxyStorageName, + ProxyStorageName.L1GatewayRouterProxyStorageName, + ProxyStorageName.L1ETHGatewayProxyStorageName, + ProxyStorageName.L1StandardERC20GatewayProxyStorageName, + ProxyStorageName.L1CustomERC20GatewayProxyStorageName, + ProxyStorageName.L1WithdrawLockERC20GatewayProxyStorageName, + ProxyStorageName.L1ReverseCustomGatewayProxyStorageName, + ProxyStorageName.L1ERC721GatewayProxyStorageName, + ProxyStorageName.L1ERC1155GatewayProxyStorageName, + ProxyStorageName.EnforcedTxGatewayProxyStorageName, + ProxyStorageName.L1WETHGatewayProxyStorageName, + ProxyStorageName.L1USDCGatewayProxyStorageName, + ]; + + let nonce = await hre.ethers.provider.getTransactionCount(deployer.getAddress()) + const mutex = new Mutex(); + const results = await Promise.all( + proxyStorageNames.map(async (storageName) => { + console.log(`Starting deployment for: ${storageName}`); + const release = await mutex.acquire(); // Acquire lock for getting nonce + const nonceToUse = nonce + nonce++; // Increment nonce for each deployment + release(); // Release the lock + + const result = await deployContractProxyByStorageNameWithNonce(hre, path, deployer, storageName, nonceToUse); + console.log(`Deployment completed for: ${storageName}`); + return result; + }) + ); + + const errors = results.filter((err) => err !== ""); + if (errors.length > 0) { + return `Deployment failed with errors: ${errors.join(", ")}`; + } + } catch (error) { + console.error("Error during deployment:", error); + return `Deployment failed with error: ${error.message}`; + } + + return ""; +}; + + +export default deployContractProxies \ No newline at end of file diff --git a/contracts/deploy/014-DeployImpls.ts b/contracts/deploy/014-DeployImpls.ts index 06a58ef1d..ed0653706 100644 --- a/contracts/deploy/014-DeployImpls.ts +++ b/contracts/deploy/014-DeployImpls.ts @@ -7,6 +7,7 @@ import { } from 'hardhat/types'; import { assertContractVariable, storage, getContractAddressByName } from "../src/deploy-utils"; import { predeploys } from '../src/constants' +import { Mutex } from 'async-mutex'; import { ImplStorageName, @@ -14,6 +15,129 @@ import { ContractFactoryName, } from "../src/types" +export const deployContractImplsConcurrently = async ( + hre: HardhatRuntimeEnvironment, + path: string, + deployer: any, + config: any +): Promise => { + // factory name + const L1CrossDomainMessengerFactoryName = ContractFactoryName.L1CrossDomainMessenger + const L1StakingFactoryName = ContractFactoryName.L1Staking + const L1MessageQueueWithGasPriceOracleFactoryName = ContractFactoryName.L1MessageQueueWithGasPriceOracle + const RollupFactoryName = ContractFactoryName.Rollup + const WhitelistFactoryName = ContractFactoryName.Whitelist + + const L1GatewayRouterFactoryName = ContractFactoryName.L1GatewayRouter + const L1ETHGatewayFactoryName = ContractFactoryName.L1ETHGateway + const L1StandardERC20GatewayFactoryName = ContractFactoryName.L1StandardERC20Gateway + const L1CustomERC20GatewayFactoryName = ContractFactoryName.L1CustomERC20Gateway + const L1WithdrawLockERC20GatewayFactoryName = ContractFactoryName.L1WithdrawLockERC20Gateway + const L1ReverseCustomGatewayFactoryName = ContractFactoryName.L1ReverseCustomGateway + const L1ERC721GatewayFactoryName = ContractFactoryName.L1ERC721Gateway + const L1ERC1155GatewayFactoryName = ContractFactoryName.L1ERC1155Gateway + const L1WETHGatewayFactoryName = ContractFactoryName.L1WETHGateway + const EnforcedTxGatewayFactoryName = ContractFactoryName.EnforcedTxGateway + + // implement storage name + const L1CrossDomainMessengerImplStorageName = ImplStorageName.L1CrossDomainMessengerStorageName + const StakingImplStorageName = ImplStorageName.L1StakingStorageName + const L1MessageQueueWithGasPriceOracleImplStorageName = ImplStorageName.L1MessageQueueWithGasPriceOracle + const RollupImplStorageName = ImplStorageName.RollupStorageName + const L1GatewayRouterImplStorageName = ImplStorageName.L1GatewayRouterStorageName + const L1ETHGatewayImplStorageName = ImplStorageName.L1ETHGatewayStorageName + const L1StandardERC20GatewayImplStorageName = ImplStorageName.L1StandardERC20GatewayStorageName + const L1CustomERC20GatewayImplStorageName = ImplStorageName.L1CustomERC20GatewayStorageName + const L1WithdrawLockERC20GatewayImplStorageName = ImplStorageName.L1WithdrawLockERC20GatewayStorageName + const L1ReverseCustomGatewayImplStorageName = ImplStorageName.L1ReverseCustomGatewayStorageName + const L1WETHGatewayImplStorageName = ImplStorageName.L1WETHGatewayStorageName + const L1ERC721GatewayImplStorageName = ImplStorageName.L1ERC721GatewayStorageName + const L1ERC1155GatewayImplStorageName = ImplStorageName.L1ERC1155GatewayStorageName + const WhitelistImplStorageName = ImplStorageName.Whitelist + const EnforcedTxGatewayStorageName = ImplStorageName.EnforcedTxGatewayStorageName + + // proxy contract address + const L1CrossDomainMessengerProxyAddress = getContractAddressByName(path, ProxyStorageName.L1CrossDomainMessengerProxyStorageName) + const RollupProxyAddress = getContractAddressByName(path, ProxyStorageName.RollupProxyStorageName) + const EnforcedTxGatewayAddress = getContractAddressByName(path, ProxyStorageName.EnforcedTxGatewayProxyStorageName) + + console.log("start to deploy contract implementations concurrently...") + let nonce = await hre.ethers.provider.getTransactionCount(deployer.getAddress()) + const mutex = new Mutex(); + const deployContract = async (factoryName: string, storageName: string, args: any[] = []) => { + const release = await mutex.acquire(); + const nonceToUse = nonce + nonce++; // Increment nonce for each deployment + release(); // Release the lock + + console.log(`Starting deployment for: ${storageName}, args: ${args}, nonce: `, nonceToUse); + const Factory = await hre.ethers.getContractFactory(factoryName) + const contract = await Factory.deploy(...args, { + nonce: nonceToUse, + }) + + + await contract.deployed() + console.log("%s=%s ; TX_HASH: %s", storageName, contract.address.toLocaleLowerCase(), contract.deployTransaction.hash); + + if (factoryName == L1StakingFactoryName) { + await assertContractVariable( + contract, + 'MESSENGER', + L1CrossDomainMessengerProxyAddress + ) + await assertContractVariable( + contract, + 'OTHER_STAKING', + predeploys.L2Staking.toLowerCase() + ) + } + const blockNumber = await hre.ethers.provider.getBlockNumber() + console.log("BLOCK_NUMBER: %s", blockNumber) + console.log(`Deployment completed for: ${storageName}`); + const err = await storage(path, storageName, contract.address.toLocaleLowerCase(), blockNumber || 0) + return err + } + + try { + const deployPromises = [] + + deployPromises.push(deployContract(WhitelistFactoryName, WhitelistImplStorageName, [config.contractAdmin])) + deployPromises.push(deployContract(L1CrossDomainMessengerFactoryName, L1CrossDomainMessengerImplStorageName)) + deployPromises.push(deployContract(L1MessageQueueWithGasPriceOracleFactoryName, L1MessageQueueWithGasPriceOracleImplStorageName, [L1CrossDomainMessengerProxyAddress, RollupProxyAddress, EnforcedTxGatewayAddress])) + deployPromises.push(deployContract(RollupFactoryName, RollupImplStorageName, [config.l2ChainID])) + deployPromises.push(deployContract(L1GatewayRouterFactoryName, L1GatewayRouterImplStorageName)) + deployPromises.push(deployContract(L1StandardERC20GatewayFactoryName, L1StandardERC20GatewayImplStorageName)) + deployPromises.push(deployContract(L1CustomERC20GatewayFactoryName, L1CustomERC20GatewayImplStorageName)) + deployPromises.push(deployContract(L1WithdrawLockERC20GatewayFactoryName, L1WithdrawLockERC20GatewayImplStorageName)) + deployPromises.push(deployContract(L1ReverseCustomGatewayFactoryName, L1ReverseCustomGatewayImplStorageName)) + deployPromises.push(deployContract(L1ETHGatewayFactoryName, L1ETHGatewayImplStorageName)) + + const WETHAddress = getContractAddressByName(path, ImplStorageName.WETH) + deployPromises.push(deployContract(L1WETHGatewayFactoryName, L1WETHGatewayImplStorageName, [WETHAddress, predeploys.L2WETH])) + + deployPromises.push(deployContract(EnforcedTxGatewayFactoryName, EnforcedTxGatewayStorageName)) + deployPromises.push(deployContract(L1ERC721GatewayFactoryName, L1ERC721GatewayImplStorageName)) + deployPromises.push(deployContract(L1ERC1155GatewayFactoryName, L1ERC1155GatewayImplStorageName)) + + deployPromises.push(deployContract(L1StakingFactoryName, StakingImplStorageName, [L1CrossDomainMessengerProxyAddress])) + + const results = await Promise.all(deployPromises) + + for (const result of results) { + if (result != '') { + return result + } + } + + console.log("Complete contract implementations deployment...") + return '' + } catch (err) { + console.error("Error during deployment:", err) + return "Deployment failed" + } +} + export const deployContractImpls = async ( hre: HardhatRuntimeEnvironment, path: string, diff --git a/contracts/deploy/016-RollupInit.ts b/contracts/deploy/016-RollupInit.ts index b403642e9..82036f186 100644 --- a/contracts/deploy/016-RollupInit.ts +++ b/contracts/deploy/016-RollupInit.ts @@ -35,7 +35,7 @@ export const RollupInit = async ( const MultipleVersionRollupVerifierImplStorageName = ImplStorageName.MultipleVersionRollupVerifierStorageName console.log('Deploy the MultipleVersionRollupVerifier ...') const MultipleVersionRollupVerifierFactory = await hre.ethers.getContractFactory(MultipleVersionRollupVerifierFactoryName) - const version = [0] + const version = [1] const verifiers = [ZkEvmVerifierV1Address] const MultipleVersionRollupVerifierContract = await MultipleVersionRollupVerifierFactory.deploy(version, verifiers) await MultipleVersionRollupVerifierContract.deployed() diff --git a/contracts/deploy/019-AdminTransfer.ts b/contracts/deploy/019-AdminTransfer.ts index bc36b11f8..566396b90 100644 --- a/contracts/deploy/019-AdminTransfer.ts +++ b/contracts/deploy/019-AdminTransfer.ts @@ -13,6 +13,8 @@ import { ContractFactoryName, } from "../src/types" +import { Mutex } from 'async-mutex'; + export const AdminTransferByProxyStorageName = async ( hre: HardhatRuntimeEnvironment, path: string, @@ -50,6 +52,102 @@ export const AdminTransferByProxyStorageName = async ( return '' } +export const AdminTransferByProxyStorageNameConcurrently = async ( + hre: HardhatRuntimeEnvironment, + path: string, + deployer: any, + storageName: string, + nonce: number +): Promise => { + const EmptyContractImplAddr = getContractAddressByName(path, ImplStorageName.EmptyContract) + const ProxyAdminImplAddr = getContractAddressByName(path, ImplStorageName.ProxyAdmin) + const ProxyAddr = getContractAddressByName(path, storageName) + const deployerAddr = (await deployer.getAddress()).toLocaleLowerCase() + + const IProxyContract = await hre.ethers.getContractAt(ContractFactoryName.DefaultProxyInterface, ProxyAddr, deployer) + { + if (storageName != ProxyStorageName.L1USDCGatewayProxyStorageName) { + const implAddr = (await IProxyContract.implementation()).toLocaleLowerCase() + const admin = (await IProxyContract.admin()).toLocaleLowerCase() + if (implAddr === EmptyContractImplAddr.toLocaleLowerCase()) { + return `Proxy implementation address ${implAddr} should not be empty contract address ${EmptyContractImplAddr}` + } + if (admin !== deployerAddr) { + return `Proxy admin address ${admin} should deployer address ${deployerAddr}` + } + } + } + console.log(`change ${storageName} admin transfer from ${deployerAddr} to ProxyAdmin ${ProxyAdminImplAddr} `) + // Set the transaction object, including specifying nonce + const tx = await IProxyContract.populateTransaction.changeAdmin(ProxyAdminImplAddr) + // Manually specify nonce + const txWithNonce = { + ...tx, + nonce: nonce, + } + // Send transaction + const res = await deployer.sendTransaction(txWithNonce) + await res.wait() + await assertContractVariable( + IProxyContract, + 'admin', + ProxyAdminImplAddr, + ProxyAdminImplAddr // caller + ) + console.log(`admin transfer successful `) + return '' +} + +export const AdminTransferConcurrently = async ( + hre: HardhatRuntimeEnvironment, + path: string, + deployer: any, + configTmp: any +): Promise => { + console.log("Start to transfer admin concurrrently...") + const contractsToChange = [ + ProxyStorageName.L1CrossDomainMessengerProxyStorageName, + ProxyStorageName.L1MessageQueueWithGasPriceOracleProxyStorageName, + ProxyStorageName.L1StakingProxyStorageName, + ProxyStorageName.RollupProxyStorageName, + ProxyStorageName.L1GatewayRouterProxyStorageName, + ProxyStorageName.L1ETHGatewayProxyStorageName, + ProxyStorageName.L1StandardERC20GatewayProxyStorageName, + ProxyStorageName.L1CustomERC20GatewayProxyStorageName, + ProxyStorageName.L1WithdrawLockERC20GatewayProxyStorageName, + ProxyStorageName.L1ReverseCustomGatewayProxyStorageName, + ProxyStorageName.L1ERC721GatewayProxyStorageName, + ProxyStorageName.L1ERC1155GatewayProxyStorageName, + ProxyStorageName.EnforcedTxGatewayProxyStorageName, + ProxyStorageName.L1WETHGatewayProxyStorageName, + ProxyStorageName.L1USDCGatewayProxyStorageName + ]; + + let nonce = await hre.ethers.provider.getTransactionCount(deployer.getAddress()) + const mutex = new Mutex(); + const results = await Promise.all(contractsToChange.map(async (storageName) => { + const release = await mutex.acquire(); // Acquire lock for getting nonce + const nonceToUse = nonce + nonce++; // Increment nonce for each deployment + release(); // Release the lock + + const err = await AdminTransferByProxyStorageNameConcurrently(hre, path, deployer, storageName, nonceToUse); + if (err !== '') { + return { storageName, error: err }; + } + return { storageName, error: '' }; + })); + + // Check for errors + for (const result of results) { + if (result.error !== '') { + return `Error occurred during admin transfer for ${result.storageName}: ${result.error}`; + } + } + + return ''; +} + export const AdminTransfer = async ( hre: HardhatRuntimeEnvironment, path: string, @@ -170,4 +268,4 @@ export const AdminTransfer = async ( return '' } -module.exports = { AdminTransfer, AdminTransferByProxyStorageName } \ No newline at end of file +module.exports = { AdminTransfer, AdminTransferByProxyStorageName, AdminTransferConcurrently, AdminTransferByProxyStorageNameConcurrently } \ No newline at end of file diff --git a/contracts/deploy/index.ts b/contracts/deploy/index.ts index 4611d3cd4..16f69f20b 100644 --- a/contracts/deploy/index.ts +++ b/contracts/deploy/index.ts @@ -1,13 +1,13 @@ import deployProxyAdmin from './010-ProxyAdmin' import deployEmptyContract from './011-EmptyContract' -import deployContractProxies from './013-DeployProxys' +import {deployContractProxies,deployContractProxiesConcurrently} from './013-DeployProxys' import deployZkEvmVerifierV1 from './012-Verifier' -import deployContractImpls from './014-DeployImpls' +import {deployContractImpls, deployContractImplsConcurrently} from './014-DeployImpls' import MessengerInit from './015-MessengerInit' import RollupInit from './016-RollupInit' import GatewayInit from './017-GatewayInit' import StakingInit from './018-StakingInit' -import {AdminTransfer,AdminTransferByProxyStorageName} from './019-AdminTransfer' +import {AdminTransfer,AdminTransferByProxyStorageName, AdminTransferConcurrently} from './019-AdminTransfer' import ContractInit from './020-ContractInit' import StakingRegister from './021-StakingRegister' @@ -17,13 +17,16 @@ export { deployEmptyContract, deployZkEvmVerifierV1, deployContractProxies, + deployContractProxiesConcurrently, deployContractImpls, + deployContractImplsConcurrently, MessengerInit, RollupInit, GatewayInit, StakingInit, AdminTransfer, AdminTransferByProxyStorageName, + AdminTransferConcurrently, ContractInit, StakingRegister } \ No newline at end of file diff --git a/contracts/go.mod b/contracts/go.mod index 89ed070fd..c1f676f6e 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -2,11 +2,11 @@ module morph-l2/contract go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 require ( github.com/iden3/go-iden3-crypto v0.0.16 - github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 + github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c github.com/stretchr/testify v1.9.0 ) diff --git a/contracts/go.sum b/contracts/go.sum index d1e725408..df3e167c5 100644 --- a/contracts/go.sum +++ b/contracts/go.sum @@ -25,8 +25,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= diff --git a/contracts/hardhat.config.ts b/contracts/hardhat.config.ts index 51e3875fa..2d5014453 100644 --- a/contracts/hardhat.config.ts +++ b/contracts/hardhat.config.ts @@ -9,6 +9,7 @@ import fs from "fs" import { TASK_COMPILE_SOLIDITY_GET_SOURCE_PATHS } from "hardhat/builtin-tasks/task-names"; import { subtask } from "hardhat/config"; + import "./tasks/deploy" import "./tasks/overflow_test" import "./tasks/check" diff --git a/contracts/package.json b/contracts/package.json index 51e761e7c..d74e59160 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -87,7 +87,8 @@ }, "dependencies": { "@morph-l2/core-utils": "0.0.1", + "async-mutex": "^0.5.0", "axios": "^1.4.0", "yarn": "^1.22.21" } -} \ No newline at end of file +} diff --git a/contracts/src/deploy-config/holesky.ts b/contracts/src/deploy-config/holesky.ts index 4e3601cb4..c46372ea5 100644 --- a/contracts/src/deploy-config/holesky.ts +++ b/contracts/src/deploy-config/holesky.ts @@ -14,7 +14,7 @@ const config = { l2BaseFee: 0.1, // Gwei // verify contract config - programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', + programVkey: '0x006c835a4c049b699a3675fefa51b182c7efe404a656151c0410245966724bc3', // rollup contract config // initialize config finalizationPeriodSeconds: 600, diff --git a/contracts/src/deploy-config/l1.ts b/contracts/src/deploy-config/l1.ts index 60827a8ef..0aa7ee787 100644 --- a/contracts/src/deploy-config/l1.ts +++ b/contracts/src/deploy-config/l1.ts @@ -17,7 +17,7 @@ const config = { l2BaseFee: 0.1, // Gwei // verify contract config - programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', + programVkey: '0x006c835a4c049b699a3675fefa51b182c7efe404a656151c0410245966724bc3', // rollup contract config // initialize config finalizationPeriodSeconds: 10, diff --git a/contracts/src/deploy-config/qanetl1.ts b/contracts/src/deploy-config/qanetl1.ts index 25a9b443f..16ed22586 100644 --- a/contracts/src/deploy-config/qanetl1.ts +++ b/contracts/src/deploy-config/qanetl1.ts @@ -14,7 +14,7 @@ const config = { l2BaseFee: 0.1, // Gwei // verify contract config - programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', + programVkey: '0x006c835a4c049b699a3675fefa51b182c7efe404a656151c0410245966724bc3', // rollup contract config // initialize config finalizationPeriodSeconds: 600, diff --git a/contracts/src/deploy-config/sepolia.ts b/contracts/src/deploy-config/sepolia.ts index cd02472d6..e8838ba00 100644 --- a/contracts/src/deploy-config/sepolia.ts +++ b/contracts/src/deploy-config/sepolia.ts @@ -18,7 +18,7 @@ const config = { /** * ---to---legacy property */ - programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', + programVkey: '0x006c835a4c049b699a3675fefa51b182c7efe404a656151c0410245966724bc3', rollupMinDeposit: 0.0001, rollupProofWindow: 86400, rollupGenesisBlockNumber: 0, diff --git a/contracts/src/deploy-config/testnetl1.ts b/contracts/src/deploy-config/testnetl1.ts index 9e91e1162..2d95a2324 100644 --- a/contracts/src/deploy-config/testnetl1.ts +++ b/contracts/src/deploy-config/testnetl1.ts @@ -13,7 +13,7 @@ const config = { sequencerWindowSize: 200, channelTimeout: 120, - programVkey: '0x001bdbe2a0f4839f3e7ca3b42ab1ca9d012e23249d17564c953d3557aede919c', + programVkey: '0x006c835a4c049b699a3675fefa51b182c7efe404a656151c0410245966724bc3', rollupMinDeposit: 1, rollupProofWindow: 100, rollupGenesisBlockNumber: 0, diff --git a/contracts/tasks/deploy.ts b/contracts/tasks/deploy.ts index 5dc9df47f..9ee6739a9 100644 --- a/contracts/tasks/deploy.ts +++ b/contracts/tasks/deploy.ts @@ -10,12 +10,15 @@ import { deployEmptyContract, deployZkEvmVerifierV1, deployContractProxies, + deployContractProxiesConcurrently, deployContractImpls, + deployContractImplsConcurrently, MessengerInit, RollupInit, GatewayInit, StakingInit, AdminTransfer, + AdminTransferConcurrently, ContractInit, StakingRegister, } from '../deploy/index' @@ -23,9 +26,11 @@ import { ethers } from "ethers"; task("deploy") .addParam('storagepath') + .addOptionalParam('concurrent', 'Use concurrent deployment', 'false') .setAction(async (taskArgs, hre) => { // Initialization parameters const storagePath = taskArgs.storagepath + const concurrent = taskArgs.concurrent const deployer = await hre.ethers.provider.getSigner(); const config = hre.deployConfig @@ -48,7 +53,11 @@ task("deploy") } console.log('\n---------------------------------- deploy Proxys ----------------------------------') - err = await deployContractProxies(hre, storagePath, deployer,config) + if (concurrent === 'true') { + err = await deployContractProxiesConcurrently(hre, storagePath, deployer,config) + } else { + err = await deployContractProxies(hre, storagePath, deployer,config) + } if (err != '') { console.log('Deploy Proxys failed, err: ', err) return @@ -64,9 +73,11 @@ task("deploy") task("initialize") .addParam('storagepath') + .addOptionalParam('concurrent', 'Use concurrent deployment', 'false') .setAction(async (taskArgs, hre) => { // Initialization parameters const storagePath = taskArgs.storagepath + const concurrent = taskArgs.concurrent const config = hre.deployConfig const deployer = await hre.ethers.provider.getSigner(); @@ -74,7 +85,12 @@ task("initialize") console.log('deployer :', await deployer.getAddress()) console.log('\n---------------------------------- deploy Impls ----------------------------------') - let err = await deployContractImpls(hre, storagePath, deployer, config) + let err: any + if (concurrent === 'true') { + err = await deployContractImplsConcurrently(hre, storagePath, deployer, config) + } else { + err = await deployContractImpls(hre, storagePath, deployer, config) + } if (err != '') { console.log('Deploy deploy Impls failed, err: ', err) return @@ -105,11 +121,19 @@ task("initialize") return } console.log('\n---------------------------------- Admin Transfer ----------------------------------') - err = await AdminTransfer(hre, storagePath, deployer, config) + if (concurrent === 'true') { + err = await AdminTransferConcurrently(hre, storagePath, deployer, config) + } else { + err = await AdminTransfer(hre, storagePath, deployer, config) + } + if (err != '') { console.log('OwnerTransfer failed, err: ', err) return } + + + console.log('\n---------------------------------- Contract Init ----------------------------------') err = await ContractInit(hre, storagePath, deployer, config) if (err != '') { diff --git a/contracts/tasks/verifier_upgrade.ts b/contracts/tasks/verifier_upgrade.ts index 06bb8974d..94ba46b01 100644 --- a/contracts/tasks/verifier_upgrade.ts +++ b/contracts/tasks/verifier_upgrade.ts @@ -5,11 +5,11 @@ import "@nomiclabs/hardhat-waffle"; import { task } from "hardhat/config"; import { ContractFactoryName } from "../src/types"; -// yarn hardhat upgradeVerifier --rollupVersion 0 --startBatchIndex 0 --multipleVersionRollupVerifier 0x0165878a594ca255338adfa4d48449f69242eb8f --network l1 +// yarn hardhat upgradeVerifier --rollupversion 0 --startbatchindex 0 --multipleversionrollupverifier 0x0165878a594ca255338adfa4d48449f69242eb8f --network l1 task("upgradeVerifier") - .addParam("rollupVersion") - .addParam("startBatchIndex") - .addParam("multipleVersionRollupVerifier") + .addParam("rollupversion") + .addParam("startbatchindex") + .addParam("multipleversionrollupverifier") .setAction(async (taskArgs, hre) => { const config = hre.deployConfig @@ -25,9 +25,9 @@ task("upgradeVerifier") // add verifier to MultipleVersionRollupVerifier const MultipleVersionRollupVerifierFactoryName = ContractFactoryName.MultipleVersionRollupVerifier const MultipleVersionRollupVerifierFactory = await hre.ethers.getContractFactory(MultipleVersionRollupVerifierFactoryName) - const MultipleVersionRollupVerifier = MultipleVersionRollupVerifierFactory.attach(taskArgs.multipleVersionRollupVerifier) + const MultipleVersionRollupVerifier = MultipleVersionRollupVerifierFactory.attach(taskArgs.multipleversionrollupverifier) - const res = await MultipleVersionRollupVerifier.updateVerifier(taskArgs.rollupVersion, taskArgs.startBatchIndex, contract.address.toLocaleLowerCase()) + const res = await MultipleVersionRollupVerifier.updateVerifier(taskArgs.rollupversion, taskArgs.startbatchindex, contract.address.toLocaleLowerCase()) const receipt = await res.wait() console.log(`receipt status : ${receipt.status}`) diff --git a/contracts/yarn.lock b/contracts/yarn.lock index c1d28d9b8..4a0d9483b 100644 --- a/contracts/yarn.lock +++ b/contracts/yarn.lock @@ -2440,6 +2440,13 @@ async-limiter@~1.0.0: resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== +async-mutex@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/async-mutex/-/async-mutex-0.5.0.tgz#353c69a0b9e75250971a64ac203b0ebfddd75482" + integrity sha512-1A94B18jkJ3DYq284ohPxoXbfTA5HsQ7/Mf4DEhcyLx3Bz27Rh59iScbB6EPiP+B+joue6YCxcMXSbFC1tZKwA== + dependencies: + tslib "^2.4.0" + async@1.x, async@^1.4.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -10630,6 +10637,11 @@ tslib@^2.1.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== +tslib@^2.4.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== + tsort@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/tsort/-/tsort-0.0.1.tgz#e2280f5e817f8bf4275657fd0f9aebd44f5a2786" diff --git a/gas-oracle/app/data/blob_with_context.data b/gas-oracle/app/data/blob_with_context.data new file mode 100644 index 000000000..3382e351a --- /dev/null +++ b/gas-oracle/app/data/blob_with_context.data @@ -0,0 +1 @@ +0x00605c484dde002cab0100000000000502090000000066ec47fb000f424000980096800005020a48000b01010c05060d060c0e071d0f0820100914000002f8b40082cf55820d1e843b9aca008502540be40082cbab94b678d52a477dc3a27141006d9e1bdc013ae33fc5b680b844a9059cbb70997970c51812dc3a010c7d01b5000e0d17dc79c801c001a021a4cd5cea6694b10bb76504b7b9ad041d3cfc0ef7002fe44364fb6308c2637d9ba053316ae18ec7cee4b3a8e3ff5bfbeb9421f0530086dcdd4df9aa43f5e2dcbcceb41f80a06148740561c6fa1a689151b45d238d00269ea1cb77eb23ca8f27c237d7c9c51769a05b91e5dc0e28f10950630ad2b30067482bd23068b92dbf32249c1876b909d0956c2001a0433ddb27d0178eb2d800d0f83e21108d3f2f8c9f0bb73636f1e9704a8ad8cf12e9a06b6d1ed518c47300f007a9484d534bdd6dd7bec3f78690532d36ddd445cfdad6532118a793edaf00878311817038864a0be195cb1d0fae365a09ad6bbaef8ccda888bda039d0820049cd66523c6de1cc898cd547e0ca4b3945a73fd8f1c049a4e689183d59228000a0155738e87ad858ddf5358d5d1efcc08331e9a86bfdfab4db8303763555f500783ea0749f0192b31b1fce631f26492be4bec77f10b2e3f7df4c22e482c02500e7d559e5239cb4b14e13ffc3206cedd02c235bfd71902b887c33750098e52f00bd0f18d2d055a07e011f3ff2631f8fdbbc81c1e65f31b4d611233565b59fb200e957174bff46c6d42401a0dee0d8ce4a02a46c4fc41de0b2682940e904694b004bd2125128a6b0ded7eaf090a06653e5811c4655ad869e26dd9097d6732c8800b946fcd1dc054650540f6134a1952577ec3c1a4fbdebb29055fd42c21eccd9001059a1d6f8530001354ab60452adf3fda03cd5341a27bb81df351d19a639b5006e720e97ae3041cbc3265b14ffbfb3a552d026fd93dd4bb2ca29da6b65a1d500409f20baed9144d4840647bb86cfe431466f9894a007728e4601d12a2ff42400c7c110bc6695401c058e86d2ab5dcc96dc23833d7ee52748c24f242809c913001f9a96ed3bb3426d646e2850dba562b878821bf15e8cb1bba00cc20d0d575300bc7eb3eb587a616e8ba6d4560b796af3457246de517751262abf2880a02d2d00b1d7e52eddf7927ad4abbb83bb901a89b0aa62966c6b95f9f83abb60e94ea00066630342c82beb66e1a750570f982c9c3ed1f2b70461901c154a65331b55ea00382901a03f454f43ec01bcb90283ca7594785184d5549776db7e0e2168695c004f2e7753eda037d86f7cfd0e8a1e36ef64f194efef0dcbe5483eeecdff55b6002c5f26bf5b0ca12a80a0433893e15fdd9e8f03a61396981bc76839b8e6fff000165e5b0699d9ee558da239a07fc3d17270bef0a45ca5eb83314536d7068aad0010e3a57acc2f3d60af757245402b02972ca22706dee5e6016becefd45d4a8f0012b2f3fc83b33b03ffafc550fab499a037b614a79eda8a5a36a994c463b28800c745b5cc50533a5bba58698d77346050ab2c01a02d3fb558c49db510127d2f00402c29bd0dae17f38c6297b6f5db27805c3eceb4f3a0058554be81edf262e400d9d2687afd389aa6c5135fa7b8984e4385b8ba424f55582d1a8ff121ea027800326e305cb3ce28adbb471de1cc1d0d49d3ec7aab3264cff540a06bd7ed2832005d6bdb4e3ec732a259ed9ab6864c06cd58a405521005097a4c2e992e6d71c800553de8024fbf08cbe7105bf9e653bdcef329e3084031b07b3d1bb3e09ea05100f957a4855b19c836c110193a4a9d162bdef6d596630645297167fe7a683b2b002f80a0f5ebbe0aaab995099b3d0c0623ac42c60a10ad1b3e0c5581bff3484b00ada365f5a00b89c4e11769623aef0ff8f62278fc7619a46a9cc9e16baee31d00bcc005ab31063001a0bde583db4d5ac3ddcbe1e077bb295849902002ba3d8f00df29da4d89af34ad1a59a06a9d8275cf12082964b1d031f795be0f05dca4ce00c34249063c894e36746a97af31de9dbd6726c87d33bae354fbcc1e6dfdf7cf00b6eae6532c9857a3f8b6ab7106d4a0556ad5ceba0e58b61a5844b2b783fa5200b04399b2673877bfe53a3c652e53d9c63280a0089d9ae24e245e00335448b70095c3943925b7509600aa2722cacff3e356b1e4d5a0017f469dbc012aec1eb90099db1795433216562ecb69ddd0a211f5f124d5a7f8123346274c0d9548d0570081bb6bda1f036f62817a3598b36cf32c06ebce0239e2c013a030c60e6f0e650003d66d23711fadf26b8054f22cdd810f95f59fa6d8c0aea45f7f34bfaeb891008b1fd534dd54c57ea04cd546d746dfc5afa29e16ead074cbe9813516a005a8006e03ba8ef6350fd0049814769620ed514f9ae816527c8fc60e4b4439c50e3500941ec592b6cb85877e39e2002115525178ccc02aa825b0b6679e0bbac5487700b3a0676a6cc3f6e62fe04fbec8f25585dc1fa975c6fbaf714471e83b9d512d000880403601a0f2fd0759a859cc2dec454ecf2f82a0b17333e03515689fe7ea009601b1cbb0900ea032629b6c1bb72bcd0ee339ca7834d04e7062e77611f7f1006d390dd17506654e6d37875a7f98c611b17b99aa1f8af309263b9ddc5d61ad0001c88fc2e8b4f7e3d5b592a01e8720a2febafa908ecfbe74a062005d899e1600ac50e746595f7de1a8a28a4fff3880a0816d178977b777e32c10cf2c1a3b94002b70c897da1f311e0ea4dbe654d74445baa049b58d4776884218515594379d0006fc5a79538bb61b09df46a8ffc0e14cd991583984b96575e465b70555291700555629b8a3c23bcf6baf895b2dec23e28ff78d5c68a005ae47300b7859fca80002e2b42bc648a839ed37da46dd1de7ce03e455132456013a01a080d8bea05000c13a6bc5eb23e92da453210b85f137731df93bdc73182da19a08dea012937c008e453ac6f86b8ffb23ad7c103e351e9ad3a6ce31ba49eac03886488b0e3b3600c32ceade034faecfb0dbc2fb341810e419ae9a984335faab98224b715b2fb000a0568824824950e88dbc26f5c5352f851408c9e2643520b3cf8f7d36e216a80003413c80a02dbdc0742093127f2383ab13da8f76a222f559a815ca470a72cd0076551f0f1547a06d4014af23ed1cd9f6ef558d8b23a38cffbe2f29040b516500a9c3b5bf76cbe71f3d01a0c16bba8cb481523d1c50331cea869048e953a25800424b045d06d71daf7299a35ca02e4adb29397a71f3f77c80c89e76b9b2e15b00c75c21c5c9b07ee7884a1c9dea563e80a03bc0efc9d87f14ae49beb7e65d1a002ff9ce27114a77a2c3c802d2a35f85c1c373a019a4458e87fd43f7cc6fcd6f00e3e15a6311fa239436cc02bfad0673feff22b7d03f01a09232d947630bb0a4008e08d391f5e77ab684d8bf6ff42855d436dae20d1d3d59e5a063473b7b2edb005e553f25bf0ec22feba9d84d8847888769989d8772ab35390b9e4039d8f4f2008e6a0f21e1faf7b2452b7d72389816a23f84b0640264ea42d0e62be9a07f1400e431c449f00d27e43b6659c7ea40509cb88699aa1a84eeca4f28b00591a9410080a01609f6757e86968f406b6e471149005400b151ad7d9e1e4b324f284d4000a78718a05152c4c957025176b0c359dfb4bafbeeda16f7ebcf17a175e99a9a0035d9e6b7b24201a072126b7214c2d534b024317e5deb56e12f02c353f6c9730044a3fba2082b9a68ffa030d361b3fbdf812b9bb57d305bd703adb08ad0d9fc00a5fcfe21947e692a04d5674380a0c6150f1c8a5a8e39f5788baa6c1bd5063f00c4c162d7dfc809f5eab3addcfb971aa04fa0ce293ac900247e108644b1efe800316c154e00dc306dd98e88c2d38fd6fd484401a054617644b9dd81ec4e3adc00ffda3dcbe713617cc8423cdcdbe161e192f6c8e05aa04ebbae889b4332548200cf98ee2f2deabb3ee6faf9dcc9438aa93e22179212ce1b458b9bab51a688730010f2a1acff535cd247e7aba6430128990fd06f8920d9940e85a04e4eb52b8200f042919381f78a4bbd3af3655c6c137c51d8f247691cdbd1cbf19f4680a01e00d893efc0be55fcab80fb26c5aa14f6fe3ab7cdf45f5dda8dde9a5298c0450700a032d5cf06712e7836d23e8373de79e1ee0a48668dde317d1800e849dc913b0006184701a0199d1f2f4544ef7aadd8db842838755d2ba5bc93db5f677bfc3d0031577e6c6f5ea01d2adf5ae68808c5b1357985b26b8129d02fbe622535cde400ec9ca2cf9c62141a4880a0cb5dda4a628541fa566623afe616cce53aae12b0007a4395680076f589b121ce4fa06cc131bad74a32e3000fc19f64e41048c3780051ec043d84bc815683a7b0849e4d496d96b0957809c8ae52149f86dff3c721001dd567280efb4bfd65c7b54bd091e548a02062b20e7b742fb1f13db32f94f4006cee52b591b9f299871708a895872f8a667c4a01a0f76c7f12317bfa8629e900630bcfe59d08807968538982627a9a1a3046e2cdaf5aa02fa9f692a15afd7c0091779ba94f0f225b50bbca93de2366de9a4c910c64d5df154b80a0b984f2c5002b9a3b7bd741315302486ca8381334b9d666f7a08faa2ed79722a676a030b8000a54a7a88b25fed3e90d160e449e84a474fc5e05a771d81fc513c0569de74c0001a07b72115c28aed626266441db9fc38f72a6b51ef7f4b2f9a77731b5488400dae1cda042b2829853687927e841956df5ba9abea7c7a6fa3eb33242ce140a00db26272e4a4d80a05b033e54fc8082d29564e6e5b28251f86e33c35544b3fd0067a0665e4fe37bd10ea007d2cd4e3854ea60f1394ec7e755ec9fd3925cfc10003ed7ef57b8e41e593ddb9e4e45b738e241b464e3b95a4a9411aed52dfadfc400996c1451f34df4c92b57dd3eeca008876723f7a2188539ab02c4e265e3b8f60098385437592eeb1bf70616cc3872bf4fa9d22b5ad20980176decf70e2e97bc0007dbe7cf9438866756b1d7db0bd7fb0bd7a039a67874e17cb0b545fd7a79f5006d0d9af182b12556a6d688b63e4dd3852e474d5001a085fa597a4947215484002a5010e280d65f80c6449cdac9df2c4d08b681def13085a0291ee12a746754004369e60bce58dfad1f2c79e36c4ea6a6fffa21ac4b6882b9505180a0d2c98a00afd7a29d0e8e9981b44e69372bc7eafff536ac204db2016d376a532ee0a02400f6e234884d55ea0d0159280e31eecd58559430747d78899229a73bca2900850052bfe756f8bf9212019a5725abf602616f6ee8cbf4b7f864c25b84a7421e5f005da5a01c9d481bc9b5310375e60ef4a764aaca4a45d2e62aea1f30ec99ef4900f609976453888575e8666ecaece3529b7eba6888dd67f126b7e66bd33c7920005c401aca69d8a04c5697ba8fcd4f972ffcc049e98598047d6245014a2364b800074f9723fa09dc9b5401a049bb5d27d2257af24bdfb68f5e6174bfb24d301500719f0637555941d9b1b104d4a02673925aac7ac9907dfca98d7387709ac322001e222a6869f26acfa353002bd3a955c77ab3ff266c5fb609881f7da4c2ff1c0033c91abbf0a5db7c89ac5be55e047d2da05640c5783e5b84cf5c0eb0375d94004acd350fbc90e3a8d275ea831f3c53d437005680a009e6a7fd6fda5bee1ee1008bce48e0179e1864b2feec22d8efc11187ac36d9e20ca063621af083f2b37b004c4349d71af0306c2745141a53c06ecf1bcae0b08c8ebc3d57d1044f9daa4a0038522228deb9f3833dd524b7070a6a57de01e51ad5c3367b36ada063e8ae5a00c6783040d721ee7bdea411ad4f8b6f06188475ec2c568bedf7e128125801a000469e2cd327501e91dcd82ab516dc498f614df0583ba9dc35e1010683078db40052a01ada9721d329a8ce0f0625838b88d3da0242ccfdf729ee2726740e340600d977f25980a051b9acbaa4c98a48544511ddad09db48eeb2911a26b908252600f85d4eb00f386da05a2ef770f4d9d9caaddef553ebe9a1ceb5d1b1363749fa002307689dfcd69ea6725a885953866bc4bec79d5bd2f5b669964806f89208e20064d0978278b997325749e0a061be40491f53edf6efa80db0c0317eae19f70200e8ba992bba58484c12a1aceff85b01a0a5435acc0ebd4fd3aed45e69e6621100beb18f24f737579d3b2d6a18bb52a832e4a02c2f6efe796b7d3c1a2af8de9f00be37eabb854a42281fb024f2c409f9677c564a5c80a090b9debf2e00203b68002a6e56b4aef1ffe8d9bdc48386f1ef71c1d759e704b6f4a014b38b8b9452e400747150f810f72dcf3683df769cc6d04c40abb2157af21b5ef75da51de6e56b008367f968724e5652d0b8112c3e782427d9a7f4388f143e459d6137a066b96000c4b29ffb2939e21391af55ffe2c74a2f0017ba59904c17f14bb7dfff5c5e0100a0d7cba9180c94f7ad3fa35b24a32990abf0d17dea5fc7f2878420f688dedd00b774a03c2eb0b4155592825603c5a206977b4fba3b608630237fb99168e23000769909b45f80a008e7275e71faf07a2972d1e1a35a9e6aa4967336debbbb6300964f05e6085aba66a0503745ba5f5740086c7432114710896f88d6cc474c7a00ddc9d449348c7783f4c16001a06c525b92e082c31c95d15c0ffba46d615ab4002e68a2ec0dfcf3ddfa4bbeb8cacea02d2518a87357b27568fc22cd7c5422d900ef2bbb82b0f91df9589135271f5ffdf1612cf708e3dd115f9f9de3ebe81d3800c52e7259bb7eba9a631b2e5d2e8c9a5fabeda034ae87e9d74fb69f126f74bc00b7e0d8495d1b42d6350f44b2c03b30938b8f87b26280a0796b4eca5909c0c80060cce4b836704ce91f1b59ba3c2768d0ae992bab9239e7b3a02229c2fa58ae000a35611028f650f84869d555ccbe5caeeb13bacce8a45089f754631717457f007acf89e1433001ffe472733aca40dd96532a9d8fe2e03950c026eab0a01e5b0007a67d09b65bd5c704c0b02e4832282ec0d4b990d55c58957aa68534802764000dabff733464906bf45b570ae67c25c5373c9b47f5f77e741cc27dd90c100a00d3a012db104698136f29b7bca7c4361d6dcf2a46f021c42c579cf5aae5e0fa00a12b2065d50b8871528d15fe0473f49b731329d6ba2f710f3840034733c8d80017bd18c346a01801f8e3f88f7f74ca44e9e9f7f43a09174ab720cbc3dd59b200fc8f263ce417296601a0b5bd8c1ee067d499d876ed3aa6e1174485cef38d2d003d97dc6f0cecd29ca4f3d2a064452e8e67335bea2e5380ebbd59d6dad41c340072e6b4e61b6721a5748f320f9d6780a0451b4c565a1571135a7278ae58f82000364e829738d90797ef632f464ff309b0a0a0152aa127c7b22ad6a4b3431e79004bd623b5cc0213396771a71bf960bd702637ef6801a0843a558d92eec71b770060eda3edb06a97efd6ac6fb1f46dbe79e53c26864ce300a0419deadb418a00009cc26537cabdc9fba3815c023a71771ec4c94536efe3b2e3396980a0b82fc30087831d5ad2d0f31cca02b67491e633492749b04f06fb4b9a105a4ce744a06e00fca93207505087d155e3d2e53f914807353eca57681cb523556ed13077d74e006afc94ef399c1ac106da88c15a90ad6b55112c5596c6b1a8c0b84f84a8e8f7005f3ea016d412fc4feeee2f05c9ae07f258549c1f13c5b14f626a147b4a38b600dbe86d226bad1215aa348c501b526cf1675c1202a798dc76f298b8398512de00c0629696d2c2a072255656388ac3a989daa147ec5c4fe538de8c911666626300c25bf93ebb6b22e16c0e5a6d45cee4a06c8d6833b2e0496a4a4f776201718c008ff0f16c23d2e706e65aa02f54592b4151a09bf42db9d8aeb5602e5b5e1a50003f50aed2f34228b85244a64c6d4c6be08d5e328b93930ea882295779ce0ec80006af9acfee08d5ddae95ac1013a5a022acf9cbe348a6d5f8b8b24e290d111800ef26fd7c909b9f6bf53b5f1b14eb67e06e01a02c2f8ddac09f28bfcc2330b5000166b5a799a8ddfff9f79e495e6da3630de58927a041115fb95e793ed8e29b0069bede5416b74ab45654984bfd4c51866e667542f8286f80a08ae03fc2e0a00019e47ae07b437c50992874c04b902b4121f35eb8fd9f4a1aab2aa00e5ace6f005feb53ba503c5cf157faeeac508cd184818d2a08926f8c8a8aa8ee9e7001a0006fb3c6920d11a2ad66b2ffedba90ecda8e90062d207e68fe28791f2a1efada0086a03312a767def17d60f3f21cdca699b6928cb4ca07c8f433bf18e92d031e0085e2fc710a3cdd007e07e278c232fb91c493849261f50154ec4817dfd68b9e00bcc87bf7e6a00e924876987f3e52fca01464ff89617c09ef0597cc1bff618800565f43f255c4757280a0fe81cb40267c4cd15258016782276e151c5074102800e28231738c52319b1dcde2a06254ad0e238f10de11313730503ef4af9232470068c2f2d569e85b649b99c3c18873397bbe42b74f14764cdb8bc8f3942fd2540036f828c53fb9abc8468a7a1de7d19da074cdd7053891c9e5f62bb1b4a0b803003399cc39f792018deef448fdae7fd9a5f47407d7ebe351cc99f38bdf58ae78009ab72f3e6a1faec54bd1a3772d87742e74d5f4a0295501c3b3257786efb690000b4f0b84d942ea23a4e6f566602c31d7822bfd75c960cad9ad2d8056065b230056c5cf7e32d548d4161517a8fdb606951d7c8c07a1a045f1b8264fbc31386e0027a320d233263bc87f4bbb30f8756d6e3dc435c0bb5fec767a4b6a605d8f5300e7a3b926e547be40cbb84f2a4f45b8d06ec37264faa7891525a0479286737d00a551489089b7df77bb801c4f5d27bf472306e50ae2ef9c40fd2f8e7701a01700e8f7dbf4d8249a695ca0aa89534cb2072c6e17c8f667040fd45c5c05b33a7500a0632712c44f890f8c56e5b4ef0d9515870e1038f350d8512f4dfb651f7a0e00b4907838843b6c7782702243c3ddf6d307a11831022afd6bf88cc8d5cfd2a8002e603185a00423cc572255a6dd40aef3644f5ba5b19db0007b4656ec40ea8200c0f7c318507a7901a0f8146d4afdffdaff96a7ddfce57a8ce4b68dcc396d45007848207432df8c04c43ba05f4a2afc79dda30439f91b8a1ca60b37488d51c600fa411b907a1376a0384cab697a80a087df37455c47e9e11129a44c76d0529d00d5d9bf7fc62b514ff9fd64b84b8cf192a079e19299cff5278b342608b6a70f00d8bec873f746af7a2e4264aa1c37a68a6bd47b80a0429da67993b5df938db700fd4747b2b7e0e1b17444c611f5bd7b8f3394a8003873a01887ddc5919f88d200374c1566365155e36a8cc81a9d052ab1d180e0a1c6607bb07c80a02e16f113005de4e757e78ebb7f71d00ae975b7be53861b6f5de5995d629dedb79fa033c90080441929c6618d856e14a057dab486fa4c0c7cfde6458fff0ad63df77b707d0001a0226fa5c9d4c8a01f950185542c4d156f3efcb5d810fcb5b4903bce2f97005b7807a047ae419c9bd315ced8e9fac4b343687647065645ced5bd071a15e90075f79c9ff77e888ded3df28bac579c42a3001f165fbeded85889124f2d2064004ac70fb88bb170a0686edc60997c99529cbce485a30ef70e3c295d3ce5b8750083d97a9d06bc9e3b397fcaedbd10045426b22579e5da60b78ab4ab25659c4200492f38fdd00d05ae2f0600a002d8a3434c3dc85aa953a9bc86d31947ca1334001d80126eb006b644bf3783451f800f2f41da2873a10b033cad020e2bd7fcd90023087ef8e041883be050dac3ba32b1a049f2dbefb4c1fc301c2020ca516a54003741b0a0ec306fbe675963b9ec2f2647468101a04e4859b18c72255a6439a70091d04f6f73b74b88e6ca11430613fd1722933642dca05e9e4231d2d60c595a003f540409adf143acfb772dc57b8bd156f38dcda9ab383480dfa821784288f0002702229cf8c0834a1a031240104040c811428010fc2708e1254222f803e800005510d5c0caa18801c8a1918328c390819543220294412b501edeb2eac0a9070051419487a307a286200356072a055207560f8a18400f8c3c8c0aa00e5a19500035801cb87a10350872303aa0d2107a607450c500f460e4c0aa0174a09583a80000cac1d50351439001ab039506a107a307450ca003561e460d400f8d0ca81a00401e1c3d881a0419583d1069083d307a2822807a307260d5003ad0ca41540000e5e0ea80aa21c880d5834883d081d5812a06d0012b0fa306a08746065405280007ae1e4405a21c8c0ea834841e18850b9dac47990116605b7826e77425798d0024af93f374725e47ce1f3805e5afe520009cf34b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 \ No newline at end of file diff --git a/gas-oracle/app/src/abi/Rollup.json b/gas-oracle/app/src/abi/Rollup.json index dc4c9bba6..28f7a5c6d 100644 --- a/gas-oracle/app/src/abi/Rollup.json +++ b/gas-oracle/app/src/abi/Rollup.json @@ -15,16 +15,6 @@ "name": "ErrZeroAddress", "type": "error" }, - { - "inputs": [], - "name": "ErrorIncorrectBatchLength", - "type": "error" - }, - { - "inputs": [], - "name": "ErrorNoBlockInBatch", - "type": "error" - }, { "anonymous": false, "inputs": [ @@ -619,9 +609,14 @@ "type": "bytes" }, { - "internalType": "bytes", - "name": "blockContexts", - "type": "bytes" + "internalType": "uint64", + "name": "lastBlockNumber", + "type": "uint64" + }, + { + "internalType": "uint16", + "name": "numL1Messages", + "type": "uint16" }, { "internalType": "bytes32", diff --git a/gas-oracle/app/src/da_scalar/calculate.rs b/gas-oracle/app/src/da_scalar/calculate.rs index 22d409e0c..92b0e537e 100644 --- a/gas-oracle/app/src/da_scalar/calculate.rs +++ b/gas-oracle/app/src/da_scalar/calculate.rs @@ -5,7 +5,6 @@ use ethers::{ use eyre::anyhow; use serde::{Deserialize, Serialize}; use serde_json::Value; -use std::ops::Mul; use super::{ blob::{kzg_to_versioned_hash, Blob}, @@ -17,8 +16,8 @@ use super::{ pub(super) fn extract_tx_payload( indexed_hashes: Vec, sidecars: &[Value], -) -> Result, ScalarError> { - let mut tx_payload = Vec::::new(); +) -> Result>, ScalarError> { + let mut batch_bytes = Vec::>::new(); for i_h in indexed_hashes { if let Some(sidecar) = sidecars.iter().find(|sidecar| { sidecar["index"].as_str().unwrap_or("1000").parse::().unwrap_or(1000) == i_h.index @@ -63,14 +62,14 @@ pub(super) fn extract_tx_payload( let blob_array: [u8; MAX_BLOB_TX_PAYLOAD_SIZE] = decoded_blob.try_into().unwrap(); let blob_struct = Blob(blob_array); - let mut origin_batch = blob_struct.get_origin_batch().map_err(|e| { + let origin_batch = blob_struct.get_origin_batch().map_err(|e| { ScalarError::CalculateError(anyhow!(format!( "Failed to decode blob tx payload: {}", e ))) })?; - tx_payload.append(&mut origin_batch); + batch_bytes.push(origin_batch); } else { return Err(ScalarError::CalculateError(anyhow!(format!( "no blob in response matches desired index: {}", @@ -78,41 +77,35 @@ pub(super) fn extract_tx_payload( )))); } } - Ok(tx_payload) + Ok(batch_bytes) } -pub fn extract_txn_num(block_contexts: Bytes) -> Option { - if block_contexts.is_empty() || block_contexts.len() < 2 { +pub fn extract_txn_count(origin_batch: &Vec, last_block_num: u64) -> Option { + if origin_batch.is_empty() || origin_batch.len() < 8 { return None; } - - let mut txn_in_batch = 0u64; - let mut l1_txn_in_batch = 0u64; - let bs: &[u8] = &block_contexts; - - // decode blocks from batch - // | 2 byte | 60 bytes | ... | 60 bytes | - // | num blocks | block 1 | ... | block n | - // https://github.com/morph-l2/morph/blob/main/contracts/contracts/libraries/codec/BatchCodecV0.sol - let num_blocks: u16 = ((bs[0] as u16) << 8) | (bs[1] as u16); - - for i in 0..num_blocks as usize { - let txs_num = u16::from_be_bytes( - bs.get((60.mul(i) + 2 + 56)..(60.mul(i) + 2 + 58))?.try_into().ok()?, - ); - let l1_txs_num = u16::from_be_bytes( - bs.get((60.mul(i) + 2 + 58)..(60.mul(i) + 2 + 60))?.try_into().ok()?, - ); - txn_in_batch += txs_num as u64; - l1_txn_in_batch += l1_txs_num as u64; + let first_block_num = u64::from_be_bytes(origin_batch[0..8].try_into().unwrap_or_default()); + let block_count = last_block_num - first_block_num + 1; + if origin_batch.len() < 60 * block_count as usize { + log::error!("invalid blob batch len"); + return None; } + let mut txn_count_in_batch = 0u64; + for i in 0..block_count as usize { + let bys = &origin_batch[60 * i + 56..60 * i + 58]; + let num_txn = u16::from_be_bytes(bys.try_into().unwrap_or_default()); + + let bys = &origin_batch[60 * i + 58..60 * i + 60]; + let num_l1_messages = u16::from_be_bytes(bys.try_into().unwrap_or_default()); + if num_txn < num_l1_messages { + log::error!("total_txn_in_batch < l1_txn_in_batch"); + return None; + } - log::debug!("total_txn_in_batch: {:#?}, l1_txn_in_batch: {:#?}", txn_in_batch, l1_txn_in_batch); - if txn_in_batch < l1_txn_in_batch { - log::error!("total_txn_in_batch < l1_txn_in_batch"); - return None; + txn_count_in_batch += (num_txn - num_l1_messages) as u64; } - Some(txn_in_batch - l1_txn_in_batch) + + Some(txn_count_in_batch) } #[derive(Debug, Serialize, Deserialize)] diff --git a/gas-oracle/app/src/da_scalar/l1_scalar.rs b/gas-oracle/app/src/da_scalar/l1_scalar.rs index 485a02bf7..140e8163f 100644 --- a/gas-oracle/app/src/da_scalar/l1_scalar.rs +++ b/gas-oracle/app/src/da_scalar/l1_scalar.rs @@ -5,7 +5,7 @@ use tokio::time::{sleep, Duration}; use super::{ blob_client::BeaconNode, - calculate::{data_and_hashes_from_txs, extract_tx_payload, extract_txn_num}, + calculate::{data_and_hashes_from_txs, extract_tx_payload, extract_txn_count}, error::ScalarError, MAX_BLOB_TX_PAYLOAD_SIZE, }; @@ -227,47 +227,10 @@ impl ScalarUpdater { tx_hash: TxHash, block_num: U64, ) -> Result<(u64, u64), ScalarError> { - //Step1. Get transaction - let tx = self - .l1_provider - .get_transaction(tx_hash) - .await - .map_err(|e| { - ScalarError::Error(anyhow!(format!("l1_provider.get_transaction err: {:#?}", e))) - })? - .ok_or_else(|| { - ScalarError::Error(anyhow!(format!( - "ll1_provider.get_transaction is none, tx_hash= {:#?}", - tx_hash - ))) - })?; - - log::info!("hit self rollup tx hash: {:#?}, blocknum: {:#?}", tx_hash, block_num); - - //Step2. Parse transaction data - let data = tx.input; - if data.is_empty() { - return Err(ScalarError::Error(anyhow!(format!( - "overhead_inspect tx.input is empty, tx_hash= {:#?}", - tx_hash - )))); - } - let param = CommitBatchCall::decode(&data).map_err(|e| { - ScalarError::Error(anyhow!(format!( - "overhead_inspect decode tx.input error, tx_hash= {:#?}, err= {:#?}", - tx_hash, e - ))) - })?; - - let block_contexts: Bytes = param.batch_data_input.block_contexts; - let l2_txn = extract_txn_num(block_contexts).unwrap_or(0); - - //Step3. Calculate l2 data gas - let l2_data_len = self - .calculate_l2_data_len_from_blob(tx_hash, block_num, l2_txn) - .await - .map_err(|e| { - log::error!("calculate_l2_data_len_from_blob error: {:#?}", e); + //Step1. get_data_from_blob + let (l2_data_len, l2_txn) = + self.get_data_from_blob(tx_hash, block_num).await.map_err(|e| { + log::error!("get_data_from_blob error: {:#?}", e); e })?; @@ -292,7 +255,7 @@ impl ScalarUpdater { )))); } - //Step4. Calculate scalar + //Step2. Calculate scalar let commit_scalar = (rollup_gas_used.as_u64() + self.finalize_batch_gas_used) * PRECISION / l2_txn.max(self.txn_per_batch); let blob_scalar = if l2_data_len > 0 { @@ -315,15 +278,11 @@ impl ScalarUpdater { Ok((commit_scalar, blob_scalar)) } - async fn calculate_l2_data_len_from_blob( + async fn get_data_from_blob( &self, tx_hash: TxHash, block_num: U64, - l2_txn: u64, - ) -> Result { - if l2_txn == 0 { - return Ok(0); - } + ) -> Result<(u64, u64), ScalarError> { let blob_tx = self .l1_provider .get_transaction(tx_hash) @@ -351,7 +310,7 @@ impl ScalarUpdater { let indexed_hashes = data_and_hashes_from_txs(&blob_block.transactions, &blob_tx); if indexed_hashes.is_empty() { log::info!("no blob in this batch, batch_tx_hash: {:#?}", tx_hash); - return Ok(0); + return Ok((0, 0)); } // Waiting for the next L1 block to be produced. @@ -387,6 +346,19 @@ impl ScalarUpdater { } }; + // Parse last_block_num + if blob_tx.input.is_empty() { + log::warn!("batch inspect: tx.input is empty, tx_hash = {:#?}", tx_hash); + return Err(ScalarError::Error(anyhow!(format!("commitBatch tx.input empty")))); + } + let param = if let Ok(_param) = CommitBatchCall::decode(&blob_tx.input) { + _param + } else { + log::error!("batch inspect: decode tx.input error, tx_hash = {:#?}", tx_hash); + return Err(ScalarError::Error(anyhow!(format!("decode commitBatch tx.input error",)))); + }; + let last_block_num: u64 = param.batch_data_input.last_block_number; + let indexes: Vec = indexed_hashes.iter().map(|item| item.index).collect(); let sidecars_rt = self .beacon_node @@ -407,16 +379,65 @@ impl ScalarUpdater { )))); } - let tx_payload = extract_tx_payload(indexed_hashes, sidecars)?; + let tx_payloads = extract_tx_payload(indexed_hashes, sidecars)?; + let data_with_txn_count: Vec<(u64, u64)> = tx_payloads + .iter() + .map(|batch: &Vec| { + (batch.len() as u64, extract_txn_count(batch, last_block_num).unwrap_or_default()) + }) + .collect(); + + let (total_size, total_count) = data_with_txn_count + .iter() + .fold((0u64, 0u64), |acc, &(size, count)| (acc.0 + size, acc.1 + count)); - Ok(tx_payload.len() as u64) + Ok((total_size, total_count)) } } #[cfg(test)] mod tests { + use crate::da_scalar::blob::Blob; + use super::*; - use std::{env::var, str::FromStr, sync::Arc}; + use std::{env::var, fs, path::Path, str::FromStr, sync::Arc}; + + #[test] + fn test_blob_data() { + let blob_data_path = Path::new("data/blob_with_context.data"); + let data = fs::read_to_string(blob_data_path).expect("Unable to read file"); + let hex_data: Vec = hex::decode(data.trim()).unwrap(); + + let mut blob_array = [0u8; 131072]; + blob_array.copy_from_slice(&hex_data); + + let blob_struct = Blob(blob_array); + let origin_batch = blob_struct + .get_origin_batch() + .map_err(|e| { + ScalarError::CalculateError(anyhow!(format!( + "Failed to decode blob tx payload: {}", + e + ))) + }) + .unwrap(); + + let mut tx_payloads: Vec> = vec![]; + tx_payloads.push(origin_batch); + + let data_with_txn_count: Vec<(u64, u64)> = tx_payloads + .iter() + .map(|batch: &Vec| { + (batch.len() as u64, extract_txn_count(batch, 328208).unwrap_or_default()) + }) + .collect(); + + let (total_size, total_count) = data_with_txn_count + .iter() + .fold((0u64, 0u64), |acc, &(size, count)| (acc.0 + size, acc.1 + count)); + + println!("total_size: {}, total_count: {}", total_size, total_count) + } #[tokio::test] #[ignore] diff --git a/go-ethereum b/go-ethereum index 50a1ac889..3b9465a03 160000 --- a/go-ethereum +++ b/go-ethereum @@ -1 +1 @@ -Subproject commit 50a1ac889263e5063dc21ab747800bf7b2f4fe65 +Subproject commit 3b9465a03a8cebd3e499cd5c0ea110dfc0fbefaf diff --git a/node/Makefile b/node/Makefile index ee464b9d3..1ab1e3091 100644 --- a/node/Makefile +++ b/node/Makefile @@ -87,6 +87,12 @@ testnet-clean: testnet-down rm -rf ./mytestnet .PHONY: testnet-clean +install-tendermint: + if [ ! -d build/bin ]; then mkdir -p build/bin; fi + go mod download + env GO111MODULE=on CGO_ENABLED=1 go install -v $(LDFLAGS) ./cmd/tendermint +.PHONY: tendermint + diff --git a/node/core/batch.go b/node/core/batch.go index 2ecb561ba..987c4bf03 100644 --- a/node/core/batch.go +++ b/node/core/batch.go @@ -3,13 +3,11 @@ package node import ( "bytes" "context" - "errors" "fmt" "math/big" "morph-l2/node/types" - "github.com/morph-l2/go-ethereum/accounts/abi/bind" "github.com/morph-l2/go-ethereum/common" eth "github.com/morph-l2/go-ethereum/core/types" "github.com/morph-l2/go-ethereum/crypto" @@ -19,7 +17,7 @@ import ( ) type BatchingCache struct { - parentBatchHeader *types.BatchHeader + parentBatchHeader *types.BatchHeaderBytes prevStateRoot common.Hash // accumulated batch data @@ -30,7 +28,7 @@ type BatchingCache struct { lastPackedBlockHeight uint64 // caches sealedBatchHeader according to the above accumulated batch data - sealedBatchHeader *types.BatchHeader + sealedBatchHeader *types.BatchHeaderBytes sealedSidecar *eth.BlobTxSidecar currentBlockContext []byte @@ -82,7 +80,7 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre return false, err } - parentBatchHeader := new(types.BatchHeader) + var parentBatchHeader types.BatchHeaderBytes if len(parentBatchHeaderBytes) == 0 { genesisHeader, err := e.l2Client.HeaderByNumber(context.Background(), big.NewInt(0)) if err != nil { @@ -92,22 +90,24 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre if err != nil { return false, err } - parentBatchHeader = &genesisBatchHeader + parentBatchHeader = genesisBatchHeader.Bytes() } else { - *parentBatchHeader, err = types.DecodeBatchHeader(parentBatchHeaderBytes) - if err != nil { - return false, err - } + parentBatchHeader = parentBatchHeaderBytes } var txsPayload []byte var l1TxHashes []common.Hash - var totalL1MessagePopped = parentBatchHeader.TotalL1MessagePopped var lastHeightBeforeCurrentBatch uint64 var lastBlockStateRoot common.Hash var lastBlockWithdrawRoot common.Hash var l2TxNum int + totalL1MessagePopped, err := parentBatchHeader.TotalL1MessagePopped() + if err != nil { + e.logger.Error("failed to get totalL1MessagePopped from parentBatchHeader", "error", err) + return false, err + } + for i, blockBz := range blocks { wBlock := new(types.WrappedBlock) if err = wBlock.UnmarshalBinary(blockBz); err != nil { @@ -128,7 +128,7 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre if err != nil { return false, err } - l1TxNum := int(totalL1MessagePopped - totalL1MessagePoppedBefore) // include skipped L1 messages + l1TxNum := int(totalL1MessagePopped - totalL1MessagePoppedBefore) e.logger.Info("fetched block", "block height", wBlock.Number, "involved transaction count", len(transactions[i]), "l2 tx num", l2TxNum, "l1 tx num", l1TxNum) blockContext := wBlock.BlockContextBytes(l2TxNum+l1TxNum, l1TxNum) e.batchingCache.batchData.Append(blockContext, txsPayload, l1TxHashes) @@ -137,7 +137,7 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre } // make sure passed block is the next block of the last packed block - curHeight, err := heightFromBCBytes(currentBlockBytes) + curHeight, err := types.HeightFromBlockBytes(currentBlockBytes) if err != nil { return false, err } @@ -145,7 +145,7 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre return false, fmt.Errorf("wrong propose height passed. lastPackedBlockHeight: %d, passed height: %d", e.batchingCache.lastPackedBlockHeight, curHeight) } - e.batchingCache.parentBatchHeader = parentBatchHeader + e.batchingCache.parentBatchHeader = &parentBatchHeader header, err := e.l2Client.HeaderByNumber(context.Background(), big.NewInt(int64(lastHeightBeforeCurrentBatch))) if err != nil { return false, err @@ -155,13 +155,15 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre e.batchingCache.withdrawRoot = lastBlockWithdrawRoot // initialize latest batch index - e.metrics.BatchIndex.Set(float64(e.batchingCache.parentBatchHeader.BatchIndex)) + index, _ := e.batchingCache.parentBatchHeader.BatchIndex() + e.metrics.BatchIndex.Set(float64(index)) } - height, err := heightFromBCBytes(currentBlockBytes) + block, err := types.WrappedBlockFromBytes(currentBlockBytes) if err != nil { return false, err } + height := block.Number if height <= e.batchingCache.lastPackedBlockHeight { return false, fmt.Errorf("wrong propose height passed. lastPackedBlockHeight: %d, passed height: %d", e.batchingCache.lastPackedBlockHeight, height) } else if height > e.batchingCache.lastPackedBlockHeight+1 { // skipped some blocks, cache is dirty. need rebuild the cache @@ -176,163 +178,13 @@ func (e *Executor) CalculateCapWithProposalBlock(currentBlockBytes []byte, curre return false, err } - exceeded, err := e.batchingCache.batchData.EstimateCompressedSizeWithNewPayload(e.batchingCache.currentTxsPayload) - - return exceeded, err -} - -// SealBatch seals the accumulated blocks into a batch -// It should be called after CalculateBatchSizeWithProposalBlock which ensure the accumulated blocks is correct. -func (e *Executor) SealBatch() ([]byte, []byte, error) { - if e.batchingCache.IsEmpty() { - return nil, nil, errors.New("failed to seal batch. No data found in batch cache") - } - - sidecar, err := types.EncodeTxsPayloadToBlob(e.batchingCache.batchData.TxsPayload()) - if err != nil { - return nil, nil, err - } - blobHashes := []common.Hash{types.EmptyVersionedHash} - if sidecar != nil && len(sidecar.Blobs) > 0 { - blobHashes = sidecar.BlobHashes() - } - - sequencerSetVerifyHash, err := e.sequencerCaller.SequencerSetVerifyHash(nil) - if err != nil { - return nil, nil, fmt.Errorf("failed to get sequencerSetVerifyHash, err: %w", err) - } - - block, err := wrappedBlockFromBytes(e.batchingCache.currentBlockBytes) - if err != nil { - return nil, nil, err - } - l1MessagePopped := e.batchingCache.totalL1MessagePopped - e.batchingCache.parentBatchHeader.TotalL1MessagePopped - var skippedL1MessageBitmap []byte - if block.Timestamp < e.UpgradeBatchTime { - e.logger.Info("waiting upgrade batch time", "upgradeBatchTime", e.UpgradeBatchTime, "current block time", block.Timestamp, "remaining seconds", e.UpgradeBatchTime-block.Timestamp) - if l1MessagePopped > 0 { // 32 zero bytes when before upgrading and has L1 message in batch - skippedL1MessageBitmap = make([]byte, 32) - } - } - - batchHeader := types.BatchHeader{ - Version: 0, - BatchIndex: e.batchingCache.parentBatchHeader.BatchIndex + 1, - L1MessagePopped: l1MessagePopped, - TotalL1MessagePopped: e.batchingCache.totalL1MessagePopped, - DataHash: e.batchingCache.batchData.DataHash(), - BlobVersionedHash: blobHashes[0], // currently we only have one blob - PrevStateRoot: e.batchingCache.prevStateRoot, - PostStateRoot: e.batchingCache.postStateRoot, - WithdrawalRoot: e.batchingCache.withdrawRoot, - SequencerSetVerifyHash: sequencerSetVerifyHash, - ParentBatchHash: e.batchingCache.parentBatchHeader.Hash(), - SkippedL1MessageBitmap: skippedL1MessageBitmap, - } - e.batchingCache.sealedBatchHeader = &batchHeader - e.batchingCache.sealedSidecar = sidecar - batchHash := e.batchingCache.sealedBatchHeader.Hash() - e.logger.Info("Sealed batch header", "batchHash", batchHash.Hex()) - e.logger.Info(fmt.Sprintf("===batchIndex: %d \n===L1MessagePopped: %d \n===TotalL1MessagePopped: %d \n===dataHash: %x \n===blockNum: %d \n===SkippedL1MessageBitmap: %s \n===ParentBatchHash: %x \n", - batchHeader.BatchIndex, - batchHeader.L1MessagePopped, - batchHeader.TotalL1MessagePopped, - batchHeader.DataHash, - e.batchingCache.batchData.BlockNum(), - batchHeader.SkippedL1MessageBitmap, - batchHeader.ParentBatchHash)) - blockContexts, _ := e.batchingCache.batchData.Encode() - e.logger.Info(fmt.Sprintf("===blockContexts: %x \n", blockContexts)) - - return batchHash[:], e.batchingCache.sealedBatchHeader.Encode(), nil -} - -// CommitBatch commit the sealed batch. It does nothing if no batch header is sealed. -// It is supposed to be called when the current block is confirmed. -func (e *Executor) CommitBatch(currentBlockBytes []byte, currentTxs tmtypes.Txs, blsDatas []l2node.BlsData) error { - if e.batchingCache.IsEmpty() || e.batchingCache.sealedBatchHeader == nil { // nothing to commit - return nil - } - - // reconstruct current block context - // it is possible that the confirmed current block is different from the existing cached current block context - if !bytes.Equal(currentBlockBytes, e.batchingCache.currentBlockBytes) || - !bytes.Equal(currentTxs.Hash(), e.batchingCache.currentTxsHash) { - e.logger.Info("current block is changed, reconstructing current context...") - if err := e.setCurrentBlock(currentBlockBytes, currentTxs); err != nil { - return err - } - } - - blockContexts, err := e.batchingCache.batchData.Encode() - if err != nil { - return err - } - - curHeight, err := heightFromBCBytes(e.batchingCache.currentBlockBytes) - if err != nil { - return err - } - - var batchSigs []eth.BatchSignature - if !e.devSequencer { - batchSigs, err = e.ConvertBlsDatas(blsDatas) - if err != nil { - return err - } - } - - currentIndex := e.batchingCache.parentBatchHeader.BatchIndex + 1 - - // The batch needs the sequencer set info at the end height of the batch, which is equal to current height - 1. - callOpts := &bind.CallOpts{ - BlockNumber: big.NewInt(int64(curHeight - 1)), - } - sequencerSetBytes, err := e.sequencerCaller.GetSequencerSetBytes(callOpts) - if err != nil { - e.logger.Error("failed to GetSequencerSetBytes", "query at height of", curHeight-1, "error", err) - return err - } - - if err = e.l2Client.CommitBatch(context.Background(), ð.RollupBatch{ - Version: 0, - Index: currentIndex, - Hash: e.batchingCache.sealedBatchHeader.Hash(), - ParentBatchHeader: e.batchingCache.parentBatchHeader.Encode(), - CurrentSequencerSetBytes: sequencerSetBytes, - BlockContexts: blockContexts, - SkippedL1MessageBitmap: e.batchingCache.sealedBatchHeader.SkippedL1MessageBitmap, - PrevStateRoot: e.batchingCache.prevStateRoot, - PostStateRoot: e.batchingCache.postStateRoot, - WithdrawRoot: e.batchingCache.withdrawRoot, - Sidecar: e.batchingCache.sealedSidecar, - }, batchSigs); err != nil { - return err + var exceeded bool + if e.isBatchUpgraded(block.Timestamp) { + exceeded, err = e.batchingCache.batchData.WillExceedCompressedSizeLimit(e.batchingCache.currentBlockContext, e.batchingCache.currentTxsPayload) + } else { + exceeded, err = e.batchingCache.batchData.EstimateCompressedSizeWithNewPayload(e.batchingCache.currentTxsPayload) } - - // update newest batch index - e.metrics.BatchIndex.Set(float64(currentIndex)) - - // commit sealed batch header; move current block into the next batch - e.batchingCache.parentBatchHeader = e.batchingCache.sealedBatchHeader - e.batchingCache.prevStateRoot = e.batchingCache.postStateRoot - e.batchingCache.sealedBatchHeader = nil - e.batchingCache.sealedSidecar = nil - - _, _, totalL1MessagePopped, _, err := ParsingTxs(e.batchingCache.currentTxs, e.batchingCache.totalL1MessagePopped) - if err != nil { - return err - } - e.batchingCache.totalL1MessagePopped = totalL1MessagePopped - e.batchingCache.postStateRoot = e.batchingCache.currentStateRoot - e.batchingCache.withdrawRoot = e.batchingCache.currentWithdrawRoot - e.batchingCache.lastPackedBlockHeight = curHeight - e.batchingCache.batchData = types.NewBatchData() - e.batchingCache.batchData.Append(e.batchingCache.currentBlockContext, e.batchingCache.currentTxsPayload, e.batchingCache.currentL1TxsHashes) - e.batchingCache.ClearCurrent() - - e.logger.Info("Committed batch", "batchIndex", currentIndex) - return nil + return exceeded, err } func (e *Executor) AppendBlsData(height int64, batchHash []byte, data l2node.BlsData) error { @@ -366,7 +218,7 @@ func (e *Executor) PackCurrentBlock(currentBlockBytes []byte, currentTxs tmtypes } } - curHeight, err := heightFromBCBytes(currentBlockBytes) + curHeight, err := types.HeightFromBlockBytes(currentBlockBytes) if err != nil { return err } @@ -442,7 +294,7 @@ func ParsingTxs(transactions tmtypes.Txs, totalL1MessagePoppedBefore uint64) (tx return } -func GenesisBatchHeader(genesisHeader *eth.Header) (types.BatchHeader, error) { +func GenesisBatchHeader(genesisHeader *eth.Header) (types.BatchHeaderV0, error) { wb := types.WrappedBlock{ ParentHash: genesisHeader.ParentHash, Miner: genesisHeader.Coinbase, @@ -458,8 +310,7 @@ func GenesisBatchHeader(genesisHeader *eth.Header) (types.BatchHeader, error) { batchData := types.NewBatchData() batchData.Append(blockContext, nil, nil) - return types.BatchHeader{ - Version: 0, + return types.BatchHeaderV0{ BatchIndex: 0, L1MessagePopped: 0, TotalL1MessagePopped: 0, @@ -482,7 +333,9 @@ func (e *Executor) ConvertBlsDatas(blsDatas []l2node.BlsData) (ret []eth.BatchSi } func (e *Executor) ConvertBlsData(blsData l2node.BlsData) (*eth.BatchSignature, error) { - val, found := e.valsByTmKey[[32]byte(blsData.Signer)] + var signer [32]byte + copy(signer[:], blsData.Signer) + val, found := e.valsByTmKey[signer] if !found { return nil, fmt.Errorf("found invalid validator: %x", blsData.Signer) } @@ -495,18 +348,6 @@ func (e *Executor) ConvertBlsData(blsData l2node.BlsData) (*eth.BatchSignature, return &bs, nil } -func wrappedBlockFromBytes(blockBytes []byte) (*types.WrappedBlock, error) { - var curBlock = new(types.WrappedBlock) - if err := curBlock.UnmarshalBinary(blockBytes); err != nil { - return nil, err - } - return curBlock, nil -} - -func heightFromBCBytes(blockBytes []byte) (uint64, error) { - curBlock, err := wrappedBlockFromBytes(blockBytes) - if err != nil { - return 0, err - } - return curBlock.Number, nil +func (e *Executor) isBatchUpgraded(blockTime uint64) bool { + return blockTime >= e.UpgradeBatchTime } diff --git a/node/core/batch_commit.go b/node/core/batch_commit.go new file mode 100644 index 000000000..c0f161768 --- /dev/null +++ b/node/core/batch_commit.go @@ -0,0 +1,113 @@ +package node + +import ( + "bytes" + "context" + "fmt" + "math/big" + "morph-l2/node/types" + + "github.com/morph-l2/go-ethereum/accounts/abi/bind" + eth "github.com/morph-l2/go-ethereum/core/types" + "github.com/tendermint/tendermint/l2node" + tmtypes "github.com/tendermint/tendermint/types" +) + +// CommitBatch commits the sealed batch. It does nothing if no batch header is sealed. +// It should be called when the current block is confirmed. +func (e *Executor) CommitBatch(currentBlockBytes []byte, currentTxs tmtypes.Txs, blsDatas []l2node.BlsData) error { + // If no batch data is available, do nothing + if e.batchingCache.IsEmpty() || e.batchingCache.sealedBatchHeader == nil { + return nil + } + + // Reconstruct current block context if needed + if !bytes.Equal(currentBlockBytes, e.batchingCache.currentBlockBytes) || !bytes.Equal(currentTxs.Hash(), e.batchingCache.currentTxsHash) { + e.logger.Info("Current block has changed. Reconstructing current context...") + if err := e.setCurrentBlock(currentBlockBytes, currentTxs); err != nil { + return fmt.Errorf("failed to set current block: %w", err) + } + } + + // Get current block height + curHeight, err := types.HeightFromBlockBytes(e.batchingCache.currentBlockBytes) + if err != nil { + return fmt.Errorf("failed to parse current block height: %w", err) + } + + // Convert BlsData to batch signatures (if applicable) + var batchSigs []eth.BatchSignature + if !e.devSequencer { + batchSigs, err = e.ConvertBlsDatas(blsDatas) + if err != nil { + return fmt.Errorf("failed to convert BLS data: %w", err) + } + } + + // Get the sequencer set at current height - 1 + callOpts := &bind.CallOpts{BlockNumber: big.NewInt(int64(curHeight - 1))} + sequencerSetBytes, err := e.sequencerCaller.GetSequencerSetBytes(callOpts) + if err != nil { + e.logger.Error("Failed to GetSequencerSetBytes", "blockHeight", curHeight-1, "error", err) + return fmt.Errorf("failed to get sequencer set bytes: %w", err) + } + + // Encode batch data and commit batch to L2 client + blockContexts, err := e.batchingCache.batchData.Encode() + if err != nil { + return fmt.Errorf("failed to encode block contexts: %w", err) + } + + version, err := e.batchingCache.sealedBatchHeader.Version() + if err != nil { + return fmt.Errorf("failed to get batch version: %w", err) + } + + parentBatchIndex, _ := e.batchingCache.parentBatchHeader.BatchIndex() + hash, _ := e.batchingCache.sealedBatchHeader.Hash() + l1MessagePopped, _ := e.batchingCache.sealedBatchHeader.L1MessagePopped() + // Construct the batch and commit it + if err = e.l2Client.CommitBatch(context.Background(), ð.RollupBatch{ + Version: uint(version), + Index: parentBatchIndex + 1, + Hash: hash, + ParentBatchHeader: *e.batchingCache.parentBatchHeader, + CurrentSequencerSetBytes: sequencerSetBytes, + BlockContexts: blockContexts, + PrevStateRoot: e.batchingCache.prevStateRoot, + PostStateRoot: e.batchingCache.postStateRoot, + WithdrawRoot: e.batchingCache.withdrawRoot, + Sidecar: e.batchingCache.sealedSidecar, + LastBlockNumber: e.batchingCache.lastPackedBlockHeight, + NumL1Messages: uint16(l1MessagePopped), + }, batchSigs); err != nil { + return fmt.Errorf("failed to commit batch to L2 client: %w", err) + } + + // Update batch index metric + e.metrics.BatchIndex.Set(float64(parentBatchIndex + 1)) + + // Commit the batch and reset the cache for the next batch + e.commitSealedBatch(curHeight) + + e.logger.Info("Committed batch", "batchIndex", parentBatchIndex+1) + return nil +} + +// commitSealedBatch commits the sealed batch and resets cache for the next batch. +func (e *Executor) commitSealedBatch(curHeight uint64) { + e.batchingCache.parentBatchHeader = e.batchingCache.sealedBatchHeader + e.batchingCache.prevStateRoot = e.batchingCache.postStateRoot + e.batchingCache.sealedBatchHeader = nil + e.batchingCache.sealedSidecar = nil + + e.batchingCache.totalL1MessagePopped = e.batchingCache.totalL1MessagePoppedAfterCurBlock + e.batchingCache.postStateRoot = e.batchingCache.currentStateRoot + e.batchingCache.withdrawRoot = e.batchingCache.currentWithdrawRoot + e.batchingCache.lastPackedBlockHeight = curHeight + + // Reset batch data and current context + e.batchingCache.batchData = types.NewBatchData() + e.batchingCache.batchData.Append(e.batchingCache.currentBlockContext, e.batchingCache.currentTxsPayload, e.batchingCache.currentL1TxsHashes) + e.batchingCache.ClearCurrent() +} diff --git a/node/core/batch_seal.go b/node/core/batch_seal.go new file mode 100644 index 000000000..be02cdfe1 --- /dev/null +++ b/node/core/batch_seal.go @@ -0,0 +1,151 @@ +package node + +import ( + "errors" + "fmt" + + "morph-l2/node/types" + + "github.com/morph-l2/go-ethereum/common" + eth "github.com/morph-l2/go-ethereum/core/types" +) + +// SealBatch seals the accumulated blocks into a batch. +// It ensures proper compression and data preparation based on the batch version. +// It should be called after CalculateBatchSizeWithProposalBlock which ensure the accumulated blocks is correct. +func (e *Executor) SealBatch() ([]byte, []byte, error) { + // Ensure the batching cache is not empty + if e.batchingCache.IsEmpty() { + return nil, nil, errors.New("failed to seal batch: batch cache is empty") + } + + // Parse the current block from the cache + block, err := types.WrappedBlockFromBytes(e.batchingCache.currentBlockBytes) + if err != nil { + return nil, nil, fmt.Errorf("failed to parse current block: %w", err) + } + + // Compress and get data hash based on batch version + compressedPayload, batchDataHash, err := e.handleBatchSealing(block.Timestamp) + if err != nil { + return nil, nil, err + } + + // Generate sidecar for blob data + sidecar, err := types.MakeBlobTxSidecar(compressedPayload) + if err != nil { + return nil, nil, fmt.Errorf("failed to create blob sidecar: %w", err) + } + + // Retrieve sequencer verification hash + sequencerSetVerifyHash, err := e.sequencerCaller.SequencerSetVerifyHash(nil) + if err != nil { + return nil, nil, fmt.Errorf("failed to get sequencer set verification hash: %w", err) + } + + // Create batch header + batchHeader := e.createBatchHeader(batchDataHash, sidecar, sequencerSetVerifyHash, block.Timestamp) + + // Cache the sealed header and sidecar + e.batchingCache.sealedBatchHeader = &batchHeader + e.batchingCache.sealedSidecar = sidecar + + batchHash, err := batchHeader.Hash() + if err != nil { + return nil, nil, fmt.Errorf("failed to hash sealed batch header: %w", err) + } + // Log information about the sealed batch + e.logSealedBatch(batchHeader, batchHash) + // Return the batch hash and encoded batch header + return batchHash[:], batchHeader, nil +} + +// handleBatchSealing determines which version to use for compression and calculates the data hash. +func (e *Executor) handleBatchSealing(blockTimestamp uint64) ([]byte, common.Hash, error) { + var ( + compressedPayload []byte + batchDataHash common.Hash + err error + ) + + // Check if the batch should use the upgraded version + if e.isBatchUpgraded(blockTimestamp) { + compressedPayload, err = types.CompressBatchBytes(e.batchingCache.batchData.TxsPayloadV2()) + if err != nil { + return nil, common.Hash{}, fmt.Errorf("failed to compress upgraded payload: %w", err) + } + + if len(compressedPayload) <= types.MaxBlobBytesSize { + batchDataHash, err = e.batchingCache.batchData.DataHashV2() + if err != nil { + return nil, common.Hash{}, fmt.Errorf("failed to calculate upgraded data hash: %w", err) + } + return compressedPayload, batchDataHash, nil + } + } + + // Fallback to old version if upgraded is not used + compressedPayload, err = types.CompressBatchBytes(e.batchingCache.batchData.TxsPayload()) + if err != nil { + return nil, common.Hash{}, fmt.Errorf("failed to compress payload: %w", err) + } + batchDataHash = e.batchingCache.batchData.DataHash() + + return compressedPayload, batchDataHash, nil +} + +// createBatchHeader creates a BatchHeader from the given parameters. +func (e *Executor) createBatchHeader(dataHash common.Hash, sidecar *eth.BlobTxSidecar, sequencerSetVerifyHash common.Hash, blockTimestamp uint64) types.BatchHeaderBytes { + blobHashes := []common.Hash{types.EmptyVersionedHash} + if sidecar != nil && len(sidecar.Blobs) > 0 { + blobHashes = sidecar.BlobHashes() + } + + parentBatchHeaderTotalL1, _ := e.batchingCache.parentBatchHeader.TotalL1MessagePopped() + + l1MessagePopped := e.batchingCache.totalL1MessagePopped - parentBatchHeaderTotalL1 + + parentBatchIndex, _ := e.batchingCache.parentBatchHeader.BatchIndex() + parentBatchHash, _ := e.batchingCache.parentBatchHeader.Hash() + batchHeaderV0 := types.BatchHeaderV0{ + BatchIndex: parentBatchIndex + 1, + L1MessagePopped: l1MessagePopped, + TotalL1MessagePopped: e.batchingCache.totalL1MessagePopped, + DataHash: dataHash, + BlobVersionedHash: blobHashes[0], + PrevStateRoot: e.batchingCache.prevStateRoot, + PostStateRoot: e.batchingCache.postStateRoot, + WithdrawalRoot: e.batchingCache.withdrawRoot, + SequencerSetVerifyHash: sequencerSetVerifyHash, + ParentBatchHash: parentBatchHash, + } + if e.isBatchUpgraded(blockTimestamp) { + batchHeaderV1 := types.BatchHeaderV1{ + BatchHeaderV0: batchHeaderV0, + LastBlockNumber: e.batchingCache.lastPackedBlockHeight, + } + return batchHeaderV1.Bytes() + } + + return batchHeaderV0.Bytes() +} + +// logSealedBatch logs the details of the sealed batch for debugging purposes. +func (e *Executor) logSealedBatch(batchHeader types.BatchHeaderBytes, batchHash common.Hash) { + e.logger.Info("Sealed batch header", "batchHash", batchHash.Hex()) + batchIndex, _ := batchHeader.BatchIndex() + l1MessagePopped, _ := batchHeader.L1MessagePopped() + totalL1MessagePopped, _ := batchHeader.TotalL1MessagePopped() + dataHash, _ := batchHeader.DataHash() + parentBatchHash, _ := batchHeader.ParentBatchHash() + e.logger.Info(fmt.Sprintf("===batchIndex: %d \n===L1MessagePopped: %d \n===TotalL1MessagePopped: %d \n===dataHash: %x \n===blockNum: %d \n===ParentBatchHash: %x \n", + batchIndex, + l1MessagePopped, + totalL1MessagePopped, + dataHash, + e.batchingCache.batchData.BlockNum(), + parentBatchHash)) + + blockContexts, _ := e.batchingCache.batchData.Encode() + e.logger.Info(fmt.Sprintf("===blockContexts: %x \n", blockContexts)) +} diff --git a/node/db/keys.go b/node/db/keys.go index 334009223..b0d50ddcd 100644 --- a/node/db/keys.go +++ b/node/db/keys.go @@ -3,8 +3,9 @@ package db import "encoding/binary" var ( - syncedL1HeightKey = []byte("LastSyncedL1Height") - L1MessagePrefix = []byte("l1") + syncedL1HeightKey = []byte("LastSyncedL1Height") + L1MessagePrefix = []byte("l1") + BatchBlockNumberPrefix = []byte("batch") derivationL1HeightKey = []byte("LastDerivationL1Height") ) @@ -20,3 +21,8 @@ func encodeEnqueueIndex(index uint64) []byte { func L1MessageKey(enqueueIndex uint64) []byte { return append(L1MessagePrefix, encodeEnqueueIndex(enqueueIndex)...) } + +// BatchBlockNumberKey = BatchBlockNumberKeyPrefix + batchIndex (uint64 big endian) +func BatchBlockNumberKey(batchIndex uint64) []byte { + return append(BatchBlockNumberPrefix, encodeEnqueueIndex(batchIndex)...) +} diff --git a/node/db/store.go b/node/db/store.go index dcabfc091..1a87a227c 100644 --- a/node/db/store.go +++ b/node/db/store.go @@ -121,7 +121,6 @@ func (s *Store) ReadL1MessageByIndex(index uint64) *types.L1Message { } return &l1Msg - } func (s *Store) WriteLatestDerivationL1Height(latest uint64) { diff --git a/node/derivation/batch_info.go b/node/derivation/batch_info.go index 17d4fe88a..4c1470aa0 100644 --- a/node/derivation/batch_info.go +++ b/node/derivation/batch_info.go @@ -1,16 +1,20 @@ package derivation import ( + "bytes" "encoding/binary" "fmt" + "io" "math/big" "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/common/hexutil" eth "github.com/morph-l2/go-ethereum/core/types" geth "github.com/morph-l2/go-ethereum/eth" "github.com/morph-l2/go-ethereum/eth/catalyst" "morph-l2/node/types" + "morph-l2/node/zstd" ) type BlockContext struct { @@ -53,9 +57,9 @@ type BatchInfo struct { lastBlockNumber uint64 firstBlockNumber uint64 - root common.Hash - withdrawalRoot common.Hash - skippedL1MessageBitmap *big.Int + root common.Hash + withdrawalRoot common.Hash + parentTotalL1MessagePopped uint64 } func (bi *BatchInfo) FirstBlockNumber() uint64 { @@ -76,29 +80,103 @@ func (bi *BatchInfo) TxNum() uint64 { // ParseBatch This method is externally referenced for parsing Batch func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { + parentBatchHeader := types.BatchHeaderBytes(batch.ParentBatchHeader) + parentBatchIndex, err := parentBatchHeader.BatchIndex() + if err != nil { + return fmt.Errorf("decode batch header index error:%v", err) + } + totalL1MessagePopped, err := parentBatchHeader.TotalL1MessagePopped() + if err != nil { + return fmt.Errorf("decode batch header totalL1MessagePopped error:%v", err) + } + bi.parentTotalL1MessagePopped = totalL1MessagePopped bi.root = batch.PostStateRoot + bi.batchIndex = parentBatchIndex + 1 bi.withdrawalRoot = batch.WithdrawRoot - // If skipMap is zero value, there are no msgs that can be skipped - if len(batch.SkippedL1MessageBitmap[:]) != 0 { - bi.skippedL1MessageBitmap = new(big.Int).SetBytes(batch.SkippedL1MessageBitmap[:]) - } bi.version = uint64(batch.Version) tq := newTxQueue() + var rawBlockContexts hexutil.Bytes + var txsData []byte + var blockCount uint64 + if batch.Version > 0 { + parentVersion, err := parentBatchHeader.Version() + if err != nil { + return fmt.Errorf("decode batch header version error:%v", err) + } + if parentVersion == 0 { + if len(batch.Sidecar.Blobs) == 0 { + return fmt.Errorf("blobs length can not be zero") + } + blobData, err := types.RetrieveBlobBytes(&batch.Sidecar.Blobs[0]) + if err != nil { + return err + } + batchBytes, err := zstd.DecompressBatchBytes(blobData) + if err != nil { + return fmt.Errorf("decompress batch bytes error:%v", err) + } + var startBlock BlockContext + if err := startBlock.Decode(batchBytes[:60]); err != nil { + return fmt.Errorf("decode chunk block context error:%v", err) + } + blockCount = batch.LastBlockNumber - startBlock.Number + 1 + } else { + parentBatchBlock, err := parentBatchHeader.LastBlockNumber() + if err != nil { + return fmt.Errorf("decode batch header lastBlockNumber error:%v", err) + } + blockCount = batch.LastBlockNumber - parentBatchBlock + } + + } + // If BlockContexts is not nil, the block context should not be included in the blob. + // Therefore, the required length must be zero. + length := blockCount * 60 for _, blob := range batch.Sidecar.Blobs { blobCopy := blob - data, err := types.DecodeTxsFromBlob(&blobCopy) + blobData, err := types.RetrieveBlobBytes(&blobCopy) + if err != nil { + return err + } + batchBytes, err := zstd.DecompressBatchBytes(blobData) if err != nil { return err } - tq.enqueue(data) + reader := bytes.NewReader(batchBytes) + if batch.BlockContexts == nil { + if len(batchBytes) < int(length) { + rawBlockContexts = append(rawBlockContexts, batchBytes...) + length -= uint64(len(batchBytes)) + reader.Reset(nil) + } else { + bcBytes := make([]byte, length) + _, err = reader.Read(bcBytes) + if err != nil { + return fmt.Errorf("read block context error:%s", err.Error()) + } + rawBlockContexts = append(rawBlockContexts, bcBytes...) + length = 0 + } + } + data, err := io.ReadAll(reader) + if err != nil { + return fmt.Errorf("read txBytes error:%s", err.Error()) + } + txsData = append(txsData, data...) } - - blockNum := binary.BigEndian.Uint16(batch.BlockContexts[:2]) - rawBlockContexts := batch.BlockContexts[2:] + if batch.BlockContexts != nil { + blockCount = uint64(binary.BigEndian.Uint16(batch.BlockContexts[:2])) + rawBlockContexts = batch.BlockContexts[2 : 60*blockCount+2] + } + data, err := types.DecodeTxsFromBytes(txsData) + if err != nil { + return err + } + tq.enqueue(data) var txsNum uint64 var l1MsgNum uint64 - blockContexts := make([]*BlockContext, int(blockNum)) - for i := 0; i < int(blockNum); i++ { + blockContexts := make([]*BlockContext, int(blockCount)) + for i := 0; i < int(blockCount); i++ { var block BlockContext if err := block.Decode(rawBlockContexts[i*60 : i*60+60]); err != nil { return fmt.Errorf("decode chunk block context error:%v", err) @@ -106,7 +184,7 @@ func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { if i == 0 { bi.firstBlockNumber = block.Number } - if i == int(blockNum)-1 { + if i == int(blockCount)-1 { bi.lastBlockNumber = block.Number } var safeL2Data catalyst.SafeL2Data @@ -138,7 +216,6 @@ func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { } bi.txNum += txsNum bi.blockContexts = blockContexts - return nil } diff --git a/node/derivation/config.go b/node/derivation/config.go index 386a0f2e0..439acbc42 100644 --- a/node/derivation/config.go +++ b/node/derivation/config.go @@ -12,6 +12,7 @@ import ( "github.com/morph-l2/go-ethereum/common" "github.com/morph-l2/go-ethereum/common/hexutil" + "github.com/morph-l2/go-ethereum/log" "github.com/morph-l2/go-ethereum/rpc" "github.com/urfave/cli" @@ -36,6 +37,7 @@ type Config struct { BeaconRpc string `json:"beacon_rpc"` RollupContractAddress common.Address `json:"rollup_contract_address"` StartHeight uint64 `json:"start_height"` + BaseHeight uint64 `json:"base_height"` PollInterval time.Duration `json:"poll_interval"` LogProgressInterval time.Duration `json:"log_progress_interval"` FetchBlockRange uint64 `json:"fetch_block_range"` @@ -61,6 +63,11 @@ func (c *Config) SetCliContext(ctx *cli.Context) error { if ctx.GlobalIsSet(flags.L1Confirmations.Name) { c.L1.Confirmations = rpc.BlockNumber(ctx.GlobalInt64(flags.L1Confirmations.Name)) } + // The current setting priority is greater than Env L1Confirmations + if ctx.GlobalIsSet(flags.DerivationConfirmations.Name) { + c.L1.Confirmations = rpc.BlockNumber(ctx.GlobalInt64(flags.DerivationConfirmations.Name)) + log.Warn("derivation confirmations reset to ", c.L1.Confirmations) + } if ctx.GlobalIsSet(flags.RollupContractAddress.Name) { addr := common.HexToAddress(ctx.GlobalString(flags.RollupContractAddress.Name)) c.RollupContractAddress = addr @@ -80,6 +87,10 @@ func (c *Config) SetCliContext(ctx *cli.Context) error { } } + if ctx.GlobalIsSet(flags.DerivationBaseHeight.Name) { + c.BaseHeight = ctx.GlobalUint64(flags.DerivationBaseHeight.Name) + } + if ctx.GlobalIsSet(flags.DerivationPollInterval.Name) { c.PollInterval = ctx.GlobalDuration(flags.DerivationPollInterval.Name) if c.PollInterval == 0 { diff --git a/node/derivation/derivation.go b/node/derivation/derivation.go index 5fe76e292..a3fc43fbe 100644 --- a/node/derivation/derivation.go +++ b/node/derivation/derivation.go @@ -23,6 +23,7 @@ import ( "morph-l2/bindings/bindings" "morph-l2/bindings/predeploys" + nodecommon "morph-l2/node/common" "morph-l2/node/sync" "morph-l2/node/types" "morph-l2/node/validator" @@ -36,7 +37,7 @@ var ( type Derivation struct { ctx context.Context syncer *sync.Syncer - l1Client DeployContractBackend + l1Client *ethclient.Client RollupContractAddress common.Address confirmations rpc.BlockNumber l2Client *types.RetryableClient @@ -47,14 +48,16 @@ type Derivation struct { l1BeaconClient *L1BeaconClient L2ToL1MessagePasser *bindings.L2ToL1MessagePasser - rollupABI *abi.ABI - legacyRollupABI *abi.ABI // before remove skipMap + rollupABI *abi.ABI + legacyRollupABI *abi.ABI // before remove skipMap + beforeMoveBlockCtxABI *abi.ABI db Database cancel context.CancelFunc startHeight uint64 + baseHeight uint64 fetchBlockRange uint64 pollInterval time.Duration logProgressInterval time.Duration @@ -93,6 +96,10 @@ func NewDerivationClient(ctx context.Context, cfg *Config, syncer *sync.Syncer, if err != nil { return nil, err } + beforeMoveBlockCtxAbi, err := types.BeforeMoveBlockCtxABI.GetAbi() + if err != nil { + return nil, err + } ctx, cancel := context.WithCancel(ctx) logger = logger.With("module", "derivation") metrics := PrometheusMetrics("morphnode") @@ -116,6 +123,7 @@ func NewDerivationClient(ctx context.Context, cfg *Config, syncer *sync.Syncer, rollup: rollup, rollupABI: rollupAbi, legacyRollupABI: legacyRollupAbi, + beforeMoveBlockCtxABI: beforeMoveBlockCtxAbi, logger: logger, RollupContractAddress: cfg.RollupContractAddress, confirmations: cfg.L1.Confirmations, @@ -123,6 +131,7 @@ func NewDerivationClient(ctx context.Context, cfg *Config, syncer *sync.Syncer, cancel: cancel, stop: make(chan struct{}), startHeight: cfg.StartHeight, + baseHeight: cfg.BaseHeight, fetchBlockRange: cfg.FetchBlockRange, pollInterval: cfg.PollInterval, logProgressInterval: cfg.LogProgressInterval, @@ -171,7 +180,11 @@ func (d *Derivation) Stop() { func (d *Derivation) derivationBlock(ctx context.Context) { latestDerivation := d.db.ReadLatestDerivationL1Height() - latest := d.syncer.LatestSynced() + latest, err := d.getLatestConfirmedBlockNumber(d.ctx) + if err != nil { + d.logger.Error("get latest block number failed", "err", err) + return + } var start uint64 if latestDerivation == nil { start = d.startHeight @@ -221,6 +234,9 @@ func (d *Derivation) derivationBlock(ctx context.Context) { d.logger.Info("batch derivation complete", "batch_index", batchInfo.batchIndex, "currentBatchEndBlock", lastHeader.Number.Uint64()) d.metrics.SetL2DeriveHeight(lastHeader.Number.Uint64()) d.metrics.SetSyncedBatchIndex(batchInfo.batchIndex) + if lastHeader.Number.Uint64() <= d.baseHeight { + continue + } withdrawalRoot, err := d.L2ToL1MessagePasser.MessageRoot(&bind.CallOpts{ BlockNumber: lastHeader.Number, }) @@ -301,7 +317,11 @@ func (d *Derivation) fetchRollupDataByTxHash(txHash common.Hash, blockNumber uin } } batch.Sidecar = bts - rollupData, err := d.parseBatch(batch) + l2Height, err := d.l2Client.BlockNumber(d.ctx) + if err != nil { + return nil, fmt.Errorf("query l2 block number error:%v", err) + } + rollupData, err := d.parseBatch(batch, l2Height) if err != nil { d.logger.Error("parse batch failed", "txNonce", tx.Nonce(), "txHash", txHash, "l1BlockNumber", blockNumber) @@ -315,8 +335,8 @@ func (d *Derivation) fetchRollupDataByTxHash(txHash common.Hash, blockNumber uin func (d *Derivation) UnPackData(data []byte) (geth.RPCRollupBatch, error) { var batch geth.RPCRollupBatch - if bytes.Equal(d.rollupABI.Methods["commitBatch"].ID, data[:4]) { - args, err := d.rollupABI.Methods["commitBatch"].Inputs.Unpack(data[4:]) + if bytes.Equal(d.beforeMoveBlockCtxABI.Methods["commitBatch"].ID, data[:4]) { + args, err := d.beforeMoveBlockCtxABI.Methods["commitBatch"].Inputs.Unpack(data[4:]) if err != nil { return batch, fmt.Errorf("submitBatches Unpack error:%v", err) } @@ -351,13 +371,35 @@ func (d *Derivation) UnPackData(data []byte) (geth.RPCRollupBatch, error) { WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" }) batch = geth.RPCRollupBatch{ - Version: uint(rollupBatchData.Version), - ParentBatchHeader: rollupBatchData.ParentBatchHeader, - BlockContexts: rollupBatchData.BlockContexts, - SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, - PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), - PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), - WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + Version: uint(rollupBatchData.Version), + ParentBatchHeader: rollupBatchData.ParentBatchHeader, + BlockContexts: rollupBatchData.BlockContexts, + PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), + PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), + WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + } + } else if bytes.Equal(d.rollupABI.Methods["commitBatch"].ID, data[:4]) { + args, err := d.rollupABI.Methods["commitBatch"].Inputs.Unpack(data[4:]) + if err != nil { + return batch, fmt.Errorf("submitBatches Unpack error:%v", err) + } + rollupBatchData := args[0].(struct { + Version uint8 "json:\"version\"" + ParentBatchHeader []uint8 "json:\"parentBatchHeader\"" + LastBlockNumber uint64 "json:\"lastBlockNumber\"" + NumL1Messages uint16 "json:\"numL1Messages\"" + PrevStateRoot [32]uint8 "json:\"prevStateRoot\"" + PostStateRoot [32]uint8 "json:\"postStateRoot\"" + WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" + }) + batch = geth.RPCRollupBatch{ + Version: uint(rollupBatchData.Version), + ParentBatchHeader: rollupBatchData.ParentBatchHeader, + LastBlockNumber: rollupBatchData.LastBlockNumber, + NumL1Messages: rollupBatchData.NumL1Messages, + PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), + PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), + WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), } } else { return batch, types.ErrNotCommitBatchTx @@ -365,36 +407,35 @@ func (d *Derivation) UnPackData(data []byte) (geth.RPCRollupBatch, error) { return batch, nil } -func (d *Derivation) parseBatch(batch geth.RPCRollupBatch) (*BatchInfo, error) { - parentBatchHeader, err := types.DecodeBatchHeader(batch.ParentBatchHeader) - if err != nil { - return nil, fmt.Errorf("decode batch header error:%v", err) - } +func (d *Derivation) parseBatch(batch geth.RPCRollupBatch, l2Height uint64) (*BatchInfo, error) { batchInfo := new(BatchInfo) if err := batchInfo.ParseBatch(batch); err != nil { return nil, fmt.Errorf("parse batch error:%v", err) } - if err := d.handleL1Message(batchInfo, parentBatchHeader.TotalL1MessagePopped); err != nil { + if err := d.handleL1Message(batchInfo, batchInfo.parentTotalL1MessagePopped, l2Height); err != nil { return nil, fmt.Errorf("handle l1 message error:%v", err) } - batchInfo.batchIndex = parentBatchHeader.BatchIndex + 1 return batchInfo, nil } -func (d *Derivation) handleL1Message(rollupData *BatchInfo, parentTotalL1MessagePopped uint64) error { +func (d *Derivation) handleL1Message(rollupData *BatchInfo, parentTotalL1MessagePopped, l2Height uint64) error { totalL1MessagePopped := parentTotalL1MessagePopped for bIndex, block := range rollupData.blockContexts { + // This may happen to nodes started from snapshot, in which case we will no longer handle L1Msg + if block.Number <= l2Height { + continue + } var l1Transactions []*eth.Transaction l1Messages, err := d.getL1Message(totalL1MessagePopped, uint64(block.l1MsgNum)) if err != nil { return fmt.Errorf("get l1 message error:%v", err) } + if len(l1Messages) != int(block.l1MsgNum) { + return fmt.Errorf("invalid l1 msg num,expect %v,have %v", block.l1MsgNum, l1Messages) + } totalL1MessagePopped += uint64(block.l1MsgNum) if len(l1Messages) > 0 { for _, l1Message := range l1Messages { - if rollupData.skippedL1MessageBitmap != nil && rollupData.skippedL1MessageBitmap.Bit(int(l1Message.QueueIndex)-int(parentTotalL1MessagePopped)) == 1 { - continue - } transaction := eth.NewTx(&l1Message.L1MessageTx) l1Transactions = append(l1Transactions, transaction) } @@ -445,3 +486,7 @@ func (d *Derivation) derive(rollupData *BatchInfo) (*eth.Header, error) { return lastHeader, nil } + +func (d *Derivation) getLatestConfirmedBlockNumber(ctx context.Context) (uint64, error) { + return nodecommon.GetLatestConfirmedBlockNumber(ctx, d.l1Client, d.confirmations) +} diff --git a/node/derivation/derivation_test.go b/node/derivation/derivation_test.go index 6d16c0a0c..653ce96ce 100644 --- a/node/derivation/derivation_test.go +++ b/node/derivation/derivation_test.go @@ -11,9 +11,9 @@ import ( ) var ( - errorData = "0x92f65af30000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008e0000000000000000000000000000000000000000000000000000000000000098000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000006a02b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b620322b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b6203227ae5ba08d7291c96c8cbddcc148bf48a6d68c7974b94356f53754ef6171d75700000000000000000000000000000000000000000000000000000000000006c00000000000000000000000000000000000000000000000000000000000000059000000000000000127000000000000000000000000000000006a5279896e0503ca805ecdb9208afa1ae78e214ceae183cf59fba3a8788e4598b0cd5e7bf4073160681199a5f107e15ec96c350840ebedb522a79c73615037b9000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004b11400000000000015520000000065e43bfb000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015530000000065e43c02000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015540000000065e43c08000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015550000000065e43c0f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015560000000065e43c15000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015570000000065e43c1c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015580000000065e43c22000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015590000000065e43c280000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155a0000000065e43c2f0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155b0000000065e43c350000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155c0000000065e43c3c0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155d0000000065e43c420000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155e0000000065e43c490000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155f0000000065e43c4f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015600000000065e43c56000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015610000000065e43c5c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015620000000065e43c62000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015630000000065e43c69000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015640000000065e43c6f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015650000000065e43c7600000000000000000000000000000000000000000000000000000000000000000000000000989680000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e" - legacyData = "0xd63b3549000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000260292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d37700ba12e4dbe3733969348ffaf757b9225bdc7a3c48a5119f9a31256bbaa206fd6c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6df00000000000000000000000000000000000000000000000000000000000000f9000000000000008a98000000000000000000000000000001fbabd382d81484e2b0dc54e4d50d5767c312cd80d9c333217cc54d2a7395b06e650146a9e49d91463c241819423fac7ffa814a0a04473cace0e7a00b42da68ecd00a75fef5e27def60bbd05a3d76a3ca335df4d182a33e63c7f6c8e7890fe323f2292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d3776c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6dffed06619f2ec164eedb2121c02eda056059e58b8651d8b73785ab73f8aa3a555ac69de82ab218b900846f782176e21f0fa200cd8d8e8a70f64624e80d45d68a800000000000000000000000000000000000000000000000000000000000000000000000000003e000100000000000776ed00000000672b021600000000000000000000000000000000000000000000000000000000000f42400000000001c9c38003f9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000004e4600000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b6346ded94fc61b637763610d0c59846b778108000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000002c6d7a4e30d442f8d1acdc5068b604b75d1fc37673a07d51e0e56f3cbe28c36fa177a7d490b0147b89dbcc9e496f7d80000000000000000000000000000000001dddd9c85d12fb203286351cd1def0e5e830194ccc8ca494420adaa75db7613bf4cbe61fb316b8df2ec89eeda2b04e1" - data = "0x4a8d544f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000260292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d37700ba12e4dbe3733969348ffaf757b9225bdc7a3c48a5119f9a31256bbaa206fd6c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6df00000000000000000000000000000000000000000000000000000000000000f9000000000000008a98000000000000000000000000000001fbabd382d81484e2b0dc54e4d50d5767c312cd80d9c333217cc54d2a7395b06e650146a9e49d91463c241819423fac7ffa814a0a04473cace0e7a00b42da68ecd00a75fef5e27def60bbd05a3d76a3ca335df4d182a33e63c7f6c8e7890fe323f2292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d3776c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6dffed06619f2ec164eedb2121c02eda056059e58b8651d8b73785ab73f8aa3a555ac69de82ab218b900846f782176e21f0fa200cd8d8e8a70f64624e80d45d68a800000000000000000000000000000000000000000000000000000000000000000000000000003e000100000000000776ed00000000672b021600000000000000000000000000000000000000000000000000000000000f42400000000001c9c38003f9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000004e4600000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b6346ded94fc61b637763610d0c59846b778108000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000002c6d7a4e30d442f8d1acdc5068b604b75d1fc37673a07d51e0e56f3cbe28c36fa177a7d490b0147b89dbcc9e496f7d80000000000000000000000000000000001dddd9c85d12fb203286351cd1def0e5e830194ccc8ca494420adaa75db7613bf4cbe61fb316b8df2ec89eeda2b04e1" + errorData = "0x92f65af30000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008e0000000000000000000000000000000000000000000000000000000000000098000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000006a02b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b620322b8abfcc1aa740eb6330093a5ef9c1d09c39672c390926de6db9089554b6203227ae5ba08d7291c96c8cbddcc148bf48a6d68c7974b94356f53754ef6171d75700000000000000000000000000000000000000000000000000000000000006c00000000000000000000000000000000000000000000000000000000000000059000000000000000127000000000000000000000000000000006a5279896e0503ca805ecdb9208afa1ae78e214ceae183cf59fba3a8788e4598b0cd5e7bf4073160681199a5f107e15ec96c350840ebedb522a79c73615037b9000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004b11400000000000015520000000065e43bfb000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015530000000065e43c02000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015540000000065e43c08000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015550000000065e43c0f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015560000000065e43c15000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015570000000065e43c1c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015580000000065e43c22000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015590000000065e43c280000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155a0000000065e43c2f0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155b0000000065e43c350000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155c0000000065e43c3c0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155d0000000065e43c420000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155e0000000065e43c490000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000155f0000000065e43c4f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015600000000065e43c56000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015610000000065e43c5c000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015620000000065e43c62000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015630000000065e43c69000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015640000000065e43c6f000000000000000000000000000000000000000000000000000000000000000000000000009896800000000000000000000015650000000065e43c7600000000000000000000000000000000000000000000000000000000000000000000000000989680000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000001656c61193a9eca0201811fc18e071ee949910f696d7464fb3ed32ce9e9f022967f03962fb34c8533f0d01c13e808f4c000000000000000000000000000000000a066efeb662c0804b6c35a0be989a5fbd6a229261b12a176195772febca89e806e3fa2bebe19f95c7491af5afc7334e" + legacyData = "0xd63b3549000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000260292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d37700ba12e4dbe3733969348ffaf757b9225bdc7a3c48a5119f9a31256bbaa206fd6c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6df00000000000000000000000000000000000000000000000000000000000000f9000000000000008a98000000000000000000000000000001fbabd382d81484e2b0dc54e4d50d5767c312cd80d9c333217cc54d2a7395b06e650146a9e49d91463c241819423fac7ffa814a0a04473cace0e7a00b42da68ecd00a75fef5e27def60bbd05a3d76a3ca335df4d182a33e63c7f6c8e7890fe323f2292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d3776c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6dffed06619f2ec164eedb2121c02eda056059e58b8651d8b73785ab73f8aa3a555ac69de82ab218b900846f782176e21f0fa200cd8d8e8a70f64624e80d45d68a800000000000000000000000000000000000000000000000000000000000000000000000000003e000100000000000776ed00000000672b021600000000000000000000000000000000000000000000000000000000000f42400000000001c9c38003f9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000004e4600000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b6346ded94fc61b637763610d0c59846b778108000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000002c6d7a4e30d442f8d1acdc5068b604b75d1fc37673a07d51e0e56f3cbe28c36fa177a7d490b0147b89dbcc9e496f7d80000000000000000000000000000000001dddd9c85d12fb203286351cd1def0e5e830194ccc8ca494420adaa75db7613bf4cbe61fb316b8df2ec89eeda2b04e1" + beforeMoveBctxData = "0x4a8d544f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000260292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d37700ba12e4dbe3733969348ffaf757b9225bdc7a3c48a5119f9a31256bbaa206fd6c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6df00000000000000000000000000000000000000000000000000000000000000f9000000000000008a98000000000000000000000000000001fbabd382d81484e2b0dc54e4d50d5767c312cd80d9c333217cc54d2a7395b06e650146a9e49d91463c241819423fac7ffa814a0a04473cace0e7a00b42da68ecd00a75fef5e27def60bbd05a3d76a3ca335df4d182a33e63c7f6c8e7890fe323f2292474b44bd10019728c36f474d43e57f666da244f857f10155d3b1df986d3776c0ab4151eda56c3b5b3f680e5100a43957ccb5aed62431468c550838e42f6dffed06619f2ec164eedb2121c02eda056059e58b8651d8b73785ab73f8aa3a555ac69de82ab218b900846f782176e21f0fa200cd8d8e8a70f64624e80d45d68a800000000000000000000000000000000000000000000000000000000000000000000000000003e000100000000000776ed00000000672b021600000000000000000000000000000000000000000000000000000000000f42400000000001c9c38003f9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000004e4600000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000b6346ded94fc61b637763610d0c59846b77810800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000b096665645994775eeba8aa114752d569734dcb40000000000000000000000003a587733d38e5487d2a7e81d84625f25c99ab3a1000000000000000000000000675cfc328f9f2e79a51e499b2be44462270572fe000000000000000000000000b6346ded94fc61b637763610d0c59846b778108000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000002c6d7a4e30d442f8d1acdc5068b604b75d1fc37673a07d51e0e56f3cbe28c36fa177a7d490b0147b89dbcc9e496f7d80000000000000000000000000000000001dddd9c85d12fb203286351cd1def0e5e830194ccc8ca494420adaa75db7613bf4cbe61fb316b8df2ec89eeda2b04e1" ) func TestUnPackData(t *testing.T) { @@ -21,9 +21,12 @@ func TestUnPackData(t *testing.T) { require.NoError(t, err) legacyRollupAbi, err := types.LegacyRollupMetaData.GetAbi() require.NoError(t, err) + beforeMoveBlockCtxABI, err := types.BeforeMoveBlockCtxABI.GetAbi() + require.NoError(t, err) d := Derivation{ - rollupABI: rollupAbi, - legacyRollupABI: legacyRollupAbi, + rollupABI: rollupAbi, + legacyRollupABI: legacyRollupAbi, + beforeMoveBlockCtxABI: beforeMoveBlockCtxABI, } errorTxData, err := hexutil.Decode(errorData) require.NoError(t, err) @@ -36,11 +39,11 @@ func TestUnPackData(t *testing.T) { LegacyBatchInfo := new(BatchInfo) err = LegacyBatchInfo.ParseBatch(legacyBatch) require.NoError(t, err) - txData, err := hexutil.Decode(data) + beforeMoveBctxTxData, err := hexutil.Decode(beforeMoveBctxData) require.NoError(t, err) - batch, err := d.UnPackData(txData) + beforeMoveBctxBatch, err := d.UnPackData(beforeMoveBctxTxData) require.NoError(t, err) - batchInfo := new(BatchInfo) - err = batchInfo.ParseBatch(batch) + beforeMoveBctxBatchInfo := new(BatchInfo) + err = beforeMoveBctxBatchInfo.ParseBatch(beforeMoveBctxBatch) require.NoError(t, err) } diff --git a/node/flags/flags.go b/node/flags/flags.go index c8fa45925..7ea7c21b2 100644 --- a/node/flags/flags.go +++ b/node/flags/flags.go @@ -170,6 +170,12 @@ var ( EnvVar: prefixEnvVar("VALIDATOR"), } + ChallengeEnable = cli.BoolFlag{ + Name: "validator.challengeEnable", + Usage: "Enable the validator challenge", + EnvVar: prefixEnvVar("VALIDATOR_CHALLENGE_ENABLE"), + } + // validator ValidatorPrivateKey = cli.StringFlag{ Name: "validator.privateKey", @@ -190,6 +196,12 @@ var ( EnvVar: prefixEnvVar("DERIVATION_START_HEIGHT"), } + DerivationBaseHeight = cli.Uint64Flag{ + Name: "derivation.baseHeight", + Usage: "The starting height of l2 derive, usually the node snapshot or other trusted starting height, before which stateRoot will not be checked", + EnvVar: prefixEnvVar("DERIVATION_BASE_HEIGHT"), + } + DerivationPollInterval = cli.DurationFlag{ Name: "derivation.pollInterval", Usage: "Frequency at which we query for rollup data", @@ -315,6 +327,7 @@ var Flags = []cli.Flag{ TendermintConfigPath, MockEnabled, ValidatorEnable, + ChallengeEnable, // validator ValidatorPrivateKey, @@ -322,9 +335,11 @@ var Flags = []cli.Flag{ // derivation RollupContractAddress, DerivationStartHeight, + DerivationBaseHeight, DerivationPollInterval, DerivationLogProgressInterval, DerivationFetchBlockRange, + DerivationConfirmations, L1BeaconAddr, // batch rules diff --git a/node/go.mod b/node/go.mod index 4ae03e3df..560d05a0f 100644 --- a/node/go.mod +++ b/node/go.mod @@ -2,7 +2,7 @@ module morph-l2/node go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 require ( github.com/cenkalti/backoff/v4 v4.1.3 @@ -10,7 +10,7 @@ require ( github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/golang-lru v1.0.2 github.com/klauspost/compress v1.17.9 - github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 + github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c github.com/prometheus/client_golang v1.17.0 github.com/spf13/viper v1.13.0 github.com/stretchr/testify v1.9.0 diff --git a/node/go.sum b/node/go.sum index efc7f79e2..0791c3e4f 100644 --- a/node/go.sum +++ b/node/go.sum @@ -360,10 +360,10 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= -github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/node/types/batch.go b/node/types/batch.go index 12b95cd96..c9746dfc7 100644 --- a/node/types/batch.go +++ b/node/types/batch.go @@ -8,7 +8,6 @@ import ( "github.com/morph-l2/go-ethereum/accounts/abi/bind" "github.com/morph-l2/go-ethereum/common" - "github.com/morph-l2/go-ethereum/common/hexutil" "github.com/morph-l2/go-ethereum/crypto" ) @@ -17,86 +16,15 @@ var ( LegacyRollupMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"skippedL1MessageBitmap\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", } -) - -type BatchHeader struct { - // Encoded in BatchHeaderV0Codec - Version uint8 - BatchIndex uint64 - L1MessagePopped uint64 - TotalL1MessagePopped uint64 - DataHash common.Hash - BlobVersionedHash common.Hash - PrevStateRoot common.Hash - PostStateRoot common.Hash - WithdrawalRoot common.Hash - SequencerSetVerifyHash common.Hash - ParentBatchHash common.Hash - SkippedL1MessageBitmap hexutil.Bytes - - //cache - EncodedBytes hexutil.Bytes -} - -// Encode encodes the BatchHeader into RollupV2 BatchHeaderV0Codec Encoding. -func (b *BatchHeader) Encode() []byte { - if len(b.EncodedBytes) > 0 { - return b.EncodedBytes - } - batchBytes := make([]byte, 249+len(b.SkippedL1MessageBitmap)) - batchBytes[0] = b.Version - binary.BigEndian.PutUint64(batchBytes[1:], b.BatchIndex) - binary.BigEndian.PutUint64(batchBytes[9:], b.L1MessagePopped) - binary.BigEndian.PutUint64(batchBytes[17:], b.TotalL1MessagePopped) - copy(batchBytes[25:], b.DataHash[:]) - copy(batchBytes[57:], b.BlobVersionedHash[:]) - copy(batchBytes[89:], b.PrevStateRoot[:]) - copy(batchBytes[121:], b.PostStateRoot[:]) - copy(batchBytes[153:], b.WithdrawalRoot[:]) - copy(batchBytes[185:], b.SequencerSetVerifyHash[:]) - copy(batchBytes[217:], b.ParentBatchHash[:]) - copy(batchBytes[249:], b.SkippedL1MessageBitmap[:]) - b.EncodedBytes = batchBytes - return batchBytes -} - -// Hash calculates the hash of the batch header. -func (b *BatchHeader) Hash() common.Hash { - if len(b.EncodedBytes) == 0 { - b.Encode() - } - - return crypto.Keccak256Hash(b.EncodedBytes) -} - -// DecodeBatchHeader attempts to decode the given byte slice into a BatchHeader. -func DecodeBatchHeader(data []byte) (BatchHeader, error) { - if len(data) < 249 { - return BatchHeader{}, fmt.Errorf("insufficient data for BatchHeader") - } - b := BatchHeader{ - Version: data[0], - - BatchIndex: binary.BigEndian.Uint64(data[1:9]), - L1MessagePopped: binary.BigEndian.Uint64(data[9:17]), - TotalL1MessagePopped: binary.BigEndian.Uint64(data[17:25]), - DataHash: common.BytesToHash(data[25:57]), - BlobVersionedHash: common.BytesToHash(data[57:89]), - PrevStateRoot: common.BytesToHash(data[89:121]), - PostStateRoot: common.BytesToHash(data[121:153]), - WithdrawalRoot: common.BytesToHash(data[153:185]), - SequencerSetVerifyHash: common.BytesToHash(data[185:217]), - ParentBatchHash: common.BytesToHash(data[217:249]), - SkippedL1MessageBitmap: data[249:], - - EncodedBytes: data, + BeforeMoveBlockCtxABI = &bind.MetaData{ + ABI: "[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ErrZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorIncorrectBatchLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ErrorNoBlockInBatch\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"res\",\"type\":\"string\"}],\"name\":\"ChallengeRes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ChallengeRewardClaim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"}],\"name\":\"ChallengeState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"CommitBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"withdrawRoot\",\"type\":\"bytes32\"}],\"name\":\"FinalizeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ProveRemainingClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"name\":\"RevertBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"UpdateChallenger\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPeriod\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPeriod\",\"type\":\"uint256\"}],\"name\":\"UpdateFinalizationPeriodSeconds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPercent\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercent\",\"type\":\"uint256\"}],\"name\":\"UpdateProofRewardPercent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldWindow\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWindow\",\"type\":\"uint256\"}],\"name\":\"UpdateProofWindow\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldVerifier\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newVerifier\",\"type\":\"address\"}],\"name\":\"UpdateVerifier\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"LAYER_2_CHAIN_ID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"__maxNumTxInChunk\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"addChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"batchChallengeReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchChallenged\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchChallengedSuccess\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchDataStore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"originTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalizeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"batchInsideChallengeWindow\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_batchHash\",\"type\":\"bytes32\"}],\"name\":\"challengeState\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"challenges\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"batchIndex\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"challengeDeposit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"challengeSuccess\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"finished\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimProveRemaining\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"claimReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"parentBatchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"blockContexts\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"prevStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"postStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"internalType\":\"structIRollup.BatchDataInput\",\"name\":\"batchDataInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"signedSequencersBitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"sequencerSets\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"internalType\":\"structIRollup.BatchSignatureInput\",\"name\":\"batchSignatureInput\",\"type\":\"tuple\"}],\"name\":\"commitBatch\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"batchHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"committedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizationPeriodSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"finalizeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"batchIndex\",\"type\":\"uint256\"}],\"name\":\"finalizedStateRoots\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"}],\"name\":\"importGenesisBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inChallenge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_l1StakingContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_messageQueue\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_finalizationPeriodSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_proofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_prevStateRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_batchIndex\",\"type\":\"uint256\"}],\"name\":\"isBatchFinalized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"challengerAddress\",\"type\":\"address\"}],\"name\":\"isChallenger\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isChallenger\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1StakingContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastCommittedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastFinalizedBatchIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageQueue\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofRewardPercent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proofWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveRemaining\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_batchProof\",\"type\":\"bytes\"}],\"name\":\"proveState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeChallenger\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_batchHeader\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"revertBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"revertReqIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"setPause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newPeriod\",\"type\":\"uint256\"}],\"name\":\"updateFinalizePeriodSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newWindow\",\"type\":\"uint256\"}],\"name\":\"updateProofWindow\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newProofRewardPercent\",\"type\":\"uint256\"}],\"name\":\"updateRewardPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newVerifier\",\"type\":\"address\"}],\"name\":\"updateVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"withdrawalRoot\",\"type\":\"bytes32\"}],\"name\":\"withdrawalRoots\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"exist\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]", } - return b, nil -} +) type BatchData struct { blockContexts []byte l1TxHashes []byte + l1TxNum uint16 blockNum uint16 txsPayload []byte @@ -121,6 +49,7 @@ func (cks *BatchData) Append(blockContext, txsPayload []byte, l1TxHashes []commo for _, txHash := range l1TxHashes { cks.l1TxHashes = append(cks.l1TxHashes, txHash.Bytes()...) } + cks.l1TxNum += uint16(len(l1TxHashes)) } // Encode encodes the data into bytes @@ -160,10 +89,47 @@ func (cks *BatchData) DataHash() common.Hash { return crypto.Keccak256Hash(bz) } +// DataHashV2 computes the Keccak-256 hash of the batch data, incorporating +// the last block height, L1 transaction count, and L1 transaction hashes. +func (cks *BatchData) DataHashV2() (common.Hash, error) { + // Validate blockContexts length + if len(cks.blockContexts) < 60 { + return common.Hash{}, fmt.Errorf("blockContexts too short, length: %d", len(cks.blockContexts)) + } + + // Extract the last 60 bytes + lastBlockContext := cks.blockContexts[len(cks.blockContexts)-60:] + + // Parse block height + height, err := HeightFromBlockContextBytes(lastBlockContext) + if err != nil { + return common.Hash{}, fmt.Errorf("failed to parse blockContext: context length=%d, lastBlockContext=%x, err=%w", + len(cks.blockContexts), lastBlockContext, err) + } + + // Compute the hash + return cks.calculateHash(height), nil +} + +func (cks *BatchData) calculateHash(height uint64) common.Hash { + // Preallocate memory for efficiency + hashData := make([]byte, 8+2+len(cks.l1TxHashes)) // 8 bytes for height, 2 bytes for l1TxNum + copy(hashData[:8], Uint64ToBigEndianBytes(height)) + copy(hashData[8:10], Uint16ToBigEndianBytes(cks.l1TxNum)) + copy(hashData[10:], cks.l1TxHashes) + + return crypto.Keccak256Hash(hashData) +} + func (cks *BatchData) TxsPayload() []byte { return cks.txsPayload } +// TxsPayloadV2 returns the bytes combining the block contexts with the tx payload +func (cks *BatchData) TxsPayloadV2() []byte { + return append(cks.blockContexts, cks.txsPayload...) +} + func (cks *BatchData) BlockNum() uint16 { return cks.blockNum } func (cks *BatchData) EstimateCompressedSizeWithNewPayload(txPayload []byte) (bool, error) { @@ -177,3 +143,28 @@ func (cks *BatchData) EstimateCompressedSizeWithNewPayload(txPayload []byte) (bo } return len(compressed) > MaxBlobBytesSize, nil } + +func (cks *BatchData) combinePayloads(newBlockContext, newTxPayload []byte) []byte { + totalLength := len(cks.blockContexts) + len(newBlockContext) + len(cks.txsPayload) + len(newTxPayload) + combined := make([]byte, totalLength) + copy(combined, cks.blockContexts) + copy(combined[len(cks.blockContexts):], newBlockContext) + copy(combined[len(cks.blockContexts)+len(newBlockContext):], cks.txsPayload) + copy(combined[len(cks.blockContexts)+len(newBlockContext)+len(cks.txsPayload):], newTxPayload) + return combined +} + +// WillExceedCompressedSizeLimit checks if the size of the combined block contexts +// and transaction payloads (after compression) exceeds the maximum allowed size. +func (cks *BatchData) WillExceedCompressedSizeLimit(newBlockContext, newTxPayload []byte) (bool, error) { + // Combine the existing and new block contexts and transaction payloads + combinedBytes := cks.combinePayloads(newBlockContext, newTxPayload) + if len(combinedBytes) <= MaxBlobBytesSize { + return false, nil + } + compressed, err := zstd.CompressBatchBytes(combinedBytes) + if err != nil { + return false, fmt.Errorf("compression failed: %w", err) + } + return len(compressed) > MaxBlobBytesSize, nil +} diff --git a/node/types/batch_header.go b/node/types/batch_header.go new file mode 100644 index 000000000..d8832a7e8 --- /dev/null +++ b/node/types/batch_header.go @@ -0,0 +1,215 @@ +package types + +import ( + "encoding/binary" + "errors" + + "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/common/hexutil" + "github.com/morph-l2/go-ethereum/crypto" +) + +type ( + BatchHeaderBytes []byte +) + +const ( + expectedLengthV0 = 249 + expectedLengthV1 = 257 + + BatchHeaderVersion0 = 0 + BatchHeaderVersion1 = 1 +) + +var ( + ErrInvalidBatchHeaderLength = errors.New("invalid BatchHeaderBytes length") + ErrInvalidBatchHeaderVersion = errors.New("invalid BatchHeaderBytes version") + ErrEmptyBatchHeaderBytes = errors.New("empty BatchHeaderBytes") + ErrNotFoundInBatchHeader = errors.New("not found in BatchHeaderBytes") +) + +func (b BatchHeaderBytes) validate() error { + version, err := b.Version() + if err != nil { + return err + } + switch version { + case BatchHeaderVersion0: + if len(b) != expectedLengthV0 { + return ErrInvalidBatchHeaderLength + } + case BatchHeaderVersion1: + if len(b) != expectedLengthV1 { + return ErrInvalidBatchHeaderLength + } + default: + return ErrInvalidBatchHeaderVersion + } + return nil +} + +func (b BatchHeaderBytes) Bytes() []byte { + return b[:] +} + +func (b BatchHeaderBytes) Hash() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return crypto.Keccak256Hash(b), nil +} + +func (b BatchHeaderBytes) Version() (uint8, error) { + if len(b) == 0 { + return 0, ErrEmptyBatchHeaderBytes + } + return b[0], nil +} + +func (b BatchHeaderBytes) BatchIndex() (uint64, error) { + if err := b.validate(); err != nil { + return 0, err + } + return binary.BigEndian.Uint64(b[1:9]), nil +} + +func (b BatchHeaderBytes) L1MessagePopped() (uint64, error) { + if err := b.validate(); err != nil { + return 0, err + } + return binary.BigEndian.Uint64(b[9:17]), nil +} + +func (b BatchHeaderBytes) TotalL1MessagePopped() (uint64, error) { + if err := b.validate(); err != nil { + return 0, err + } + return binary.BigEndian.Uint64(b[17:25]), nil +} + +func (b BatchHeaderBytes) DataHash() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return common.BytesToHash(b[25:57]), nil +} + +func (b BatchHeaderBytes) BlobVersionedHash() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return common.BytesToHash(b[57:89]), nil +} + +func (b BatchHeaderBytes) PrevStateRoot() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return common.BytesToHash(b[89:121]), nil +} + +func (b BatchHeaderBytes) PostStateRoot() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return common.BytesToHash(b[121:153]), nil +} + +func (b BatchHeaderBytes) WithdrawalRoot() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return common.BytesToHash(b[153:185]), nil +} + +func (b BatchHeaderBytes) SequencerSetVerifyHash() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return common.BytesToHash(b[185:217]), nil +} + +func (b BatchHeaderBytes) ParentBatchHash() (common.Hash, error) { + if err := b.validate(); err != nil { + return common.Hash{}, err + } + return common.BytesToHash(b[217:249]), nil +} + +func (b BatchHeaderBytes) LastBlockNumber() (uint64, error) { + if err := b.validate(); err != nil { + return 0, err + } + version, _ := b.Version() + if version < 1 { + return 0, errors.New("LastBlockNumber is not available in version 0") + } + return binary.BigEndian.Uint64(b[249:257]), nil +} + +// structed batch header for version 0 +type BatchHeaderV0 struct { + BatchIndex uint64 + L1MessagePopped uint64 + TotalL1MessagePopped uint64 + DataHash common.Hash + BlobVersionedHash common.Hash + PrevStateRoot common.Hash + PostStateRoot common.Hash + WithdrawalRoot common.Hash + SequencerSetVerifyHash common.Hash + ParentBatchHash common.Hash + + //cache + EncodedBytes hexutil.Bytes +} + +func (b BatchHeaderV0) Bytes() BatchHeaderBytes { + if len(b.EncodedBytes) > 0 { + return BatchHeaderBytes(b.EncodedBytes) + } + batchBytes := make([]byte, expectedLengthV0) + batchBytes[0] = BatchHeaderVersion0 + binary.BigEndian.PutUint64(batchBytes[1:], b.BatchIndex) + binary.BigEndian.PutUint64(batchBytes[9:], b.L1MessagePopped) + binary.BigEndian.PutUint64(batchBytes[17:], b.TotalL1MessagePopped) + copy(batchBytes[25:], b.DataHash[:]) + copy(batchBytes[57:], b.BlobVersionedHash[:]) + copy(batchBytes[89:], b.PrevStateRoot[:]) + copy(batchBytes[121:], b.PostStateRoot[:]) + copy(batchBytes[153:], b.WithdrawalRoot[:]) + copy(batchBytes[185:], b.SequencerSetVerifyHash[:]) + copy(batchBytes[217:], b.ParentBatchHash[:]) + b.EncodedBytes = batchBytes + return batchBytes +} + +type BatchHeaderV1 struct { + BatchHeaderV0 + LastBlockNumber uint64 + + //cache + EncodedBytes hexutil.Bytes +} + +func (b BatchHeaderV1) Bytes() BatchHeaderBytes { + if len(b.EncodedBytes) > 0 { + return BatchHeaderBytes(b.EncodedBytes) + } + batchBytes := make([]byte, expectedLengthV1) + batchBytes[0] = BatchHeaderVersion1 + binary.BigEndian.PutUint64(batchBytes[1:], b.BatchIndex) + binary.BigEndian.PutUint64(batchBytes[9:], b.L1MessagePopped) + binary.BigEndian.PutUint64(batchBytes[17:], b.TotalL1MessagePopped) + copy(batchBytes[25:], b.DataHash[:]) + copy(batchBytes[57:], b.BlobVersionedHash[:]) + copy(batchBytes[89:], b.PrevStateRoot[:]) + copy(batchBytes[121:], b.PostStateRoot[:]) + copy(batchBytes[153:], b.WithdrawalRoot[:]) + copy(batchBytes[185:], b.SequencerSetVerifyHash[:]) + copy(batchBytes[217:], b.ParentBatchHash[:]) + binary.BigEndian.PutUint64(batchBytes[249:], b.LastBlockNumber) + + b.EncodedBytes = batchBytes + return batchBytes +} diff --git a/node/types/batch_test.go b/node/types/batch_test.go index 25dc43e36..97a3393e8 100644 --- a/node/types/batch_test.go +++ b/node/types/batch_test.go @@ -2,16 +2,15 @@ package types import ( "math/big" + "morph-l2/bindings/bindings" "testing" "github.com/morph-l2/go-ethereum/common" "github.com/stretchr/testify/require" - "github.com/tendermint/tendermint/libs/rand" ) func TestBatchHeader(t *testing.T) { - expectedBatchHeader := BatchHeader{ - Version: 0, + expectedBatchHeaderV0 := BatchHeaderV0{ BatchIndex: 10, L1MessagePopped: 5, TotalL1MessagePopped: 20, @@ -22,22 +21,62 @@ func TestBatchHeader(t *testing.T) { WithdrawalRoot: common.BigToHash(big.NewInt(103)), SequencerSetVerifyHash: common.BigToHash(big.NewInt(104)), ParentBatchHash: common.BigToHash(big.NewInt(200)), - SkippedL1MessageBitmap: rand.Bytes(10), } - bytes := expectedBatchHeader.Encode() + batchHeaderBytes := expectedBatchHeaderV0.Bytes() - decoded, err := DecodeBatchHeader(bytes) - require.NoError(t, err) - require.EqualValues(t, expectedBatchHeader.Version, decoded.Version) - require.EqualValues(t, expectedBatchHeader.BatchIndex, decoded.BatchIndex) - require.EqualValues(t, expectedBatchHeader.L1MessagePopped, decoded.L1MessagePopped) - require.EqualValues(t, expectedBatchHeader.TotalL1MessagePopped, decoded.TotalL1MessagePopped) - require.EqualValues(t, expectedBatchHeader.DataHash, decoded.DataHash) - require.EqualValues(t, expectedBatchHeader.BlobVersionedHash, decoded.BlobVersionedHash) - require.EqualValues(t, expectedBatchHeader.PrevStateRoot, decoded.PrevStateRoot) - require.EqualValues(t, expectedBatchHeader.PostStateRoot, decoded.PostStateRoot) - require.EqualValues(t, expectedBatchHeader.WithdrawalRoot, decoded.WithdrawalRoot) - require.EqualValues(t, expectedBatchHeader.SequencerSetVerifyHash, decoded.SequencerSetVerifyHash) - require.EqualValues(t, expectedBatchHeader.ParentBatchHash, decoded.ParentBatchHash) - require.EqualValues(t, expectedBatchHeader.SkippedL1MessageBitmap, decoded.SkippedL1MessageBitmap) + version, err := batchHeaderBytes.Version() + require.NoError(t, err) + batchIndex, err := batchHeaderBytes.BatchIndex() + require.NoError(t, err) + l1MessagePopped, err := batchHeaderBytes.L1MessagePopped() + require.NoError(t, err) + totalL1MessagePopped, err := batchHeaderBytes.TotalL1MessagePopped() + require.NoError(t, err) + dataHash, err := batchHeaderBytes.DataHash() + require.NoError(t, err) + blobVersionedHash, err := batchHeaderBytes.BlobVersionedHash() + require.NoError(t, err) + prevStateRoot, err := batchHeaderBytes.PrevStateRoot() + require.NoError(t, err) + postStateRoot, err := batchHeaderBytes.PostStateRoot() + require.NoError(t, err) + withdrawalRoot, err := batchHeaderBytes.WithdrawalRoot() + require.NoError(t, err) + sequencerSetVerifyHash, err := batchHeaderBytes.SequencerSetVerifyHash() + require.NoError(t, err) + parentBatchHash, err := batchHeaderBytes.ParentBatchHash() + require.NoError(t, err) + + require.EqualValues(t, 0, version) + require.EqualValues(t, expectedBatchHeaderV0.BatchIndex, batchIndex) + require.EqualValues(t, expectedBatchHeaderV0.L1MessagePopped, l1MessagePopped) + require.EqualValues(t, expectedBatchHeaderV0.TotalL1MessagePopped, totalL1MessagePopped) + require.EqualValues(t, expectedBatchHeaderV0.DataHash, dataHash) + require.EqualValues(t, expectedBatchHeaderV0.BlobVersionedHash, blobVersionedHash) + require.EqualValues(t, expectedBatchHeaderV0.PrevStateRoot, prevStateRoot) + require.EqualValues(t, expectedBatchHeaderV0.PostStateRoot, postStateRoot) + require.EqualValues(t, expectedBatchHeaderV0.WithdrawalRoot, withdrawalRoot) + require.EqualValues(t, expectedBatchHeaderV0.SequencerSetVerifyHash, sequencerSetVerifyHash) + require.EqualValues(t, expectedBatchHeaderV0.ParentBatchHash, parentBatchHash) + + expectedBatchHeaderV1 := BatchHeaderV1{ + BatchHeaderV0: expectedBatchHeaderV0, + LastBlockNumber: 1000, + }.Bytes() + version, err = expectedBatchHeaderV1.Version() + require.NoError(t, err) + lastBlockNumber, err := expectedBatchHeaderV1.LastBlockNumber() + require.NoError(t, err) + require.EqualValues(t, 1, version) + require.EqualValues(t, 1000, lastBlockNumber) +} + +func TestMethodID(t *testing.T) { + beforeSkipABI, err := LegacyRollupMetaData.GetAbi() + require.NoError(t, err) + beforeMoveBlockCtxABI, err := BeforeMoveBlockCtxABI.GetAbi() + require.NoError(t, err) + currentABI, err := bindings.RollupMetaData.GetAbi() + require.NoError(t, err) + require.NotEqualValues(t, beforeSkipABI.Methods["commitBatch"].ID, beforeMoveBlockCtxABI.Methods["commitBatch"].ID, currentABI.Methods["commitBatch"].ID) } diff --git a/node/types/blob.go b/node/types/blob.go index a6b86e26a..05070d7b3 100644 --- a/node/types/blob.go +++ b/node/types/blob.go @@ -110,6 +110,17 @@ func MakeBlobTxSidecar(blobBytes []byte) (*eth.BlobTxSidecar, error) { }, nil } +func CompressBatchBytes(batchBytes []byte) ([]byte, error) { + if len(batchBytes) == 0 { + return nil, nil + } + compressedBatchBytes, err := zstd.CompressBatchBytes(batchBytes) + if err != nil { + return nil, fmt.Errorf("failed to compress batch bytes, err: %w", err) + } + return compressedBatchBytes, nil +} + func EncodeTxsPayloadToBlob(batchBytes []byte) (*eth.BlobTxSidecar, error) { if len(batchBytes) == 0 { return MakeBlobTxSidecar(batchBytes) @@ -238,6 +249,150 @@ func DecodeTxsFromBlob(blob *kzg4844.Blob) (eth.Transactions, error) { return txs, nil } +func DecodeBlocksFromBlob(blob *kzg4844.Blob) (eth.Transactions, error) { + if isEmptyBlob(blob) { + return eth.Transactions{}, nil + } + data, err := RetrieveBlobBytes(blob) + if err != nil { + return nil, err + } + batchBytes, err := zstd.DecompressBatchBytes(data) + if err != nil { + return nil, err + } + reader := bytes.NewReader(batchBytes) + txs := make(eth.Transactions, 0) + for { + var ( + firstByte byte + fullTxBytes []byte + innerTx eth.TxData + err error + ) + if err = binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + // if the blob byte array is completely consumed, then break the loop + if err == io.EOF { + break + } + return nil, err + } + // zero byte is found after valid tx bytes, break the loop + if firstByte == 0 { + break + } + + switch firstByte { + case eth.AccessListTxType: + if err := binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + return nil, err + } + innerTx = new(eth.AccessListTx) + case eth.DynamicFeeTxType: + if err := binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + return nil, err + } + innerTx = new(eth.DynamicFeeTx) + default: + if firstByte <= 0xf7 { // legacy tx first byte must be greater than 0xf7(247) + return nil, fmt.Errorf("not supported tx type: %d", firstByte) + } + innerTx = new(eth.LegacyTx) + } + + // we support the tx types of LegacyTxType/AccessListTxType/DynamicFeeTxType + //if firstByte == eth.AccessListTxType || firstByte == eth.DynamicFeeTxType { + // // the firstByte here is used to indicate tx type, so skip it + // if err := binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + // return nil, err + // } + //} else if firstByte <= 0xf7 { // legacy tx first byte must be greater than 0xf7(247) + // return nil, fmt.Errorf("not supported tx type: %d", firstByte) + //} + fullTxBytes, err = extractInnerTxFullBytes(firstByte, reader) + if err != nil { + return nil, err + } + if err = rlp.DecodeBytes(fullTxBytes, innerTx); err != nil { + return nil, err + } + txs = append(txs, eth.NewTx(innerTx)) + } + return txs, nil +} + +func DecodeTxsFromBytes(txsBytes []byte) (eth.Transactions, error) { + //if isEmptyBlob(blob) { + // return eth.Transactions{}, nil + //} + //data, err := RetrieveBlobBytes(blob) + //if err != nil { + // return nil, err + //} + //batchBytes, err := zstd.DecompressBatchBytes(data) + //if err != nil { + // return nil, err + //} + reader := bytes.NewReader(txsBytes) + txs := make(eth.Transactions, 0) + for { + var ( + firstByte byte + fullTxBytes []byte + innerTx eth.TxData + err error + ) + if err = binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + // if the blob byte array is completely consumed, then break the loop + if err == io.EOF { + break + } + return nil, err + } + // zero byte is found after valid tx bytes, break the loop + if firstByte == 0 { + break + } + + switch firstByte { + case eth.AccessListTxType: + if err := binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + return nil, err + } + innerTx = new(eth.AccessListTx) + case eth.DynamicFeeTxType: + if err := binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + return nil, err + } + innerTx = new(eth.DynamicFeeTx) + default: + if firstByte <= 0xf7 { // legacy tx first byte must be greater than 0xf7(247) + return nil, fmt.Errorf("not supported tx type: %d", firstByte) + } + innerTx = new(eth.LegacyTx) + } + + // we support the tx types of LegacyTxType/AccessListTxType/DynamicFeeTxType + //if firstByte == eth.AccessListTxType || firstByte == eth.DynamicFeeTxType { + // // the firstByte here is used to indicate tx type, so skip it + // if err := binary.Read(reader, binary.BigEndian, &firstByte); err != nil { + // return nil, err + // } + //} else if firstByte <= 0xf7 { // legacy tx first byte must be greater than 0xf7(247) + // return nil, fmt.Errorf("not supported tx type: %d", firstByte) + //} + fullTxBytes, err = extractInnerTxFullBytes(firstByte, reader) + if err != nil { + return nil, err + } + if err = rlp.DecodeBytes(fullTxBytes, innerTx); err != nil { + return nil, err + } + txs = append(txs, eth.NewTx(innerTx)) + } + return txs, nil +} + func isEmptyBlob(blob *kzg4844.Blob) bool { for _, b := range blob { if b != 0 { diff --git a/node/types/consensus_message.go b/node/types/consensus_message.go index 1fdbe491d..94742380b 100644 --- a/node/types/consensus_message.go +++ b/node/types/consensus_message.go @@ -3,6 +3,7 @@ package types import ( "bytes" "encoding/binary" + "fmt" "math/big" "github.com/morph-l2/go-ethereum/common" @@ -145,3 +146,26 @@ func (wb *WrappedBlock) DecodeBlockContext(bc []byte) (uint16, uint16, error) { } return txsNum, l1MsgNum, nil } + +func WrappedBlockFromBytes(blockBytes []byte) (*WrappedBlock, error) { + var curBlock = new(WrappedBlock) + if err := curBlock.UnmarshalBinary(blockBytes); err != nil { + return nil, err + } + return curBlock, nil +} + +func HeightFromBlockBytes(blockBytes []byte) (uint64, error) { + curBlock, err := WrappedBlockFromBytes(blockBytes) + if err != nil { + return 0, err + } + return curBlock.Number, nil +} + +func HeightFromBlockContextBytes(blockContextBytes []byte) (uint64, error) { + if len(blockContextBytes) != 60 { + return 0, fmt.Errorf("wrong block context bytes length, input: %x", blockContextBytes) + } + return binary.BigEndian.Uint64(blockContextBytes[:8]), nil +} diff --git a/node/types/retryable_client.go b/node/types/retryable_client.go index cf874ab81..3d3ad949d 100644 --- a/node/types/retryable_client.go +++ b/node/types/retryable_client.go @@ -3,6 +3,7 @@ package types import ( "context" "math/big" + "strings" "github.com/cenkalti/backoff/v4" "github.com/morph-l2/go-ethereum" @@ -15,13 +16,14 @@ import ( ) const ( - ConnectionRefused = "connection refused" - EOFError = "EOF" - JWTStaleToken = "stale token" - JWTExpiredToken = "token is expired" - MinerClosed = "miner closed" - ExecutionAborted = "execution aborted" - Timeout = "timed out" + ConnectionRefused = "connection refused" + EOFError = "EOF" + JWTStaleToken = "stale token" + JWTExpiredToken = "token is expired" + MinerClosed = "miner closed" + ExecutionAborted = "execution aborted" + Timeout = "timed out" + DiscontinuousBlockError = "discontinuous block number" ) type RetryableClient struct { @@ -220,7 +222,7 @@ func (rc *RetryableClient) CodeAt(ctx context.Context, contract common.Address, return } -// currently we want every error retryable +// currently we want every error retryable, except the DiscontinuousBlockError func retryableError(err error) bool { // return strings.Contains(err.Error(), ConnectionRefused) || // strings.Contains(err.Error(), EOFError) || @@ -229,5 +231,5 @@ func retryableError(err error) bool { // strings.Contains(err.Error(), MinerClosed) || // strings.Contains(err.Error(), ExecutionAborted) || // strings.Contains(err.Error(), Timeout) - return true + return !strings.Contains(err.Error(), DiscontinuousBlockError) } diff --git a/node/validator/config.go b/node/validator/config.go index 3d36fe9af..986fd16d5 100644 --- a/node/validator/config.go +++ b/node/validator/config.go @@ -27,18 +27,20 @@ func NewConfig() *Config { func (c *Config) SetCliContext(ctx *cli.Context) error { l1NodeAddr := ctx.GlobalString(flags.L1NodeAddr.Name) l1ChainID := ctx.GlobalUint64(flags.L1ChainID.Name) - hexPrvKey := ctx.GlobalString(flags.ValidatorPrivateKey.Name) - hex := strings.TrimPrefix(hexPrvKey, "0x") - privateKey, err := crypto.HexToECDSA(hex) - if err != nil { - return err + c.challengeEnable = ctx.GlobalBool(flags.ChallengeEnable.Name) + if c.challengeEnable { + hexPrvKey := ctx.GlobalString(flags.ValidatorPrivateKey.Name) + hex := strings.TrimPrefix(hexPrvKey, "0x") + privateKey, err := crypto.HexToECDSA(hex) + if err != nil { + return err + } + c.PrivateKey = privateKey } - c.challengeEnable = ctx.GlobalIsSet(flags.ValidatorEnable.Name) addrHex := ctx.GlobalString(flags.RollupContractAddress.Name) rollupContract := common.HexToAddress(addrHex) c.l1RPC = l1NodeAddr c.L1ChainID = big.NewInt(int64(l1ChainID)) - c.PrivateKey = privateKey c.rollupContract = rollupContract return nil } diff --git a/node/validator/validator.go b/node/validator/validator.go index 627123c4e..224c8c3d8 100644 --- a/node/validator/validator.go +++ b/node/validator/validator.go @@ -38,11 +38,12 @@ func NewValidator(cfg *Config, rollup *bindings.Rollup, logger tmlog.Logger) (*V return nil, fmt.Errorf("dial l1 node error:%v", err) } return &Validator{ - cli: cli, - contract: rollup, - privateKey: cfg.PrivateKey, - l1ChainID: cfg.L1ChainID, - logger: logger, + cli: cli, + contract: rollup, + privateKey: cfg.PrivateKey, + l1ChainID: cfg.L1ChainID, + challengeEnable: cfg.challengeEnable, + logger: logger, }, nil } @@ -68,13 +69,6 @@ func (v *Validator) ChallengeState(batchIndex uint64) error { } opts.GasPrice = gasPrice opts.NoSend = true - //publicKey := v.privateKey.Public() - // publicKeyECDSA, ok := publicKey.(*ecdsa.PublicKey) - // if !ok { - // log.Error("cannot assert type: publicKey is not of type *ecdsa.PublicKey") - // } - - //receiver := crypto.PubkeyToAddress(*publicKeyECDSA) batchHash, err := v.contract.CommittedBatches( &bind.CallOpts{ Pending: false, diff --git a/ops/devnet-morph/devnet/__init__.py b/ops/devnet-morph/devnet/__init__.py index 62e5504f7..061c35350 100644 --- a/ops/devnet-morph/devnet/__init__.py +++ b/ops/devnet-morph/devnet/__init__.py @@ -83,8 +83,8 @@ def devnet_l1(paths, result=None): }) wait_up(9545) wait_for_rpc_server('127.0.0.1:9545') - log.info('Sleep another 20s...') - time.sleep(20) + log.info('Sleep another 10s...') + time.sleep(10) res = eth_accounts('127.0.0.1:9545') response = json.loads(res) account = response['result'][0] @@ -135,7 +135,7 @@ def devnet_deploy(paths, args): 'yarn', 'build' ], env={}, cwd=paths.contracts_dir) run_command([ - 'npx', 'hardhat', 'deploy', '--network', 'l1', '--storagepath', paths.deployment_dir + 'npx', 'hardhat', 'deploy', '--network', 'l1', '--storagepath', paths.deployment_dir, '--concurrent', 'true' ], env={}, cwd=paths.contracts_dir) log.info('Generating L2 genesis and rollup configs.') @@ -171,7 +171,7 @@ def devnet_deploy(paths, args): modified_line = re.sub(pattern3, f"batchHeader: '{genesis_batch_header}'", line) print(modified_line, end='') run_command([ - 'npx', 'hardhat', 'initialize', '--network', 'l1', '--storagepath', paths.deployment_dir + 'npx', 'hardhat', 'initialize', '--network', 'l1', '--storagepath', paths.deployment_dir, '--concurrent', 'true' ], env={}, cwd=paths.contracts_dir) # run_command([ @@ -229,7 +229,7 @@ def devnet_deploy(paths, args): run_command(['docker', 'compose', '-f', 'docker-compose-4nodes.yml', 'up', - '-d'], check=False, cwd=paths.ops_dir, + '--no-recreate','-d'], check=False, cwd=paths.ops_dir, env={ 'MORPH_PORTAL': addresses['Proxy__L1MessageQueueWithGasPriceOracle'], 'MORPH_ROLLUP': addresses['Proxy__Rollup'], diff --git a/ops/devnet-morph/devnet/setup_nodes.py b/ops/devnet-morph/devnet/setup_nodes.py new file mode 100644 index 000000000..d47a6c61f --- /dev/null +++ b/ops/devnet-morph/devnet/setup_nodes.py @@ -0,0 +1,121 @@ +import os +import shutil +import subprocess +import sys +import re + +def setup_devnet_nodes(): + """ + Set up the devnet nodes, modify configuration files using toml library, and copy key files. + """ + root_dir = subprocess.check_output(["git", "rev-parse", "--show-toplevel"], text=True).strip() + # Check if Tendermint is installed + if shutil.which("tendermint") is None: + print("Tendermint is not installed. Starting the build process...") + node_dir = os.path.join(root_dir, "node") + ops_dir = os.path.join(root_dir, "ops", "docker") + + if not os.path.isdir(node_dir): + print(f"Error: Node directory not found at {node_dir}. Exiting.") + sys.exit(1) + + os.chdir(node_dir) + print(f"Building Tendermint in {node_dir}...") + if subprocess.call(["make", "install-tendermint"]) != 0: + print("Error: Failed to build Tendermint. Exiting.") + sys.exit(1) + + os.chdir(ops_dir) + print("Tendermint build process completed.") + + # Check if .devnet directory already exists + docker_dir = os.path.join(root_dir, "ops", "docker") + devnet_dir = os.path.join(docker_dir, ".devnet") + if os.path.exists(devnet_dir): + print(".devnet directory already exists. Devnet nodes setup has already been completed. Exiting.") + return + + # Run the Tendermint testnet command + print("Setting up the devnet...") + command = [ + "tendermint", "testnet", "--v", "4", "--n", "1", "--o", devnet_dir, + "--populate-persistent-peers", + "--hostname", "node-0", + "--hostname", "node-1", + "--hostname", "node-2", + "--hostname", "node-3", + "--hostname", "sentry-node-0" + ] + + if subprocess.call(command) != 0: + print("Failed to set up devnet.") + sys.exit(1) + + # Modify config.toml files using toml library + print("Modifying config.toml files...") + config_files = [ + os.path.join(devnet_dir, f"node{i}/config/config.toml") for i in range(5) + ] + + persistent_peers_value = ( + "93e27ea2306e158a8146d5f44caaab97496797d2@node-0:26656," + "7f78b7d7a7e6bad4faf68d5731d437f4288d96d0@node-1:26656," + "06c699be2f9aeb9f7ec79f508a95ff80576deb12@node-2:26656," + "b1a131f40d5d3abefe0dd787513c936ef62ac2d6@node-3:26656," + "dae813274913aaf39e7cd3226a0aa8bce00644e1@sentry-node-0:26656" + ) + + for i, config_file in enumerate(config_files): + if not os.path.isfile(config_file): + print(f"Error: {config_file} not found. Exiting.") + sys.exit(1) + + with open(config_file, "r") as f: + content = f.read() + + # Replace the required fields + content = content.replace('create_empty_blocks_interval = "0s"', 'create_empty_blocks_interval = "5s"') + content = content.replace('peer_gossip_sleep_duration = "100ms"', 'peer_gossip_sleep_duration = "10ms"') + content = content.replace('flush_throttle_timeout = "100ms"', 'flush_throttle_timeout = "10ms"') + content = content.replace('max_packet_msg_payload_size = 1024', 'max_packet_msg_payload_size = 10485760') + content = content.replace('send_rate = 5120000', 'send_rate = 52428800') + content = content.replace('recv_rate = 5120000', 'recv_rate = 102428800') + content = content.replace('block_sync = false', 'block_sync = true') + content = re.sub(r'persistent_peers\s*=\s*".*?"', f'persistent_peers = "{persistent_peers_value}"', content) + + # Modify pex for nodes 0 to 3 + if i < 4: + content = content.replace('pex = true', 'pex = false') + + with open(config_file, "w") as f: + f.write(content) + + print("All config.toml files have been updated successfully.") + + # Copy key files to devnet node directories + print("Copying key files...") + node_dirs = [f"node{i}" for i in range(5)] + + for node in node_dirs: + source_dir = os.path.join(docker_dir, node) + dest_dir = os.path.join(devnet_dir, node, "config") + + if not os.path.isdir(source_dir) or not os.path.isdir(dest_dir): + print(f"Error: Missing source or destination directory for {node}. Exiting.") + sys.exit(1) + + # Copy specific files + shutil.copyfile(os.path.join(source_dir, "node_key.json"), os.path.join(dest_dir, "node_key.json")) + + # Skip copying for node4 bls_key.json and priv_validator_key.json + if node != "node4": + shutil.copyfile(os.path.join(source_dir, "bls_key.json"), os.path.join(dest_dir, "bls_key.json")) + shutil.copyfile(os.path.join(source_dir, "priv_validator_key.json"), os.path.join(dest_dir, "priv_validator_key.json")) + + # Copy and rename genesis file + shutil.copyfile(os.path.join(docker_dir, "tendermint-devnet-genesis.json"), os.path.join(dest_dir, "genesis.json")) + + print(f"Files copied successfully for {node}.") + + print("All key files have been copied successfully.") + print("Devnet nodes setup completed successfully.") diff --git a/ops/devnet-morph/main.py b/ops/devnet-morph/main.py index 20cc1cb6d..b773b50eb 100644 --- a/ops/devnet-morph/main.py +++ b/ops/devnet-morph/main.py @@ -1,7 +1,9 @@ import devnet +from devnet.setup_nodes import setup_devnet_nodes def main(): + setup_devnet_nodes() devnet.main() diff --git a/ops/docker/Dockerfile.l2-node b/ops/docker/Dockerfile.l2-node new file mode 100644 index 000000000..eab8377ee --- /dev/null +++ b/ops/docker/Dockerfile.l2-node @@ -0,0 +1,25 @@ +# Build Stage +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu as builder + +# Set working directory and copy necessary files +COPY . /morph +WORKDIR /morph/node + +# Run build command +RUN make build + +# Final Stage +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu + +# Update and install dependencies, then clean up unnecessary files +RUN apt-get -qq update \ + && apt-get -qq install -y --no-install-recommends ca-certificates \ + && rm -rf /var/lib/apt/lists/* + +# Copy the built binaries from the builder image to the final image +COPY --from=builder /morph/node/build/bin/tendermint /usr/local/bin/ +COPY --from=builder /morph/node/build/bin/morphnode /usr/local/bin/ + +# Set the default command +CMD ["morphnode", "--home", "/data"] + diff --git a/ops/docker/Dockerfile.l2-node-1 b/ops/docker/Dockerfile.l2-node-1 index 4ef95807d..0e86e94cd 100644 --- a/ops/docker/Dockerfile.l2-node-1 +++ b/ops/docker/Dockerfile.l2-node-1 @@ -1,5 +1,5 @@ # Build Geth in a stock Go builder container -FROM morph/go-ubuntu-builder:go-1.22-ubuntu as builder +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu as builder COPY . /morph WORKDIR /morph/node RUN make build diff --git a/ops/docker/Dockerfile.l2-node-4 b/ops/docker/Dockerfile.l2-node-4 index bbcc23c1b..40b0119a2 100644 --- a/ops/docker/Dockerfile.l2-node-4 +++ b/ops/docker/Dockerfile.l2-node-4 @@ -1,5 +1,5 @@ # Build Geth in a stock Go builder container -FROM morph/go-ubuntu-builder:go-1.22-ubuntu as builder +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu as builder RUN apt-get -qq update \ && apt-get -qq install -y --no-install-recommends ca-certificates COPY . /morph diff --git a/ops/docker/Dockerfile.staking-oracle b/ops/docker/Dockerfile.staking-oracle index 4354c5687..5d78373ee 100644 --- a/ops/docker/Dockerfile.staking-oracle +++ b/ops/docker/Dockerfile.staking-oracle @@ -1,18 +1,18 @@ -# Build Geth in a stock Go builder container -FROM morph/go-ubuntu-builder:go-1.22-ubuntu as builder - -# RUN apk add --no-cache gcc musl-dev linux-headers git make +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu as builder +# Copy source code and build application COPY . /morph - WORKDIR /morph/oracle - RUN make build -# Pull Geth into a second stage deploy alpine container -FROM builder +# Deploy stage using the same base image (morph/go-ubuntu-builder:go-1.22-ubuntu) +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu + +# Install only necessary dependencies (e.g., ca-certificates for networking) +RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates && rm -rf /var/lib/apt/lists/* -# RUN apk add --no-cache ca-certificates +# Copy the built binary from the builder stage COPY --from=builder /morph/oracle/build/bin/staking-oracle /usr/local/bin/ +# Set the default command to run the staking oracle CMD ["staking-oracle"] \ No newline at end of file diff --git a/ops/docker/Dockerfile.submitter b/ops/docker/Dockerfile.submitter index 726530c23..5d84686ad 100644 --- a/ops/docker/Dockerfile.submitter +++ b/ops/docker/Dockerfile.submitter @@ -1,5 +1,5 @@ # Build Geth in a stock Go builder container -FROM morph/go-ubuntu-builder:go-1.22-ubuntu as builder +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu as builder COPY . /morph @@ -8,7 +8,7 @@ WORKDIR /morph/tx-submitter RUN make build # Pull Geth into a second stage deploy alpine container -FROM morph/go-ubuntu-builder:go-1.22-ubuntu +FROM ghcr.io/morph-l2/go-ubuntu-builder:go-1.22-ubuntu RUN apt-get -qq update \ && apt-get -qq install -y --no-install-recommends ca-certificates diff --git a/ops/docker/docker-compose-4nodes.yml b/ops/docker/docker-compose-4nodes.yml index cfdf27369..152bab54e 100644 --- a/ops/docker/docker-compose-4nodes.yml +++ b/ops/docker/docker-compose-4nodes.yml @@ -225,11 +225,10 @@ services: depends_on: morph-geth-0: condition: service_started - image: morph-node-0:latest + image: morph-node:latest build: context: ../.. - dockerfile: ops/docker/Dockerfile.l2-node-4 - target: node0 + dockerfile: ops/docker/Dockerfile.l2-node restart: unless-stopped ports: - "26656" @@ -246,7 +245,7 @@ services: - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - - "node_data_0:${NODE_DATA_DIR}" + - ".devnet/node0:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" command: > morphnode @@ -255,15 +254,9 @@ services: node-1: container_name: node-1 depends_on: - morph-geth-1: - condition: service_started node-0: condition: service_started - image: morph-node-1:latest - build: - context: ../.. - dockerfile: ops/docker/Dockerfile.l2-node-4 - target: node1 + image: morph-node:latest restart: unless-stopped ports: - "26656" @@ -280,7 +273,7 @@ services: - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - - "node_data_1:${NODE_DATA_DIR}" + - ".devnet/node1:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" command: > morphnode @@ -289,15 +282,9 @@ services: node-2: container_name: node-2 depends_on: - morph-geth-2: - condition: service_started node-0: condition: service_started - image: morph-node-2:latest - build: - context: ../.. - dockerfile: ops/docker/Dockerfile.l2-node-4 - target: node2 + image: morph-node:latest restart: unless-stopped ports: - "26656" @@ -315,7 +302,7 @@ services: - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - - "node_data_2:${NODE_DATA_DIR}" + - ".devnet/node2:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" command: > morphnode @@ -324,15 +311,9 @@ services: node-3: container_name: node-3 depends_on: - morph-geth-3: - condition: service_started node-0: condition: service_started - image: morph-node-3:latest - build: - context: ../.. - dockerfile: ops/docker/Dockerfile.l2-node-4 - target: node3 + image: morph-node:latest restart: unless-stopped ports: - "26656" @@ -350,7 +331,7 @@ services: - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} - MORPH_NODE_UPGRADE_BATCH_TIME=${BATCH_UPGRADE_TIME} volumes: - - "node_data_3:${NODE_DATA_DIR}" + - ".devnet/node3:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" command: > morphnode @@ -384,13 +365,9 @@ services: sentry-node-0: container_name: sentry-node-0 depends_on: - sentry-geth-0: + node-0: condition: service_started - image: sentry-node-0:latest - build: - context: ../.. - dockerfile: ops/docker/Dockerfile.l2-node-4 - target: sentry0 + image: morph-node:latest restart: unless-stopped ports: - "26656" @@ -407,7 +384,7 @@ services: - MORPH_NODE_L1_CONFIRMATIONS=0 - MORPH_NODE_SYNC_START_HEIGHT=${MORPH_NODE_SYNC_START_HEIGHT:-1} volumes: - - "sentry_node_data:${NODE_DATA_DIR}" + - ".devnet/node4:${NODE_DATA_DIR}" - "${PWD}/jwt-secret.txt:${JWT_SECRET_PATH}" command: > morphnode @@ -442,9 +419,8 @@ services: depends_on: validator_geth: condition: service_started - build: - context: ../.. - dockerfile: ops/docker/Dockerfile.l2-node-1 + node-0: + condition: service_started image: morph-node:latest ports: - "26660" diff --git a/ops/l2-genesis/cmd/genesis/cmd.go b/ops/l2-genesis/cmd/genesis/cmd.go index 30f249e54..aac68d399 100644 --- a/ops/l2-genesis/cmd/genesis/cmd.go +++ b/ops/l2-genesis/cmd/genesis/cmd.go @@ -115,11 +115,11 @@ var Subcommands = cli.Commands{ if err != nil { return err } - fmt.Printf("generated genesis batch header bytes: %x \n", genesisBatchHeader.Encode()) + fmt.Printf("generated genesis batch header bytes: %x \n", genesisBatchHeader.Bytes()) if err := writeGenesisFile(genBatchHeaderFile, genesisBatchHeader); err != nil { return err } - genesisBatchHeaderBytes = genesisBatchHeader.EncodedBytes + genesisBatchHeaderBytes = genesisBatchHeader.Bytes() } rollupConfig, err := config.RollupConfig(l1StartBlock, l2GenesisBlockHash, l2GenesisBlock.Number().Uint64(), l2GenesisBlock.Root(), withdrawRoot, genesisBatchHeaderBytes) diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index 825c52258..baee14bf0 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -2,11 +2,11 @@ module morph-l2/morph-deployer go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 require ( github.com/holiman/uint256 v1.2.4 - github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 + github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c github.com/stretchr/testify v1.9.0 github.com/urfave/cli v1.22.14 ) diff --git a/ops/l2-genesis/go.sum b/ops/l2-genesis/go.sum index 89fef170b..e8a16264d 100644 --- a/ops/l2-genesis/go.sum +++ b/ops/l2-genesis/go.sum @@ -143,8 +143,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go b/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go index 8ce0e6ae8..56f945ac7 100644 --- a/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go +++ b/ops/l2-genesis/morph-chain-ops/genesis/layer_two_test.go @@ -80,5 +80,5 @@ func Test_BuildL2DeveloperGenesis(t *testing.T) { l2GenesisBlock := l2Genesis.ToBlock(nil) genesisBatchHeader, err := node.GenesisBatchHeader(l2GenesisBlock.Header()) require.NoError(t, err) - t.Logf("generated genesis batch header bytes: %x \n", genesisBatchHeader.Encode()) + t.Logf("generated genesis batch header bytes: %x \n", genesisBatchHeader.Bytes()) } diff --git a/ops/tools/batchparse/main.go b/ops/tools/batchparse/main.go index 3b1b9a441..429756a1d 100644 --- a/ops/tools/batchparse/main.go +++ b/ops/tools/batchparse/main.go @@ -3,9 +3,10 @@ package main import ( "context" "fmt" - "morph-l2/node/derivation" "github.com/morph-l2/go-ethereum/ethclient" + + "morph-l2/node/derivation" ) var ( diff --git a/ops/tools/go.mod b/ops/tools/go.mod index 03d792dca..348b937a5 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -2,10 +2,10 @@ module morph-l2/tools go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 require ( - github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 + github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c github.com/tendermint/tendermint v0.35.9 ) diff --git a/ops/tools/go.sum b/ops/tools/go.sum index 9c77f156b..22b9bac33 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -163,10 +163,10 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= -github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/tools/multisend/main.go b/ops/tools/multisend/main.go index 672542790..c32653651 100644 --- a/ops/tools/multisend/main.go +++ b/ops/tools/multisend/main.go @@ -46,7 +46,7 @@ func main() { start := time.Now() var count int for { - if count == 10000000 || time.Now().Sub(start) > duration { + if count == 10000000 || time.Since(start) > duration { fmt.Println("completed") break } diff --git a/oracle/go.mod b/oracle/go.mod index e46d4c178..5622af61e 100644 --- a/oracle/go.mod +++ b/oracle/go.mod @@ -2,12 +2,12 @@ module morph-l2/oracle go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.1 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 require ( github.com/go-kit/kit v0.12.0 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 + github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/oracle/go.sum b/oracle/go.sum index 789b3014f..d087a3498 100644 --- a/oracle/go.sum +++ b/oracle/go.sum @@ -175,10 +175,10 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= -github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/oracle/oracle/batch.go b/oracle/oracle/batch.go index 4270bc117..2384637c9 100644 --- a/oracle/oracle/batch.go +++ b/oracle/oracle/batch.go @@ -10,6 +10,7 @@ import ( "morph-l2/bindings/bindings" "morph-l2/node/derivation" + nodetypes "morph-l2/node/types" "morph-l2/oracle/backoff" "github.com/morph-l2/go-ethereum/accounts/abi/bind" @@ -154,13 +155,29 @@ func (o *Oracle) getBatchSubmissionByLogs(rLogs []types.Log, recordBatchSubmissi WithdrawalRoot [32]uint8 "json:\"withdrawalRoot\"" }) batch = eth.RPCRollupBatch{ - Version: uint(rollupBatchData.Version), - ParentBatchHeader: rollupBatchData.ParentBatchHeader, - BlockContexts: rollupBatchData.BlockContexts, - SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, - PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), - PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), - WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + Version: uint(rollupBatchData.Version), + ParentBatchHeader: rollupBatchData.ParentBatchHeader, + BlockContexts: rollupBatchData.BlockContexts, + //SkippedL1MessageBitmap: rollupBatchData.SkippedL1MessageBitmap, + PrevStateRoot: common.BytesToHash(rollupBatchData.PrevStateRoot[:]), + PostStateRoot: common.BytesToHash(rollupBatchData.PostStateRoot[:]), + WithdrawRoot: common.BytesToHash(rollupBatchData.WithdrawalRoot[:]), + } + parentBatchHeader := nodetypes.BatchHeaderBytes(batch.ParentBatchHeader) + parentVersion, err := parentBatchHeader.Version() + if err != nil { + return fmt.Errorf("decode parent batch version error:%v", err) + } + if batch.Version == 1 && parentVersion == 0 { + parentBatchIndex, err := parentBatchHeader.BatchIndex() + if err != nil { + return fmt.Errorf("decode parent batch index error:%v", err) + } + parentBatch, err := o.l2Client.GetRollupBatchByIndex(o.ctx, parentBatchIndex) + if err != nil { + return fmt.Errorf("get parent batch error:%v", err) + } + batch.Sidecar = parentBatch.Sidecar } } else { continue diff --git a/prover/Cargo.lock b/prover/Cargo.lock index 0aeae50ff..bca962086 100644 --- a/prover/Cargo.lock +++ b/prover/Cargo.lock @@ -5095,7 +5095,7 @@ dependencies = [ [[package]] name = "revm" version = "14.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#91f2d1a886e60c40b13ec178f3160001c71c0912" dependencies = [ "auto_impl", "cfg-if 1.0.0", @@ -5109,7 +5109,7 @@ dependencies = [ [[package]] name = "revm-interpreter" version = "10.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#91f2d1a886e60c40b13ec178f3160001c71c0912" dependencies = [ "cfg-if 1.0.0", "revm-primitives", @@ -5119,7 +5119,7 @@ dependencies = [ [[package]] name = "revm-precompile" version = "11.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#91f2d1a886e60c40b13ec178f3160001c71c0912" dependencies = [ "aurora-engine-modexp", "c-kzg", @@ -5136,7 +5136,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "9.0.0" -source = "git+https://github.com/morph-l2/revm?branch=release/v42#028eb309a053bfcc1c7fd14b4cf623c0821e6c96" +source = "git+https://github.com/morph-l2/revm?branch=release/v42#91f2d1a886e60c40b13ec178f3160001c71c0912" dependencies = [ "alloy-eips", "alloy-primitives 0.8.0", diff --git a/prover/Cargo.toml b/prover/Cargo.toml index 24401aab0..1c27113c9 100644 --- a/prover/Cargo.toml +++ b/prover/Cargo.toml @@ -24,11 +24,6 @@ license = "MIT OR Apache-2.0" homepage = "https://github.com/morph-l2/morph/tree/main/prover" repository = "https://github.com/morph-l2/morph/tree/main/prover" - - - - - [workspace.dependencies] alloy ={ version ="0.3"} hex = "0.4" diff --git a/prover/README.md b/prover/README.md index 813c0b4c1..b8a2b718b 100644 --- a/prover/README.md +++ b/prover/README.md @@ -26,7 +26,7 @@ To build the program to risc-v bin: ```sh cd bin/client cargo prove build - +``` This will output the compiled ELF to the file program/elf/riscv32im-succinct-zkvm-elf. diff --git a/prover/bin/challenge/src/abi/Rollup.json b/prover/bin/challenge/src/abi/Rollup.json index dc4c9bba6..28f7a5c6d 100644 --- a/prover/bin/challenge/src/abi/Rollup.json +++ b/prover/bin/challenge/src/abi/Rollup.json @@ -15,16 +15,6 @@ "name": "ErrZeroAddress", "type": "error" }, - { - "inputs": [], - "name": "ErrorIncorrectBatchLength", - "type": "error" - }, - { - "inputs": [], - "name": "ErrorNoBlockInBatch", - "type": "error" - }, { "anonymous": false, "inputs": [ @@ -619,9 +609,14 @@ "type": "bytes" }, { - "internalType": "bytes", - "name": "blockContexts", - "type": "bytes" + "internalType": "uint64", + "name": "lastBlockNumber", + "type": "uint64" + }, + { + "internalType": "uint16", + "name": "numL1Messages", + "type": "uint16" }, { "internalType": "bytes32", diff --git a/prover/bin/challenge/src/handler.rs b/prover/bin/challenge/src/handler.rs index dc40a1407..cdb8ea429 100644 --- a/prover/bin/challenge/src/handler.rs +++ b/prover/bin/challenge/src/handler.rs @@ -1,4 +1,4 @@ -use crate::abi::rollup_abi::{CommitBatchCall, Rollup, RollupErrors}; +use crate::abi::rollup_abi::{CommitBatchCall, Rollup}; use crate::external_sign::ExternalSign; use crate::metrics::METRICS; use crate::util::read_env_var; @@ -152,7 +152,7 @@ impl ChallengeHandler { None => continue, }; - let mut batch_info = match batch_inspect(l1_provider, challenged_rollup_hash).await { + let mut batch_info = match batch_inspect(l1_rollup, l1_provider, batch_index, challenged_rollup_hash).await { Some(mut b) => { b.batch_index = batch_index; b.parent_batch_hash = batch_hash.as_bytes().try_into().unwrap_or_default(); @@ -161,15 +161,15 @@ impl ChallengeHandler { None => continue, }; - let blocks = &batch_info.blocks_info; + let blocks_len = batch_info.end_block - batch_info.start_block + 1; log::info!( "batch info: batch index = {:#?}, blocks len = {:#?}, start_block = {:#?}, end_block = {:#?}", batch_info.batch_index, - blocks.len(), - blocks.first().unwrap_or(&0u64), - blocks.last().unwrap_or(&0u64), + batch_info.end_block - batch_info.start_block + 1, + batch_info.start_block, + batch_info.end_block, ); - METRICS.blocks_len.set(blocks.len() as i64); + METRICS.blocks_len.set((batch_info.end_block - batch_info.start_block + 1) as i64); if let Some(batch_proof) = query_proof(batch_index).await { if !batch_proof.proof_data.is_empty() { @@ -183,8 +183,8 @@ impl ChallengeHandler { // Step4. Make a call to the Prove server. let request = ProveRequest { batch_index, - start_block: *blocks.first().unwrap_or(&0u64), - end_block: *blocks.last().unwrap_or(&0u64), + start_block: batch_info.start_block, + end_block: batch_info.end_block, rpc: l2_rpc.to_owned(), }; let rt = tokio::task::spawn_blocking(move || util::call_prover(serde_json::to_string(&request).unwrap(), "/prove_batch")) @@ -218,7 +218,7 @@ impl ChallengeHandler { } // Step5. query proof and prove onchain state. - let mut max_waiting_time: usize = 1600 * blocks.len(); //block_prove_time =30min + let mut max_waiting_time: usize = 1600 * blocks_len as usize; //block_prove_time =30min while max_waiting_time > 300 { sleep(Duration::from_secs(300)).await; max_waiting_time -= 300; @@ -408,7 +408,8 @@ async fn detecte_challenge_event(latest: U64, l1_rollup: &RollupType, l1_provide struct BatchInfo { version: u8, batch_index: u64, - blocks_info: Vec, + start_block: u64, + end_block: u64, l1_message_popped: u64, total_l1_message_popped: u64, data_hash: [u8; 32], @@ -420,7 +421,14 @@ struct BatchInfo { parent_batch_hash: [u8; 32], } -async fn batch_inspect(l1_provider: &Provider, hash: TxHash) -> Option { +async fn batch_inspect(l1_rollup: &RollupType, l1_provider: &Provider, batch_index: u64, hash: TxHash) -> Option { + let prev_batch_last_bn: U256 = match l1_rollup.batch_data_store(U256::from(batch_index - 1)).await { + Ok(s) => s.2, + Err(e) => { + log::error!("l1_rollup.batch_data_store err: {:#?}", e); + return None; + } + }; //Step1. Get transaction let result = l1_provider.get_transaction(hash).await; let tx = match result { @@ -452,15 +460,17 @@ async fn batch_inspect(l1_provider: &Provider, hash: TxHash) -> Option Option<(Vec, u64)> { - if block_contexts.is_empty() { - return None; - } - - let mut blocks: Vec = vec![]; - let mut txn_in_batch = 0u32; - let mut total_l1_txn = 0u64; - let bs: &[u8] = &block_contexts; - - // decode blocks from batch - // | 2 bytes | 60 bytes | ... | 60 bytes | - // | num blocks | block 1 | ... | block n | - let num_blocks: u16 = ((bs[0] as u16) << 8) | (bs[1] as u16); - - for i in 0..num_blocks as usize { - let block_num = u64::from_be_bytes(bs.get((60.mul(i) + 2)..(60.mul(i) + 2 + 8))?.try_into().unwrap()); - let txs_num = u16::from_be_bytes(bs.get((60.mul(i) + 2 + 56)..(60.mul(i) + 2 + 58))?.try_into().unwrap()); - let l1_txs_num = u16::from_be_bytes(bs.get((60.mul(i) + 2 + 58)..(60.mul(i) + 2 + 60))?.try_into().unwrap()); - txn_in_batch += txs_num as u32; - total_l1_txn += l1_txs_num as u64; - - blocks.push(block_num); - } - - METRICS.txn_len.set(txn_in_batch.into()); - log::info!("total_l2txn_in_batch: {:#?}", txn_in_batch); - log::debug!("num_blocks: {:#?}, decode_blocks: {:#?}", num_blocks, blocks); - Some((blocks, total_l1_txn)) -} - async fn send_transaction( contract: Address, calldata: Option, @@ -589,11 +569,7 @@ async fn sign_tx( pub fn contract_error(e: ContractError) -> String { let error_msg = if let Some(contract_err) = e.as_revert() { - if let Some(data) = RollupErrors::decode_with_selector(contract_err.as_ref()) { - format!("exec error: {:?}", data) - } else { - format!("unknown contract error: {:?}", contract_err) - } + format!("contract error: {:?}", contract_err) } else { format!("error: {:?}", e) }; diff --git a/prover/bin/challenge/src/main.rs b/prover/bin/challenge/src/main.rs index 04d3c15c7..f134ac403 100644 --- a/prover/bin/challenge/src/main.rs +++ b/prover/bin/challenge/src/main.rs @@ -48,10 +48,8 @@ async fn metric_mng() { fn register_metrics() { // detected batch index. REGISTRY.register(Box::new(METRICS.detected_batch_index.clone())).unwrap(); - // chunks len. + // blocks len. REGISTRY.register(Box::new(METRICS.blocks_len.clone())).unwrap(); - // txn len. - REGISTRY.register(Box::new(METRICS.txn_len.clone())).unwrap(); // prover status. REGISTRY.register(Box::new(METRICS.verify_result.clone())).unwrap(); // wallet balance. diff --git a/prover/bin/challenge/src/metrics.rs b/prover/bin/challenge/src/metrics.rs index 4e014ab10..480d01f26 100644 --- a/prover/bin/challenge/src/metrics.rs +++ b/prover/bin/challenge/src/metrics.rs @@ -4,7 +4,6 @@ use prometheus::{Gauge, IntGauge, Registry}; pub struct Metrics { pub detected_batch_index: IntGauge, pub blocks_len: IntGauge, - pub txn_len: IntGauge, pub verify_result: IntGauge, pub wallet_balance: Gauge, } @@ -14,7 +13,6 @@ lazy_static! { pub static ref METRICS: Metrics = Metrics { detected_batch_index: IntGauge::new("detected_batch_index", "detected batch index").expect("detected metric can be created"), blocks_len: IntGauge::new("blocks_len", "blocks len").expect("blocks_len metric can be created"), - txn_len: IntGauge::new("txn_len", "txn len").expect("txn_len metric can be created"), verify_result: IntGauge::new("verify_result", "verify result").expect("verify metric can be created"), wallet_balance: Gauge::new("handler_wallet_balance", "handler wallet balance").expect("wallet metric can be created"), }; diff --git a/prover/bin/client/elf/riscv32im-succinct-zkvm-elf b/prover/bin/client/elf/riscv32im-succinct-zkvm-elf index ca87163232c341a0188c6401f56bc2c04b710786..e0daba3dde63313fceb570e5f052c3b23a802b74 100755 GIT binary patch delta 1635686 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

~$z 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 z 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 IPH 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 z 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

EYMvt#Oyh}s2>@@fTTL|Cieeu$aly6q5A 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

q+ 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

5a$TK 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 WB_{Uf6=gaEKthv^&D~E7Uo7 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

  • pUHtS>j{vkF;a1ixno@g+vbc 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�fqa?hw=z)iR>0crm$XU#W;1mv#Nz#5!s+>CSZ{;q*t zdq&p!-Lc$+>fTsxLiN75b+F;#I|%z9{{CN{2}sv?mNYQK-?iuA>`VP!eFr`j>x5(x zUd0aeu3wFF$?N}c)OioyMZ3i32jb!6-FzYp$_Q*WJG>BoNrT$c&A_#02TSlWlV6LM zW1Zpbl*LPC>IdPO_xdllJ?I==1=hch5U4W+Tb-kVl%UO?X~8=3Sp;M(xYJqlGjNyt ze146y=9_U}^70MJ#8}cRaw0G5-(v|3qoBQvcKCT`ZD0W&asR-e%r&rk@5q|(jTexg zY=zf+CEzUpHHCB>|h$seZUWwX?sVOBbGzzfG1L~H(egC zG%m%n%mLnxyK&R$I%6STOMTzy{OPF(G_k|zCnZ>e$3E!YjK|Sn^phHFz>|$P<7viQ zu^fQbr|lEnlpa#w4?E?Dkrbtax`KI`p;p)PeC1#(({h!KeMc^kmikvFn6u zjl1Hd#@%q?!@j;Jwr7}){m=SsZ*joVzI0@AfTUVF~e{pjkk4ps+*1Wq8JUF9g;Y<74S&V0n5;dywS z*+CWFhwXK=d>IE=@A^i(1J zsz<$_#nN8%lN!8; z>uS2%S@zFAeie#9181nO`G>fI4fHinIWV#|*cKPwQWTLZn2x7VulcUH_9^dfxbj)= zp15e7{89`1m*;jofwkrU9>xU}BziXT^?3YqzJZT%{e15RTxMRPZ*h~!|Ac4WJu2~3 z@V)5ZfP>P4jgpW0KmG(0fwTp_!6R^n@i3fiJQC*`pMi%MkH)ji4(H-xlV6DCfL;Ha z8Z0JIY0ltHe4FumxX$<^EH7E~lNv0?as}02;uc&;K(26`zL7P*J?09#{Zp_5fhinu z^wT!j8Ov*=8}z{TuHO^;pY_`YU(7EovO^}(iNR$GmIF?_gbX(CV!0>u_W^e-=Qk!F z3;mbDM-Y&ksDO6mG5O?jeq~ZGVQSmp_AB^LCXA1`lF`w41C|qz!%Crk&Ug;U_{9nQ zw;jf1S9J<*3pv7kcf|XcGm^*bL~QT!Vq9ik!_#reEB>B28|S?0JsK~4(|atozpj4? z4$I6XzLJ2w#MfZ|vwqty7xJsu`c!a9M~OM0&GM~Qu2>zG1JXa;((fXE^O*yh#d9qA z2e2GaK2t7na54Y?zx^fC(CkpIz*9Kw!+}95M+CG_wRcjkN$X`_qpeud(OG%+@xZcFyjFFI4 z!(Tj5f}CNOfswVqy>SW!=nca#oQQQ|nu1H%e}LP+%vtw;9+wl(b@6|kH6Du}#2_;T z9*L7T`U0IOW|cq^{JnPlLEV?pLIQG)I;3hyGr7;b5# zMecXj_$pjL6GmHnuokDi?+^GQ?q^(yw{wC?>>v}-Hk{EO=lOp-2|4Wvalt?Mb9T@% zkbW$enTa2bi-|Mn!vZJbX{H5l!$l_lLOjp-UR+83@WDpb|0)vRB|-1ue#K>`z@CHY zLsP)PxDRnzp5=^2<4O~sfPW#bW9AmT$;9X5F~p?;;phMBNI1_F_&pwgb&w?u;ge9e zgB)lB~E$z#^WTMV9L+O2jPy<`Ns$Mkg(bm@F3pE0rd=PaJh+piXS%dxa0Yd z%Eb4?xg0=08$K4Nedtdp6CX-Ere|~|3HGwO8t0fDuE*K6zJQr{-WPsi`O2C847>Du z+(bOu;)0)W=X&p7F;ll+|NkICrp9QC5B|n7m8#=pUFM9{yW=|ZMx+Z~ZN8GZ50;ry z^Y4dcCRHDZ54hTV|L+hI6P_zYYe zGYRLAP-p(W?|dwmjTUebmdi?g8J5dV{a-9&LVYbRGrj@K#G~;Tj>*KM3A0I%L8rbQ z%S@Wx?~WA(>at^)Pvc(U;~8La=8nuH(7u+n%Nmi1o?Xu)y=q27Tv8UKUj{z2or z4U6s<)O+A&6Ym-$!QOK1i~ZKpcK3g|>0~tw*LQB24!o*McvN#k|uxjpu(ER63Il<&}#J8uhcxj4~0GQmPbi6El~L+EG|0u1YMUTJy)>!Ydn7 zUKW;#Yqi@yb556Vke}xEpEZXA$f(uTEZLla%!C=Z-dsi};qnxJS)GiVZyX)0k^&hs z_v6Jy-mMZh`TxZU`}zG7Vp$16dQYFw38(b(?uIK&7j(z37^mV^)uhFLT!T3wQ?c=)s5e|67-!8MfdO zGU#fy_o&DkPr-}Y3*dV^&Kf@jFE{%aIBR?cUQIkaL3#dv#3g8kCviC$^fQ}Joi$#E z-z2V0y!*+KHQoh(Mm&iG>B1q-8b1O5KwQ3}5kCK4?h-V^Rrqf*XcsJV*7!=iJELBk z_&sNhe~9-cu3fatS>y592|=%D|LF7oBVB@K7>N6t159$(cpg5Qxc=zW9nKnGg0qS1 z2~;|3{4G2-jJx%}#U*Hl9XOW^+Qhw2iLCK-d<}7J;4Eo{nkIouz!fT0Z7xXwavc~tv>rFh{S>vN|6>;XjXpr3C5;Q{$e`pGL z!dc^GxQ@8KVEEEmz*CH4xbq=C|7;w~KHMkVPD0~N{^#;uz|}|jcm*!}kN4}ibg*|d zE*a+iJ}w^Ny;<^`S2kaq#`FJ>nZD2K$&hXQBc5X1Bn24%hF2T6;%ei6aieiU4yzw0 z7;W)Er<@o~W)ixQA=|h+o?@JeOO1Qu)yC<#+PFV%G#-Q#%suDOOcMH-1aX$}D4b`U zgG-Fhy61+bVF$*FxN(x6Ds#`EgZZpVx_*^=P0)m;XLh;A{s;K1N_tX%k^LM#tCFFS z;o^JpS(Wsx=AVS6CpG_Ge0C)xr#Q;bU-8f5nUt}d42?%%`{CQ)Sf&$g;xm@~e@|lQ z=_d2rt$1NJV@^KBmQQNFbO}+WxS$?qo-#C$-6X!(>5(lrL+Cc{wNjSNy_xf7d=i%onXUTFL>PBZ>N_BZZ2h8Hokh~AtZhXdm6 z-{QZ7gw4f%#+`yQ$eEfHSvyTMHSF4?Tj~n6Z1Rl zO@a)XXp0Y0ur!(a0Q@#)h=g5|?X2<9SejHl7E2eX&%@G1>Rdb^MuOh#&Xoj{VIh_- z&>il^Sy*0w$(X2g*7#ev*yOLlGDbB15ngFri(_Rb;cF5qjT`VLj8J+O#U+tb^O`fMwmy+#Isq&Wt3}%Br>F6eUWmUv&K)vG6>Zpu?#}>X;{XD`b;ci zMm-+Om{4DEHmkV3RlI}@ersvF+*oF=MN&Y$A2WC3O%2}5u`O?<*lQ!L{p%c6g0GN| z#nNKxept>}{U0nXq8@^!#ndNYy)0RO;)5&_%1wq-vGlp_Fb3OEJr4V=rEQ|IjOr4+ z=^x+Zb8z{;-V3lRPu9Q0;4V{uTqXzK%M%zoR1lRXvdgd(*x-Dx$u9?d5l?IL2dMA| z2+QAK@=N(|wVUHh0l$$@*hfC*kS#9QfhQi~y$cWO>m7eCGuffuiP*MK682k5ThIIW zV21K)Nt6?skL7p`a{iL=ISFzA&5&#gkP2qvA?f~rBXQO(?Uzw-6&`DRFCJw42F^6! zd#slHM;x!;;)@G5l8`X!_~^4JTHv7bXps|+59aaFi%b+#ak43JDehzZI?gk0!Ue|N z&u5StpM)u2&R@2;U=#`Y*~bS9c`+deyc2IXJG_E78#m%A<9#ObfvNEcc(L*2c$M*D zTz(7dx!%#dMuN0JwDFxZoLu7Lzv4c|Jue`?@klHup!=VS$C~(cIL~+`-W)Rt?~zbq z{3l*)e9$CnY@CA!8DEdHj32^P#v5^gaVw6kG6@G?$YOK0KZA6<-Netv3A25R+=LrU z{Bc~vypc^4$V~UKbJQaI92rig3)Ej-$ok*MBz#APLB@?Z%lH>O)_6P4Gv0{{jDy^0 z(CGm?;>9N3IX4y!3eB)L8OlwD6kKI|0N!le2R9fWj<*{RzzMXFmVYcxHqMBV(8nYU z$I_>|LpIJb9*xHukHvY$=ivh5TwG#&DPC+G%O_!#Nw@}=8yDg#MgmbP-{dYS1`=}T!a2ApobK=n4xH}Q?Q$oOMCFLJp41)r0!!esac%Ngkb zf537E>TOugP~C#-jCbHBq;keuU{~DFcwd}h+zaOzAB3gF zbpJzfzVVT`$ao-@E_UlLUyLMSg~@OtUSm8Go69CR4g0O7Z4Ot3jQYj0TyvFFVHu<= zczzfEi>1%?KWZAWoVRY2A3gu`66#hGP$N)I$!i1m~N0 zEtWA8t_75Lrm3)8rq|)Rsb>A3K|;gTeh?PpHPgLs#Y1Lz&yxa-@5Grm`uI{j(fEFx zSLEZXa7|InCpJm7jUu3Ux96xypH|W(pGIOXWaBZ`G1qR-v7v5Y3u*& zkUCl32lxscg!|3*?u$$3dLMy9UBU@ZB4kzE{|8k=kmteiadQ$c`{$w)if1XKbBg0tZ!!D%)2l@jXg$pju z2qy3Wq}(Gu>#P-6hZnQ|fnjy{fmU2o==c8#SDEsYFJt}RY!XhqjMdNh3S7acjyC?( z6ekc@Psho|MR=_7EG#Fe`Aczu@q!o$B_?4pUTnM!mm9Cdat2!9qjM462Fl{ryfXV?f{M-}V6iPXT@2dH-mKU$G3jLO0R;XC-gP zsesNK1y}~5ey8n4EQ2tG$7?y@DGzoD2jSS%(6Qi45@ZmLaTS>I5MTXZ&?WbbcG!ev zkkvbPdzd(5B6&me`CM3wEanioFb0V`aFcd;B$ zo%BeT@PO*Gu#Lw}@duPMJOmFZ_7yw=r_S*{8t2^^Ib8n-lQ3qv&oB%((5GFgkle># zhKH2;>v$2)Hhvjzf7I{40jIs<{WcEX^WKQZYzr;(UtI7p2|2&{44>odzr4S}QlV&z z4}QSE^+)1ix{e8p{Ef;^bkzfctRu z!eK!k>#NL!jkxqIAOFS0qcZtZ72NN0AK!`VzZ|CPPh1dO!9?u?u%JXPQz~2;IXZu7!Z%6C_xa0hF^XDEqK-M-aq4Me|Z0n3mEmO6d;%J{#Ws;*7#%`OEd51Pj?xj1M>T(SPD>| zi|v@W5c{pAZL+cS`Fx!Br?1eRID3cpJy*&5|5l%{f(#AD58*X``S@yFywiIvwiPPJ ze&bniO_wmgzE#`%DgHc}@~g=tgLd3ge2YbDqzU`1<)c_?+~6|gVyR#_SF^(^EEQ6} zWDY22{2iX~x3Az9Tty4&9nfCWSUcjmM8YjD=pG|sAsGgeAbphS9A)4e*;oot=U{ur zXJNm!v`sLU3Kir0-A-u#{9vPVv=8h5Mm*2l(Z(N4y8_hjO93Xn8UJql1i}y|1Tgx3e>NLHkloy36rnk6OE4TH4b`Wdw?|Tx0bd|lqdPa ziHb4P*Tki~(RhNEC*NW_n}iZgz!Pw(@dbF5@g;bT@#Q$jw7^w3*Z4Youknqz+pOqg zIp*K^;ARr4OorR=X5;y|!T2s5%=JxvFYadi0M3~2KlghC+ZKCL_K!B1|6AHVc$z+8 zhp12DgT2bQW#WM0r&`>@orR^z`jK0%+jp^4K=bcOlS>8E$3Dw9D9A5|k^IG2T2y92 z@q1WWG*Q++N$B|;e@MXrwSe=nw19dAmL{JlQ#1Mh#nQy#N3m4!#PTj-6Cch2#X^2z`2WJeuo$d)W{VOAI!#f)ZUK$#zgWwV}OrT(nyp(o{#HUP1TD` ze(B=%xbt4Vi?@nnBt#p3qfSCMtbKgYb&)mR7w1wz?c*`HANjS9Z*|uEx8p&k{6)Bs z{lh^`3s&G*pS^trUMHc#xEgQX$H(8t1r)$V5O%>|IJLWvw_&MZw8aME-+AdFLokT<{XkAg*21<|x=i>$n z&_0@trNC(8OZ9jK&L%;wf^uh#uXp>aU&XdX-@tz3SNz^F3DN>T{m%}+nz%IKAI6e@ zpF-w=G=Bmqco)u+=K`vj;~X87|I-#{9^0Nj7K|fd%HZ~d;C#F)!#fwJ&Kn){rUW_T z+wlol|NQs`oQ)51@o(|2+kFdmzJYngcrb2iH|zh!By^?#ZSwiJX0)%sop>7Y0qy{= z;FTtSBi?Sh=ofq-2Z%QQ#to+#@5B?-^8P=VK?`UC?uh3Zcg8D>_r^8GDOk=>4|o8U zGgSA%(jw}^v7E4Mvi=1FNRTFuHvUsQEKRJ=z|zF(;aFNkosFeM)T6N-bYrpKTH4mF zW2R(`a20X>T!)vg=Oqy}JeXWEm9ECpgyBSkw_<6su#0fPOZ=fEO&)%!1V4|Z#WcPH zOADz#*ucwbJj9hh?REaz2S>l+M*-)V8p^0H#Oag#7?_D`IYYg!AH(x3=U&AA(fS(~)R3@H62dJm_y|`T*Wy(d`}o(m=o0S++2438o|ot2%{XVW z_n)|$3cK|`KG-D*cj;=ldk}vkbH8ySt~XA?(jw8umsqgv^PbpmEp6|-%u6gPC@m;m z{u}0mW9@&t`Ye4SO+LiE$IEzw<&_qY%T9KEknTknep9E{&OlIV5EN*Jro`*K$B<0h#$;!cC^hEAd~(Z{Y#tkGA-r24@<7gr^wS z;#eUGr@8~|R>b;jGVFonjJ3e7SSqC67bh<8?iG4Wd;B1A()e~CitQLVvWWHHZ!K-< z72K!OB9$acpJ!I`<#M_pnU)jp#Tbz$EOqhU>0@c)mCi5H$I>P08|h=|67|{W0!ybY{@meG#eaO)NepzAw%m zc%p07xS$sv@`m?8SoYTzI}}R=qmB3fN0J~-6m9eomL^pnCp#FQh~KM*`9E`({4tqY>f8=mz_)niTbU7w|Avoj0zlI%wj_e z=ySl$xCVz;1&4eR=U;qMutLs|T%B%?tmSvbiC3Q#RPHP5KN+rb37TOBuD+EF?p5p8 z&KhsP^&D^j2{JP#&5A0h@noDZet1N3^u%i>c&Fh_mkkffc1yU;vgTjy7(| z@FE=E!BE9qXN_Nqr3=*gSXxMZ4c>14fT|F8qe3y}ov;ZXatXS_YAh|FUW?@n)#X^u zNc|GFS3xEA8(+CJmaAY3F1vm>?H_J&L6c;d;ai{uryB3T-0ghF#hMOX@qHh!@c+cPZ1ersvF^FzMVN&aw9 zGS@FKaXI6sapPiNfpR<`w!|l_mxQ~$U&Sl$^?n1_KH~ij-evp&&RFN;pWu?$yuZYW zy+*h?^T8*M*)!Tgg5P-D{)Deuaez$s*=+%q0>WoImgApIemTRW*-S(OMg%M6t6Frz z$<9%kJPYEc5hL0sw!+!0|B|2?W|ARy`iS<`ZjH0XpTX-M@cCcB^B(ek883a-yArp) z;Qbb^-{4&{o0+ZfL!a;w8P0VA z@vq_QcX|Lu@dH>65Z<8B=Zj2!IiqKB=OSN$7x8xE3Owz0AK!pWm$f?R-E>@n)Ux562`PAFm>EUlViD# zWfY(4991eVI0KiN{O91+w3x1bF`Cu; z@lw-=o3I=(+W6nPv2DRR?6;P-W^O{IJbme`hKrU9wv#&lOaNJD_O&&u|G* zt$DkR^Iq~TFbX%k>U|ncKYV0R#2WO8a1;0w=2(_6Ilx!hc}t{^UfN73GX7FNP<+j^W4bo>;GOPB%C}lNOu`V zJ8J=F<9@`$Pe3SOp|i%9;0b2`kDN9B87?;QF+(cXtaG$frAI4Ko9T}`3 zLC&zwS>xZ~gwsX_buON|0LMts482LH$GI*;sk6ox;QTB<(X7Wg#^2+K#z}YZ{Ga2; zOw3u!n~h`nWY9ioB|)qi{>6n@TO@yBWQ|{gYlzEDshsim&Kmy-myR0W{?_dBMZCx~ zZd%0ppK!WA;BRCo;|zFrOmTc;;m(9$r8%Q)+-Q6)-Za|pe*tjhVnII=3NQBs{0Apo;XMSWF=)cYhXO9a z6R=FBGDa5QToYf91LFqV&A96l_P)*2^$aSn4)?vAh)vsc??$uSe2=hInumyf~ z*7zTI7I9vfgz>byBWt`bp5x-2Ki|!E37TO%UT6xK<*e~ie2qRA8IRi~hRaNO75EwB*Kree>n~rsA;BK-ee5?5_%+`H<^c7K zI=Sad`i6T(3eb;e#$YK>?-8r9958%g!9C+{(bL_tnnjo>dAiII0x_23Ub64?tF60XLwu^uGNWw2MwG{ z0lFA{j>nh+cU#89W!xWE7x?`L;!@%~Jcnau5^gZ@JiIJMhOREd9V7(T`2v>U$BD~* zy9~NYoND54;a7nD<@DLNv5^^k9eJN6E45m zm-ic9lkLY`YHS6A!er=;SKi`xNXO;I{qeWvj0fS)6sRpQ6ek;J;vC~qc&u?OhlCX- z;VdjQ)B-2q3j8tOgqA+P#aZKX@WQb^{~dU#@e*8ayd1A;|C$c(UmqmF_Ss|DZ~SG` z=X`aF7OG&Tk%^}XOP3|et6Dt&D?T@*$@O9L6D(b%evgSuT2!tg$$uvklXOWGXZ`C` z&j*LpD4NMS2KQkZ12t}k9a#EU3ygisPebDHYq}KJ`8!@f&_dx22{YYjEKROnh@}O( zQJ#Dz^f8te4=um{^ZEB(!amh6kM(NctJP%Csq+FXeU|MCcmPWir#e4nT1-au$GF*y znOZ#Izkbl|b{`KaSWY-x|NE1$%49efC*0}>;Urwe0drHLF;I#N@A2{ZE>3xD@xh(A z59R5*th;brgKzCTrdmQ6Ib7c%c(%vhg9$x+-=jypn(js zm^CAD z-Y;UQaJ0n-uiz@&zW%>KLLvofhIgYzuH~s|M%l1p`H@*qYAeH=Sj4~PZ2mio3 zC2e7@nsYJ7bN`Dk8J3YCXISd`=zA<@wA%Ru`cTe@Wk0-*mti@BERHG%_|{ZFy7XV1 zSLd#Ky5!K6k)uk+1^sYg9oMlY98JQsZ@iDi1@+z;IQuH!BEzw5fo$wIzUON!6}lP^ z`qq!J_2L)_T7g$d$itZ=$ROJ8tnt6_6e^&D?%)SmY>ZFGt4w)kVaXqD{HHs(5X)z) zGL_H5F-g!2rBZk8>NmU&1>%fV6@fpaJ)r=1(AL6%Q_rKL0*AgE$jsn12|~ z!-JhKi;*za6tD<47{81MZ1n|J;_bxwWHl^s8%{7S*!>Yc5oz-IQ*oyG-H+b5%*12q zB&_Iva9959-|6Sn{ zG{ZD3eXO32rH|D`So%~w3riQOOR@B^dI4UJPbNXe%sS^VF3vewiQ^78+P{IfP$8}1I^50pdn^^y{6Ar7G4-!l z&N$lQgFoWJLuEoHagUE$hFGQcWl(gN#!3t=LYr^YB6wzZ1(C(ELlWj1l$ySh`TX3QL!% zpNNqlgGLj|aI^6XSh_^x6 zn%$y#VJDW$s!zwrUo`XQ^~?iPT>STzF5x^;?{3rY_?_E!=7AbFuXNbX_X!w;yW}cj zo|%fJ1;a5G&-dTP{mJ7sH=R-qxsUJgw6Bm%LA^Kd`o+2U*c{&R7Li9e6GU+3d5 z;R)I$vi?<)P^by`EnI9|gI_TI2saql;wIy-v9wUMag&PW1k_uxoS?IQYU!g|w>*y9 z!8;sksIO#}VmV_i@Cz(`cp$ZuLEEd90`alV6R~tzKj(htgk(^kDlKq5V?xef#_1U( zloa|wG8X6D;C(LcGsAllZZy6Gm)+>&Q?PB(sn~BVZModS$^NlwQsuf_MS@g7eVSay zWTG%6^UI4As35J)ZE?Y2IP+%jqi~6-(0O>8iRa?QCVo3!Y2u6UDig23n_?!z>m(FV!#-hs>Q|p<{Vyk>D=BiopU5EA48P(xa1R&n`9frkr{OP%>*M%o&Kf@x zHxk!-z#?aj&x(=oHyQLpqNkiS!*jR`V?Yb|+F9cbIE{ER3338mUyQ8reeodT`h|u} zXN|{3kuaJJdIncJYliFbMB?h1SS};=EqJwmpC8P@GKe*P2bMvsUV_cU6bqJ<;5Xje zF%e0D(Olj!_>s9>E~5ctl8Nd_Za8FA>)(D|B{v{uYJLXGAl9jR)Nf2w#+$H=nJCWs z{}*>8a#_uD2S{V4lj~j&Scm00SO3IJC-X#=y8{~k7e7u*T&@zS;0IVPvtzKV4G)?V zl$r1~+^mIlz6|72N{2i^NefpV&kuH{%pVhcevEJ5%;+@iZlPl z1;5A+bNvq6arpx8op|$I-oZL;&C=UL_e&e^_xZ#i{&L&yLL@9$#x|lN#y$`Faw0Ji2PndAkAKYd$C=%Tb z$o<&f6@P=J0y?Vq+R1N5(dRlS&&4t()DL1AGwPqPv``8akU@Fa-+U;AW6@<6A6!m? zG>IPIaV&$X*421BmNAgvZo!IoaRv-3>0>#=cd!hy70#3Y;Q)-GG578!Pm*khYD}LC=_rv+Cybr*33>}PR|7hdmc5KH? zf9&r6Buh(Mr?xKP8S0=JBpKW$EifKuJmC*G@qY@u$mEyu9-&1ge>#0EU2v(1OL=o} zEbm!g-~tj#Ui7{T=W_<>R6-V)S8$zakuA8!c(0e4xYqgod*E!-0tewfCVu$Ktp819 z(B=0WG7K>pCgFiI{OULd=a~4NcyHpmc)fyiP5dpKMqF3V7F=NBJ74Dd%O`^_kB3yy zhbBXR{5KWs;acEayu!pU#v{!E=HoIGzZ*{=uFLZVTxH_##z?r840;BCVB2JWW9fou zW8A*NT#v&C4Z7qAXN@0?rAyRYw7?u`S$3~DKXQ&CMU};kI8CaT7eGZl`QJ;^c z1=JT|Ib-!@SXx;9Uo0o=91E@`!Cn?OV86Ar4d<$mL8=o;%*16BFT=GosZ3;YU2k!Y z%HaC~xSqI_D)D1pjU2`K{Cg+~4JN~EXDwhZF5`wo3Wy6j25a%Oc6SIq#s$W$crj-f zPPH7e_iNl0yEB%n=oH+jV?frwGe~G9LpT+aVFu2;(J!Zu;NT^HSv`s60MW*W&sZuH zZ5@Iau~azPItH&`sXz`1Qh`QiiL?Ik{+|S?K(z7x9|u$*lLXn}z{RZpZMUA4GF=YWMFLwD=-GI?OBvhLWjkv+MSqiwxSD@EhRQOe2;e&Bzkw3%Jah{2vgIBOW zx0qoU6ysQpDey@WR+$~1!<%RN1AdL`P5ejPYWxeX1?qg1%8K+nJ3jOtVjO&mV z&_U6sngf^&N8(Zn(5ZQX*mT(ixY^{t7?0iH4=@D>Z+K6|tySIyF%nA6O!ojTG=3LX zm^1tX*BPh1!`yCs8m=*(jvGyR58_(mSPco)CSeC&XWaW;rc&e6@lxYLJi+*3JjM8Z zoKA&$xH0h;F7g%R|9^OoI})D|oPl>4&%m8cfsf!J#+z`q@!vSb{1|;)O*AMuK3jaS zJN}U_j2=#T{y*9!XokT!oO;(AZF$XVm}V7Uy{_u&axdR=C|x1Gbd zy#L=w!u@18%w^c&tOfjo2fO@7I%|9&{+sxrEc{XxtT&|}IcvNYzeQZvn%&-yOkCDKetw?>nP_x} zuDAjBB0(xJ)LG-1xQ%%DFiHGMXN_Ntv&>Al!dc@FVY%$x`pXXvk&sKm0VK%*KX%p~ zKF2o^*E2}?AhO0gVVRoM-LOox>hAbHtgrb_a(3%~d~h-ePm@8<_!?&|pb*Pct-cA@ z;r36toHhP5{+DoqMSfbwdzwpWc``|-C+(O&t_|J;YXvwhef%I{nI(BL|pJUo^rdNsQP}C5Ii#1KRKO= zClJ?Lwjx|bdAk42xZIy`ESO6|v&nELPM+tN*H>`@)&jTUZXf#sf5QdD!=F}V9y#D+ zRyPyxi$@XHTfDPyR(qW1|MN(gLkwYnOe3 zD@^{caJQ(1qxb)bpYkL_f}YVp9GEVcggbxY&+t;*jRR;CFOvM`fEBo($zLTVu73&j zD^3mbhvy$3^!$tu49pI_agizTbi5AtkUpc!3h`(;#c5qpZXTL79T^4>HWj~cns!SIAMj~!38G& zN4SylV%miNkg%Nub^7P@Io3Wr8{0850hgNsFTlYqej>XR*PHlMyqF4U`S;?I+s*g? zsz^xu%%4#W{*E1VQ0>5DO}q_P64%@C!@pp;HSz!8&BXO8x&Sws_+-5DcBV$nu#kl0 zT3>;s_zw!u_XAaUfQi>&d&VE)X(s+DF2eoj0+~q%ei<3E#RWs~>X^xJk0h7^R^ZJh z{)JO!5!pAa5CJ{XQ;xhBJ@BorB+g;&q^V_+s;XX3N* zX5;xd_`+9c39c{kQ*R~CHSu@qSpVy&(FLwXzmuWFWY~p|qk!XFyzf_3$i$DrD~anM zJr8d(@k?-xIe`Uuz?Z&)_k6|rKgDEtoeZ`KtMOv9!}~bM`LWR? zq?Gy$H{c?ZVHRFvd^_G`3VZ=Kn)qvYp^0zBxsCpSzvFa{=O(IHa6mnMZZf3fDW*ba zV|#|@;>{-ig*eZ&z~#8r#IM0CC{JJE+=tVC(h9NuKPm~#&6?puoZX%wF8BgBn*us~ z%XMzzNqDJo4_rxkdc!ds2V3=kalvU4*YafjpH4!$$q>Uirb18PF(&>TE;8}2v2B3{ zEZ2Fo@$0!*t}=Bq);A=qKYZVh1i8#K!!CRcPA5TDyT0E=)_6a>jCe;EAMdR33$R?4 z>Pv7L)|qyJGjUn};)BH`yh;XryZxH87VsvPiA4P#ZpG55Qo%o+HNFd*0%~y`K7|B1!`&JpYkUtZ6OXzpmWfBbFP4c)-3!Y^q&^7CL=@eBaDYQekcmh$ z9En%pLr9PcOmNotB)oyRzA>5OtnoXrOkCK zWhPVqgR^me5~PCZKSb7ee>|PIexh=&v&JvP3vV;e|C32r$qqUQ7dq<>cjFDj^##KQ zXN|v&WoA@w#PxVE2~xpUXN~`hQ({a6nvn2gG&QO_;St33J>N0T8b2P(OsPHz7h+v( z@|`t)4VIZuU5I0=NYIuT&tyo_~?zJVd z#(QjG{gqKY|dd^VPuQhhrv!8&GM*b<8pG(!a$ zo+X3crEYQ7_|I78cJ=RAo{ZFgVY$y&w_$lOQFmyJ9$eIW#z>GS5lz?&%ae+_2bM=E z_5N5MwbTb=d2Uc2hULLUeH51G2K6ym9@o{e<4KSw8BI6|%ae}!WGqiM>eI127pTw1 z@*tr;7t3>m`a&#^a_Y%gp8cHp`%e<&*-tZEi{(j1Jp;>=jQVCQFBsINSYAk|@4!4* zwEJ!>4;~u753g)D@BdekP}ZKnuh(LEu+SZz#quDbUXSI$L|uvHIYIq4E;9f7&HGqh zU}*dkEH601P1gT966A$~X80b<^S^p4mNyvc7A!9;)U8lzZ|(Mc{l@nBP6_=N#nX6}H_$BVc5TdG`~-{d_R5Bk~r3cTI; zD!l0ziHGY?Tu?y5>R2K&N%3p6dq7Bys~Ffc*YGbzDH-bgYzX=&al$?6)a~|>)fMDQg}k@^Rb+O=6?W7 z1!9_Ep*aI-@~3g)Z~lzS@lxaUxa4;qe-%&I?)?Vt_lNg8xEU|xT;*x_kgcJ0{f`Td zAR%YIpUcm|1z4Z$Vz|Wkaa_E^AK+=6Vd9_Te#X0Pr={&y#(*^GW+Y=`1C}Ol za^8idi8cNgeJEYD(8XsZC5261<$Q@8z-`i{vv7U*XULKm7u<$pX^Z?F&9fwQ!`kFu z;RMW2zl1H6*pv{=Ug+QT4#eBB=AVQ!$**s@=HLOQymGuM?qpXb-lR6M{x78fU2Yr5 zP-+V7`ZL!x*4y%-c%q3<#^qQaEEeKbCjK%mi}wet#G6fg+s~~34J7D2UH4yjTWvC& zgwuBO1&qRr>C@d@i%i4Ia3|+w_#P9l!mF^p8~z2CQeHpu%T;h{?AItEY7@Q-hRaQc zwayxU4%eFst;3BRK)c{OJZOP;mu9-KgFk_NaE*z_P9PzR1i3KeD!3e{-r);ajQbhC zhBJ(};?BnVw(y{04v>kPjIYGIyko)LB;=R^HsB)TCOpx&$8X%x7!Sw!#{b1DjF;jy z#&1aeJ+wu5{(pyrRx;>=$9CM@o*^#SiGw|L2d1yzsjwL%N8pK_ef(&=G|77~mN64; z@xd@GVK%A4K9L03zxVdY8c)YE=+ynOj1jhQ{R;+>AcI6R z48<}?)S0+5U8Ej`Q;l}7Vm~!(kzhp*2zR7R}E;62m=NV7OD~yZq z8sk~G0_(%)Q_gw<&*4vrr^@+DlYQ+HG(!XajSL-Kyz3v4HNG#FL96bCyD=zbfsyh? zIcq!zpGaJ1+UuR&`Wqk2Btb^C?r;m1sa8D)%T%ns1It>VUV>%nRxiggwW}Y*GBv9o z!%W@o_|*6*5@hPt49{VitJUkVOx5bw@OI-ju`E^^e-F!Irv4DiVyFHL4_IWL|Gy$Z zRxi!)J+|xhPuOq#4QJP+K$cToZtujhx^GTT-}|OmY5I%G2|g z^*QO!|9`+_?6;P-p2m{@I6SYbpJ-0NV>tm`3#Q=AZa)5BJk9tT99wA;t|y^-i7((G ze9+x~`Q3hBD)|xWf23 z++@5Cr|#|de+Ac4A^j+~5&wd9`Q4{AA=qJjLM!Y4DiZV#=W;SUjrDsvi}41`AF+g& z)oZxH9Iy%}@8c`*E>1Jvg!>tPiia52#Yo693E$x{#*KKQ@h^Ca@pfE*^@if?zamHD zhM(EOD^30j@z`Wv;n-vnb}?vl@mPo}j90^_B1YXg@SMU^^yx70aFTkl- z2jK&F3gt!bfO!6YmxRsc0Ds^yJ$-?H-;R^G@zuBh%g^(1|HJqD zT!QZKAbyk#dL6&#tnm-=i^TP+_}f|IasNhRNWDAWOn$w}j&>$4^Iv>0n1pZ40WWga z0xrYN#C76W~unc1LeK?shqJ9|nH+~%FhYsi8_~2<0WEATT&tn;->X)$$QuPKb zgHZi8ma9U&5zAGe{us+up#B`oAb0bBeDDnkGRif>4_HR2dKKZotN-PU7Szcv0E zws%NxV!yStoyCK>EYJEiiOLkCcGM#6s~^iM83TytDkxX-(HjZ zg#oUB*Rk9ms5|kZQSJ}aXJJ{c)fK#Fl;v5=>)0ul6t2gbFs2i)P)vqpSe9Fj|A6Hd zN((%a*K~4=rM^yH+ff0{e-f``Wa{lkh2`sZ&v6eZw`}F^1pbbZAnUUxJh2zw*JCv+ zcdtsj?@gQo)Vm!fVVT*&2MY>ZiDf3!1AK?&GFJE5hgYx0mttAmin%kBE{Kg!P70^S za6P8Ld$CM3>i0~a%1!51Ty}_GtbWBgW=yo=W)lzM$iLh_cpQOO;;@3U{*NP}TVG$` zB>ck)e?u|{r<(X8Jczh1P8E10*2QHD?t|R{g1zHA1leZ)p7{Cp@>%~!k}%d}I2|`p zLwzSyi0gcfgNN}nlmAKFnF6KHWuo~Mrx?fW)*;ws_V0&R=>GEkw?QP7vV+cK7ve=& z-)hapg;>w%dEB4{u>Y&Lh68kU75E8Pm;)v!FtHu#TX=swhVo=J4cGr{5(bzIXX5k7 zu)iy?2xpr3Y`l@U-ZPfrF($qqKR{e>!yB+2BR}DSD8H;f`~U$7MP?A~z-6YuHe6%8 zdxs7|?o$6tDgVLECO#BTyvN@I=HZld-vasKaDR?3eRekq879O1c&zcGIF$mm3pU|Z zCSHpxjlacdhxr3;#d++nUt~(|*dfT0c(ne;1^bh59~n+`O@1<-VhR|8Gt3#^i07Gj z39e&*eTB0Y+ZKHemzn(Q@alV6{};Lgeow+eGiZ`_?+^@GHa;kD@#Ao@iRa-p#N}nQ zwBQ{$?>_$(&OdMw9_!-gCw2(_VN4`DZ@|g-vHp*735V{{A=tzjY7?J@`%%M07oUj- zVU4fG3r+lEywt@1#rB3|w@y@;F{Up%j|^?r|NoHi8yWP$W1=(1XNwOm!ZHS;Ek3vu z_rvg8C*fcimvU(6&tMuPOAW_SwAC{;g)Welj-W4Q{{ui+AW3JKCB zTb(uDjHQLuf8tm@38%Ro4%)LrAl3|rV(9|)kyyGwJrHMMJ>Vo~jpt$MBJ~wmx=1~3 z&knJ06l%hBGRUA)7hxG>>RDI@p}G{ypj9uxvbd-hV_AIE%dpIh>Xm!OqN!689wmd! z_3AZP)&ljjSmtu|IxKU)`c*7*zq$&`Vx)c-%i^Wp6eB@aFHQIq%iOH4!!i}Czr(T? zs2j1Y9qM1OtR3p@Sf*n2PAsdRn!mq|=5kHwh-LXzcgAwvs`tiRx9v{Ba@}kE04&$N zx(~MZh=*gpwZz)K91zG>UC!x}0*oF&Cf!(_>CQSSQoIwS2c|HZNA-{emRDk;t*9tsiwkxq zp`pD`;)8CuD#{SXQ*bMB{Ty&OZZz>zapD8M$*;phM*1e7iKiIP#^v|R4UAj=pC)0u z$?zf`Lk8``Z?Uc5k9f)`e}HW`g$ncutIHp=?L~Pe-U}yZ`}}Emmsr>Tz9f{K>NE7i z85G#V6*wNxGiNvpXVXQ|U$OG`9Os!Xti{cveR*HwbQ9lWZ)QTui|H8-BB6-{UHvY^ zDQ1VcxXx7Id0b;$kB6B2d+rl;8TDt25B9=)(W3fw{^KJ@=PwyfBB2i%jv%|NUROGY z`{S#zbcy2_*E*TDI52?WJ$&s~yE?5SQ zdLLYa^##K)XN`}*{}9)gR#TldUVsy0G@&NUAVCI^x){qCP~VErHlBxNOlbU0yux@X zUSoVemOj_~t8h&EP!paYLHbx-hMSCEz%nK@UV&v$sb9x32GrG92C4deEQ3_NIhple zrdmz-f($Ydsq3-KTp#B%jTA@zZm-Sz!R!!)%Z!{IF zyJ4AX)!ng7wdzzXQ?66?6;P-{=5;9)vMgCj?-}( z&LxvPzi08C5b5LaGUoC9;C++A>z*|%jDLbqeEzd>-FP+Y-vkoIoT~|O z!3DVDJnxHfx;dly5})Mbci~AKP&!V|@D=B%g8Z;KzJ$2WD?dAjae4p$I|=j2pl>kt zPl>Dr9E|0R)Q90j^GB#h;WFa-*K_AOYyJzdw2*o-u61VqWvV41g)`I)S7SM2_4Rm& z@k}gztnpj0j1l!5EPbrL14|dHm*A%81Z4i_0|*jiP-%t-u?#BpV^{`}`YCL$n&+_J zTH303%O!)jibT0e`t?W(Pf)LdsW|LnK7R}|9Ff9%Kn~EJ0ZS7NqX4-~)|&&!RZ@$K zbGZ!VvZUA3_KO@Ob zJY4MdPu@SW?!O-%vdZtDg&Sh*(9iAguq2oQSL1G%_yatJYZ+8}lld9Wr9%3KB<=vF zZsMm>o{Xs@@H`VAhdbx_^3KPx0+WzSLbLIuxWbI$t8mI>U%>Tv8fT;xcnD{h_!D@n z@v}JJ_@x6_|4U55>txtWfjW2pjO$JO58P_}54IKD?LZEAsjuK3xQX)g1;rp-ZLYEl z4`ls6hJAHhelZctma5(jSs}n5+6u{^zkHTjptz*r0Oehzgao$o`zeA%j_xp$CkSU-Qhue zC{3nMw>8ch{|L({R@dTed?*Q0;BE&+*7zP+#)!HrF2wFdWh@x#5;Q|5E+>P&D7?~H z<5%Nq;<{R{aMt)kSjLcgHMY+QYq5-pXyf_6oCFyIy2DHOF|1wigR{oB;Wvr%2~Bv$ z-FrvYcq*1brtXbpYFDRYnft>{*8lz_$keDA24R_6)kCpNt?EoHQ>%IuW-4uW4wkuI z<7Z)63)B;^OzpCT>;EJYWbThPz72C_)kRpQUiB<2Q?t4h zyX9NfzrXIen`TU$Nk*A3nxzT1tuKK4iu;}U4J~l#E->gt9|?;Ji){-$0h8q%k^D&rNqPI zQ-S3qRG1we#+@lpA1>d=^(Ou)PQ2V#@EeJn3hvQ|3Yz%dIKfnK7@j~pIzAN`MZ!8V zoDsGMkK4G&6fgtln*tuewuzs>bteDQxa107!RN8P3}41$9%KF2Z!G)}B}jj;#RuE) zOwMR`BooWNheQs;xEGctRUd>GW+=it|b%*)5 z5$j8+7o9c!3YI2Tzk#I-)$ib8IQrrdzp^QgnG8EgkS5k0g1)?n#O|w7!4b|HKN`!R zQxC?{h3a8=cLw#LBuEQRan|@$9P3Yp!7jtSB#1S`16ZyK^&{9_wxT>fOB+^_~2M9`PCWNR%kf(TT5HE zu~g_%Ty?dtK>ndIp8rk4HUCp!p(#NAMB^r7DR2d@H~T+`n~fjCE3WYed-}7e zgzN&JupZZ#Gkgu#8o!DAJmFj5Jv_+xLu^~*GwipPwygb_S*f73xXi4v1tiD;Wonft zolRKIV2#VrhUI`^7ZE?HCx3Wkd<&K{s&@Im!g9t9&WHEn505xOjZejLLg8ml^8f#o zkzi}|m8r2b@!z=Hbti{YuiTaoNRLeUZ2X=tP9ZLDLM1-SISk|5@E{Za!a0gx85ev* zLKbHv4JCtakHeUm*dfy&*y5KHU1&ay#C}MjRdLC5r;<(?y1i` zwgWF529S_T2HoLUoNt_gQwx23IL>*}KT7=*CuOCyZjuDPG0!s_a z#)897Ad?_FL|c4t2EGByIZGGZ;H>c&mIBqYv7E8`cHC&Z2nSS9KaHhH)z4#TQuWKY==Pj;Z@|-u>z7oToZW&SAN)pwbb%JoilqzG z|6*x!b;6NRm#8~o=>l~(Y_I$7*l#UuJGsiFg;M1FngZpr9EzKZ{2)CMSI_j$!cCN?gK#QtAl`n%aV-f$%;R?7(x;)Euv9~*APMo(NLY#^h2f5qEdtq@@goSMx&MWgC^LqI z@BP3z=(%p8YIkzXsviw69ODM#~V_k7P2;XGPIpHwb_cfdODzlHZ2Zq|wO zf#J^Zk#H6nNS9sjIL zhYoPs6wjx?^9`Q~4=nKdx$uA|JYOjMr01USc*B>$vkZq*H)9Q(8Xce{wCmp+~263l?3KGuarm_C)IQ!>2l zV!lic4|e=KEPbpQ?1rU}wLm?3@I@rLSPL{0mM)I`LjwMSLHbw|bj{)|RrV0YXV|ZZ-z`u*6Nf zVV82qq>oB)h#t4Y(udhjKkTyl1-uisEm)SoseS6}Lt)n>G@K)WS8e0xXQ15!8P#7T7S8J&&A*`KGk9jNFS$SltJ39A3qWS>q0Xf zmOj>XV<#+qtfRbp{}xdntN%<`x>)^p!J+i=9GAhxS2K;IkKLf0EleM#IQ?%}`gpM8 zUf1xs9jqD5hNX`+gI{6#xUN7KT+1wi)qm=>eBnU)SQBi;LHfAHWpL(z7I7cD0zD>7 zA9i&5!PjvHgmvY67M4EFb$a^sJg8jlSH9O^>0&LwrvLDT1L;Fu`OeOziOkCPFf4tT zIWE}!0TW;$TDuN&m&`i7w6pn49$ zEoN58%J(?jV7H%EQ{gnj)8YAsXTt;k@cu8rRdvkz`wE7^e|m@caQa`K--OEyzaw1Z z^%A(!@JDdg9kWSjPx{;G^1|VI3{C#=3BHC44OhY0d%gYx+_Hg8JrW{HZYISTZ!ISZX@JM3J!&f4)&Z1&pX6(dwB0* zo->5odOiuB_21~eK-NFL?S{dg0ndj0Rb4xVF(G}fE8$L9`dmlxMYnNYfOQ?21xugn zO87f0eXjnO+|Ji@==}`h2kCU@$8m zeXJSug{9B6Krh46=USjWuypyPsQzS_eJAr6gC=+mmOig>8TNEU;4DhWsr0qhe-OUgaC2|ybzW? z9OZ7WUxaM||AK7`UOKcsznsAT!n8+|7#2E!4MCMcntK(tDoSN1pXJcgX+o$>+^ir#@p|q`g{#s7Rtin zn*1#>7;g4(eeP;zg{*{w;NfY0THOiHH+(N#X*dr~JKFn?gu{WydP6>j{tNv5`eX3b zh6~_A!%x9>+RlRgRbBgMHZ4f}Qn!1q>rEF?fbNcOe3<=TY9LQ4W!k+)jim<4zrj+2 z?rzYXGMxRK0?=U5pu88B0_jt;kt16~14THsSW7i@l!=TBT6UFia;zqG(W4Bf>LT}i=R@S3QEaTm;hM;ZM^ zI2T=8>{GbF=o{f;!{3RHzrK!tz%MT1iD5Pdt?^B8`USo~cfvij3n*zo=EaKjJ7m5*fC`9A{BGk;d0USn8^ zL**o2qqVTiQw{J1Eb~}-6D;#wc{417Q29q#7B1yqU|HytfA1Q`E1eql;2@)1xfYhC zSGnN@@w8LkAC{F(`9N6KcI7s(Of%)SuuMbcqeBcb?bL8QEVDrQWLOp!<A4 z!7}ZXN5JOH7zSf7_=}gvIMc~I);pQiBe*YM_v(a`oDr9D#*;H#DIewvzse&VIYC7S z47eJWdEeiiss}v68Sz5TZ@@CmW1ao~UkozOHNj=0x$|M3>j#SyOabK(`6j$8%dZ3P zz|DJlUII@yTnhKO#Our9HOg}TzY0VDUfy9X+$!7idbr5&*TTKMUImvM{sHcMsn>VF zrG|fl^Dc|^X#cChu-h4ADgGB8)yD^D(2Wz(<(`|tov!fQO1Q7*L*W62Q{f?o+rt$x z%le;0fAdjjjt_7W-1SP&o#B+5Jf95@dB}5DxZ_CA7Ymy~mkpai7hD0ySG50B*FJa( z9~RT6`hekkSo(C58+2!#%5y%r*zput`c&`dx5Cn=>VM8@+^Eo{>i+~RT{_35{}GP5 zRGfiYc-V35j)qgB3 zT^iQ73^rnj`qWLE4rjvjQAejQgr!e)TArWD0|z+Q>C0j1Q+>eD>nwg$nl9A>3_lxx zx=f$6Zi49|UN|FwJYYyY2LpYWCC6;$@o-p5s0CaL+a^4wOMM=mz@NjmMUFYQev1r) zNA+R<*Ctts!L~r^dG)*CPS}o#Ww0F+hn-)4Oxz9IF|i!BW8#Re_=jc?-6ICWAHz04 z+Y9RReXtFyb8H!XrdR=QE}&`12VdK4}&{1}`%+Urx` z^@a=KK4ZK-1FkguY&Z7*!hG-WA`YD&_57;vSkDXKY{QG-V#7<|?&G}whwxs*AH#X$ zz5Yoz_WuSGyy0^kN(_GmFMQ1F-wIFkycMo8ydBo?F6mKJa`9yv?k1N5FQaI|}w!b?u5HTSQ%|3tiYLtwq$QI#0*K(x*Br zDq-nUU06;%ia|;rs{eRc`c(bDfu&35kgH7N&h1&aq)Xixnu5glfHi}Ou=J^B@IP4kR10)+I`f=9RsTm|=~DIo9F{Jvaq*8ihJ{JGG%675Z=M+F zvyRRo=~$lQ!Mf5-f~8M$oqo`9d;&tB>Pj~qmOj-2+?&B;JGh9OKWTwZ$MdciU8D=$ zJ+O3Pjx2QY`Tu7aYzfm(sNaMSCGcknoYA3vi#!C|7Fh$^7HQYfw?Opy|2-IN7kmWE zJl7hfoLGNM+y&b)Q3l&FarjB~$HWlW`mgXDfBv6(a{U1JCU7}y2U)vL^?4|42ifWb zZqIgZ_2cSh1^d6ObeCb+{h^;$IdJ(h&sW0(-|ZL7WemtesUo;ZvFB#pSx3see@i%L zk$+-x7JNIbx8DQdfpDYv{F59!j$s%EePFN{p1aT=o0q~b8D0)o8D0(VGW;1F5HG%x zgD>Iz4gU}B4oBx7#$oV11}U*7_z505I=ha4g{8!*{{c&ll>dRH0?J7ju~3CRePeiy zxwSh09=VA9U*E~hj16@G&V#2Auq760^4lD126w~H8hxf?)#t!(pzCkPu6C^YXYkTR zeBnR~us1UJ8YExLDU|@tT>(yXtN~7gE7A3t&h?H}9|&(n*T;5K9IHMJ-WB4YPdrM+ z0IS0a_-|MTO|@gy|AHI8zOQ4|uZF{RIA{&?F$k-}WAF*Ew$LKS zsxN`hLDwe!!LjN);NIxblTNy@O;*gRx6NYzzZM7mmTDFb!s>7-d=IPze9*D#Av^+I zoA@=ysu#iI(Y1>sa**;aAYxV30w2mt)n3!XKb( z1)g)P`b!~(RmP#hu{vykH=t`1CtVV=>W$%T=-R}mI#xXs{?o+2$+7C;Z5WbS*>su} zI#!37@PX+1z2D`IRbLIKqiYxZ=~(r>@X1C$u2;-X=L<&|&c;DUX@AEW;Ci@+2{6I2 z>Qmq=(B+&XUGSb`)l1=iCjNHEvCbC`t1-yht_l8vWo=j92iqgne%bYpRFyoikiBEQ zJK;Pviq6n^&yCGSSeEAK={bD(BOGYZBWC{%=8Wb>gUzN3Im&@yc|Nblk$`y7ol)aQ zIgpqDJz?2w<~jdjSoVfY=l?e>YrS$)Q()QbPJ!pU&5HFuDL4Z|!E(QQodeq%Utj{r z*KTI%g1&E)Duw;<1ZQB4fkK+;}3=B$1N=T55IPgq0l%y3ePh<87?tA z4X!Xe8{T60CD>&U#eWU1G5P|yG%7%}|0M^-7`lG!OIQl`F;ys?=Ul{8ye;j5eBq&Kp z@S)KqgB6A)gKY`^JB=>>yA6x~p_lR$Z7uizsnl3LP`D{F_!H#asM)z)dQ+kC1f&enmLM5MN2bd<=s=%c}b(Q?ouXtKJf> zL04`K4`1i`aCn0b<;0PDsOt{?W7r;NDYYPpA zw;25ac$eW(@DlQqdrN8Y*Fy}=*ZU@01fNWe(w##UoMH5z;Sb4Bzx8@ZU(WGHKN9Xs zdTr55;9R5Uz}-xXh9QRG#$f{dH5q81E`+BW{R4O{0Xn+^{sb>H`tR`JCWCf4EY(KO zfcN+o3xmEGb{L22;2WrcHtBe{$rrwbo`m;9@8}BfKAdj!kKv){GOeYFe}nC;sDZoI z`OEWv3=2u1gXH)tS*zhR7a#|2^}hf5T?hwow11PqYjBp~FW@;Fe1SK?go z@p4vFz+WA!{s$}tR{jT;CRR?mI$n5`8^f}WC?5dJ%2>DmAB;ifwK^OI%QRFz5|)KV z`50KHk#YxER!ZelV3~%>XTq{nE1wI?%Io%D-tWU83xhiJgk|klz6_R?Qu#_)_73H1 zVOiOfZ-8Z;P`(wGX{&rE%tEL8e{ygi23fh(;Xzo|0p$>ud9C~?ENj2=L|A5l@)PhJ z^J)0guuOB+XTxhsxc}ET9?BzwclZ=uM*_V)-{V*V)WVhM(J`GtdBQa@tKJEgbwv3L zSk?{YE^w>R7`kDQg+v{);Qod$g>NyO0}nNP4V(|RB!JASM;&XtiLk6Q%1^*yNAssq zpT;m32d&XZjx|9!EDMqHr|=f@0>XN@7`-bFQh-{=>fi9%cpXvR|62BcS*g@;AP%yy zD7S%SAyIA%%R-`jG;9x{$HV@ruKi+Mi)bm{jZyBb_KxT2HwBDVLhii2ni%pC3WjLA z#Bju<7Eu#NceC)xCZHS|FNbTY{L*_BT)ElvweZ~UJl_D@0^SPytGaeV$gPtED0e0N z9+m*g$58{xP;ag7Gy$YQQ{chh`wR==Nrq>@eP}V=+?K)f(Dl$8wi*x{;!-6Ahrnex z9EdGyJf5v|>&NxVd$%ZAt0(c=!zD8=y#QNDW$i?e- z@Tec$<9fLB^)ah{7To+tKSs`jvpzKY{~!$gok8a9lW@(iyb(d0N`@=pK}P=_o^H79 zf4EmP+yl-td=I>1n=ilv@SwQMW&P)8uP}7^$vcdLvwrqm02dg2Iy}#0@Dc0+M)5ut zHtE;E8$V**U{Fg1_rS$bdh!>;(YY)vJA8)6!+i{&3=cJYI^3KV(k4C!ZVeYi*(U|} zI97caJQqF3=`TBW`!Dx?7^KNH!CS(=c`kvAm->}&1w3Gv*Vn@14R3@O8r}?78Qu;z zujccA&F~KlnHZF7;em#m-ar=^J{aC&xGh{x6GuxcE!qRN1?~;^+3n-^g`0fH{(n9> zN*9cX4Xyym!5BD;K8mm8U;-?IRCx+K$nZ2+2A%59z~c=+4^KDz3Ow&a_J2+A1_l`v z%5THvh8GLVAd0T!U@068D#y!VyKbz8{Z(Ci9eayR!zx)>VQks9~wV3^=oOPv=5`ZweV?Y2NT64hxUGkdT&m6n-VXy&18ciHu{OL6bKmz9w{0L7n{3|^8Z~uhj z@LTza#^~+g`G!w`FUMa$ptuq)sngm2uftG7iS_mQ@$fcNgSX+zx&%qV5_pH9(!!#5_uM0k|Rpb&0J0knWi;pV1>Kf`-nKpB*W z+)f52eLMImbge*7xH#5j{Ywh2z))@yTnoQvG8_x9fOSy534a1NjZ!BEm2k>Ae#~rz zGYs#9H{!2daM&FT`bdw~U;Y>@h5ee>!3+xH&=x*I99#{v;7p@m4sS!(bznF=%IJ^6Md(_gB6tq0 zEwBleS?Bhj{%rB!(oEGwz{86{C{KW8S}9L~Wua1@2FpUF{0uA$mGbkj zEJVt$gcxKVtKkh;rj_#BusvWbhW*9wfIQAeu}sr)jB*BicnS|Rn5I?k?fBnenKk-A zqjLeDHN(+5z}<3qKL(jLYPjnO-h$oc!`%(9g@+nm57!WIt}8%? zAxzU+&-rkX@qY{+VhXefZgqt#fb9QEFs%Q_Zx&nOGFaE@miJI&O@RL)@BlcM0?1N( zonw%T4>I9}CjDf%1pkhx;=jYOc(eW|1;1g~W-_ROQ~GKX@d*h$;7ZR8?qyc=_uLE~ zM27Lj-wT3oGkhpK*KjH<1&s5jOzkm9jWs|9EG?pZ68yE{&Tz_Jub&NP814#Z8on5| zFQa9{@ylq@{>Puk#gIh;ebZ@#V=cfK_-gc)7-Z1>*Rkpg;Xy|K*0Jha;bG|d8c(bH zVs`s4f1wD&1XF+u9BY6c@Jw_)58Ufm^*s1x^rjf3fG;{${Z)7Yy3UgIj_daSuQ9xb zgB}<^cr>xt(K$EtUMKQrlXb*%cG@FtUfddx0=O8hK_Z8&HRS31@JYvJAK z+C_gmRz0}CVbE}&Z{iM)RX+u8gRY;94v5(7|2JYd1_yl^ZL(txFcm%rT?_buW7W&x z9_ZS{zdBa^5BLgn?V_{?;1Gj49E;&v6X0^ks`rC$G5To7s*i{7L2rXW#=zT-RbLE` zN7o8$fkQEQWJmPF!p~jsKbA8 zSOe=c`^vHE-@=>F^|Rq-c`>Wr3f_sXU2u+L)h~ee7=3Ua`@a~};a(gXuvY6RpY2%n z7vTfZHG@wbtG*siMb~3_tz*?2KG-lg%Ea#!I)gf#0n6^C+y$21Pq`Z`yPt9vEW4lb zrLgRF$~kb(=R-cB zf#^nr6HO`y4A~1*zYdnYLOE?3--=;-&W+-+{|~|-`@LpR1k3*1)n!-%%l@yg=XHIG z4;;{C8p)AsJS+zaLyjLSKO^OpWKmc}e~29;ti@4}zmUrN+q*bFMdhB3yB` zKcJinUrCF}DOpy=0r2$eMUVEMq~Hb&-E)0{Tj2QwY~m6;0WUNel)z~>c>j-J$soRx zgL1en{^B7S{_a@yJ+M@uZvU^vAT?BnhQs3;Den(YLO&9N1U$pB>Rn(duyQvz&&>NQ zSSq0UrLc?Kp<7Ab_M8=eW3nU5fI4knjvb;hNdeZv^G(1n5&~{A{xYUE85xmCm zJMivXd<{xqo8d>Wzj&pS47>30el$y1XUdH(Em95Fd;b5IagZk5XIK)n8_6*{nHFHJ zmKMo^(+2qh^@caz=J^VE%k7@~!2|d6E&j+z_WvkgRP5wnEDjks$WkjA6giG-l^iT` z0hHf^Z3`@g{ly<1Gb|OTg1g+|3$%44`+x3WZ}=I92KRgZ6)s)u`470#@IP>{#Oq1K zD=G8b7|vPl`2cvA;e$gAtyg%5!{APaQv_zmPzmO92Kj4dnoG%rhKFC}26CUk=JnzC% zpfv=IzW>+PWFR%Z8*cTxFVIl9a<}IP;k-XRkA!po@;nCa^S9^m@PL0jPlnU>zeMUJ z>t9mvBnDgK>9D`5YqRGt%E@4ttIp7yJX30)(0%-2{{t=?X72HMkfqJlEGK8(!c0lAxn|M`W_&xKK&KRJc<^ zR{++L_u=4*OM*4hMRfTAqa%*%FJs_f3~T!O3=V_m5g^*VNOB=uZ1_%io8jqjjp1c* zx#3^njfPXkFzXty|96unB7<&`!FNFxEH#L)ra4!a_fjZ>Dw$Dex{;ICcH!NK?2hM5aTWl4aahGq=3b?=F4RAP+1bIZ2 z7D&!#lt1JXG=ZC-$5(RD0&Z%!HQe3s;jk1y{nKEHuY4SAD|Avm`@g@cYe&ywlu`h9 za~O1ak*C>|I49mLg8N`85MwABSbv&i`}@pqI4R<@v1r zrKZMLC6w@5lR!>HxrQacBXGgPuD}#)wc|LGq@V(xi>~|yTuFiT`vkQihM=+Uv*RCS z>4jP7qAuwROM>`H4z7m(f~6kPWn&zxJ^|i~9<>nq+m2OV3`>5>;Zh9t0l{)u3ZM?F zVcTb)Nr1Ymy7o)M(jvdZ(}(*S?|}~@o<1`=dMtYZ?51@X^u{0#@s%9(h120o3{t}p zj#VGy0w_;_Z2_mi{;IB>W>^aNW<7uQ|96dp^zr+KCBawq5;O_EHM;n3H7x!~AE+5-&p2XCuuk55Q&vT=|MPB$zWT%O?H&*tKe^~csawUf5BmKhh1Dr(yecs<{A`cjhemLB3VVc%jkfOZrj1g73g3MqdhtWyVmBVU6L>;Pr;T zhARz!4{tHN1Kwfy4|uoXf8o7`n@nc^Z(vGz&}7Dd;Z(S_;bY-c!=2zhhR=r64R?n- z8om_nY`Fhq_Wv%%a3c=g4G)I14L<-6GCT^-H+}j#Y`f%5SQei6N)FzIWfm#FA7YSs zt%hZ=%v0r+@F?>Yi?y)K3e~@WW!frlf@KgYZ-&R4pW*lsmO-p~_zMPExzzAGEGv`p z9$2Q4axE+?p>o5=eb%cpXW1a8+mtZ&m2c6eHI@SQcz^%~rNR=`rX4TultYk5= zl&8ZTVLkC&=2-o&gk|B1F8TX^*J9|8L2EqLu_l-V%fg}jBs?6}m&@LFtokx|G`gN4 zcRE&mH!OozF4lj3^%{dcLInl&Pb_&Hqh=BYvUDfbF02I|;V& zJNxvq|M1uAydkeUGF>#xrH|?_H5y?ONPwZQ@Ua>R(#T%=e2md0;9PhPdUUJB+}Pn*iYw=dYPiDa zXFVCS>gU11=u5(QP?2DKY>0JuGTeML4;UE6^1$FD#~R>cIKP=cQ2YkhFsk){kvf$# zp3yIcGhkf@hQKM!%=7=57&1+QGU0qbs#n4DjQ$5a$LRmS#pt?D99zhNV=OnX7^DKD z9BT!}!m~m*55=Vb!(0-m!wh&00h?ivGh!LM0oH};SGdF!=C zFwV#C2Z!GgK+kleF{B!YiSS-@ZL)XZrUcZ5XEVIR6rlN2+}oM-hrq|-uS<1TIM3)k zpJM<2iU7Lu4aK3*IE;W>n+)f{MMi%UJ{(;OSP9QEE&3f?0_*1q&7Y1rZegCXJseS@1V@A0XoCQZ8<I#&G#SO%@~ts#a&40_6a(y=;B zhhIY1LAA`W>MLOxl*(&iyYzkm%b-+!6D(s!Ioymv2ALXugk_K^{{l-FDgO@3m{HyX z%NS6ug=NerH=G`i8Rh+98I+Fs{VxpC$Li1qmOfQ(3(Fuvkt@cI8}3{_@Oje~6llVN{V*G@Go85Ae@FEzTXq$>=I|Bvtv%}<{H z|B?{kcauN@>@h3>4xdrKfN8M5_}-6U@xKs0)wE!iNzeM4{(u7MK$C>bBGjJigesA~aSuv}g0nepIy3}3) z7vZmZKe%9$=K*j^3!eY$b~z411_tG~;Ht?!K`~tNxaSYxjfTtM@l(9M3f@-WxdPs0 zcmuq;X*rUedtmZ#x{FM#J2`hY#))M=i3!?O(cg@-=v^{e55 zR6r~IA2>fWhMO@+4b|ZexDz!}z6X{XDi4Df&h|V4UT=5|yv^_gSXx-qPk}=jH1U-j zOvA7MJ`001(Nf2%FNa&1S+W}5X3~EK?}hcpY4$qS^vTb~gHE~0bMpB=O{|6%IAj`b z4QCrZ9L_bI21}o6`eR|~LgkLIbfNO8aEal}=fe8)`aB%`#pit#+tL=p) zfO5}QVP-)zEjcAmgJsmqdqZ++-U`d8=R>lH2hQiua?!<^j*CJJ(#L7eun(3#Rlej6 zemWJ_Pef+I(x(N^zq={0EIc>B^Pcm4d<)#FrJvSMz-flV5)1_|_yixponG`@4zD-- zDV#Ug>+9hn!(YSOUh;YsT=I(NAK(hlVX#9CH0in2NCw@Zb7BU$c%Kh0Fu&u`9+n!# z7r$%E{vNJ?kEa^aVlAGJSzDkrya!!hWIo@q>KDOM zV7XX-lY?Fuq{Q*Xb`0Al>j(R*y7rFOcmu_Ab zX#Z&v6qx`La4XYH5|mRQna54vhS5zz^&JOgg#{5Qc>#(y*1$#m&9W(dV%<(>&@yCc!1H%;F?xE z|JMV@uNdYVhZ?xVaMIj{!AYh-9pN=bKONp>_tTVN<$*~;wy&td3p z9A1S}2%t^89`0lGZ{RgFp;n;jORNh)uaxarH(=)b6d@5XN_$+t_tjF+yj@ADT zm{DJs{@xHn6IwtY!OV873Fg8wXp~=vWl$==1xueRFNS57D3`)A4V6EJWsE6@pJI@C ztcEXOnKsImu&e{h-@`H{lz)b$kCm%o=~Cqy*zP5@u)nIq+D7xdL6*|v;Zie5P7=My z53)|zZ0g{99aA%{x1rJA;T1x>d9mlm!4mQJ5fasF_{|5|GVs+RKO9sl-u+&)jFIZ}< zybqQNDDU@LTw~>?uoO_aB`g(^E871L!C?F72-siMwMQA2E;<)3Sa?Y=A1Aq4l}k9j zl7hufSC)UfEb_Wx*?*IQ4@h7g%HUE;m=dYU!LM+qgZ zEb##nc{~1AuZBCd_6M5O1v~+vi*>v1v4H)*N$DlQMuw>tKsdhQCbT?*0G6MFM-ecM z1TqL$!DZUV%&HDW%qny}a!K5(k8FI#pEX=X0?U#hbD2*t0NwJ9a19xx;3ox`47Z}j zx(-PCL1jLDA{U1wNOZ_cNYH6{{Q#CfAiZVDplgDE$^XG&83C-rDmX2n2Ax(U6u|Hw zQUJqJfPsepLARXrCLeYa-?doC-)H0q<_$qVIPVbOXQSa7blZo6SJp3(T6&bl*;R1 z>0-GU|NMml3^GsSi?tl?0_$4c^zE2cZwX5uDjxz5f%V3vt7FwKhKHk{hCy239><`p z|H;8H3^E4dizb50;S(`Pf_aWr|1T_KLU|z^(8s4c|8E_uz7>`+pu8Q>c8}!wlL!=n+f(r3i9$S>;Fdl{i?w1|CI$ zQX=ossfS)&923Htf1y{kkPW&Mp8i#){NDZ|B zN$>Iz39NU=9UZHFDl9FaoC!;dDW3;Rizs)8rA3r4fx}tmZ!-14kb*;9lR4G|kHFG| z%Hv==D<;GK;*(O?&WZ`|@J(n69G|$@uHR`9Mok!H$dPORcljfdIOv(};AMP+kx`mS zRCx^79hPa+$MN-LJf>q%Rg$mh_b-Rdcgfy?rAy>fHF?fB!xS){mW;ny>-?x*go9s8=$51Pua9w9g@a`YFwp42MTRTzPd8n%0q$zJ61H9R z9qg~_+He~N+ef460x3W)Uecrir(&s57sr3mq|!nej?Z7g*LGpmKZm6N+J#qs%omN| zRQ#n2cA5gv1!1%_+8Q-0W-l-`Bwa9Ty>H@H=;iEo@{tO!q6KHcqGwZ9Jwsam`<*Uv zB*nw2wTW{6|a8UM+_0~n-9 zG{JBB-n+)U)8mL!gf$@ zSlB3Pp-h})P(IC|k}o2lV6N( zSyEM)F6o7CS@cd{)*myL``{mOl)vlap$Q2rUqu4Tl0lL2AAoLI^p0QGFM#D6@fVKs zrvQU6q#f2jm`g(G!yRy$;ro{GP|Eb-gK&l65Uw)(D7?$?L^x>U$G{VC<2F41kFVt5 zX$;Mc!)!R!@QZLq!>_`p8eRa~-*{RCpNXz-R#iFH{C zs&{j&0kYs*(Dgmv`y8wOAe?6kFxRo_ufY>S9Q4@yg&1IU*aT05^+eO?{g_p64nK>o z51Y?)topg|tLV)zNS6+BtomJW_%;qY&u3r|R)^={QWId6W7R9*RVMvEj#W?kpkeSO zx>m5GW7SXnfcyXNanL@x4hLa%xC!13YZE{2SoK1u{tb(pGVit<7>yNSHTNR z2K#>)v+4)JOVD)|b#d(UFzAM16%P6&^G?Sa;6C_&=-LI(I#zuyyv^uq9jpEY{5!f1 z^5CPGW1aoK5r%-3PBS>gu?9F3-XC4I5b1&&9jiVFZiTKHOm(dK3|LlHYhhXYqb`9D{1lzt zEXTD#iD^OI&PSQua3gxm(f%X1A8ePK61Gdj|06-7KDe^Jzvb`ow=D7V{#V~WV%`6L zB0-|Vq;GtJU(p90?g!ByaK7Px;8})~ma%dgZVc}=d;r}12=n~^U<`H;9tQiXy7ov3 zkfR0IFL?4j-ua+Lt>xIwAp3wZAp!NxsIhd3H1T|bhiqwNset?bAANXM z1%F1966($2a9B#LV_+#PEf77F!vCw!xDkP)4hAYgC$9z~?L<7DBKWDfYE;0N8yxVZuGWP$y z#;^*9=BYkl1#BO|Y=B!Ey%J6}{2koZ@HRNx@J@Ju;oZwZzA9x5f8#LEa8Oo%Ry2nF zRbATxwzHybF|X(8%_*NLeFV#(>*z*(yTvSQbXoMB5N5?MVS=Ia2TUUhpex%A>-ha% z0>-nVQScTlV<3xC$h2zsIcq&FsI%r`Sh`GS%{W-POqRGL3bYoME>QpQ!1YWslb|mw zO>}IOfOkS+X%P+hB`jT_0S^0u8o_Y}eB%L@CRhL2unfBB{J=E*29`0_GmakyBR8~& z22ER+VJR$wM&AWX{<8ivo$j#oaYyGr7M3p50v}?!NY?>73r<1z%=`ax4fx(qlSDp) z1c`drt@ZsapM$?;iI@LFeg8U^`~R*as58J9!Nt@lg@kh8kgLQ5xEtN_{cuHs|8C>| z9J=L~;BC&I`m>#4==fv(&+~=jD=D~Sd8{kTzZ;F7$bIln)TpFhw7cVUnwQHP;$r$Xh%!9%d! z9Y?|bs;(Ui+jU?PPtBx2(aY>iQ(hX5#?Ti2E7SHgSh_q@>Mw>Qb~CB*EXVi5GKjjn z1oL3&^Gv6gGwNj&?{NGNEPbqc$BnETGu?3?fn z31C>{g8zfx!aq@OwcW>i7ab1cQ>hyR*5SYvk%Q#J6_1f@6W~yE%c=0-H2(nOaY=ua zXNfYzq~Gsj)`9H_`+tKSzJ!v%a#IpmZVAslvi>wp+gU%o<+Jg(+!Y=j5@N4}7S-yw#p*2VWS|udN`agIW0TT5=yXt3Xc?ABJ$u11?tLrDQ zJcb08rGWDj{8N7O=_lZyYCh1I0tapV^M%EZB@Xj0So$&h|A9E@-S1C02*(#M9>GV$ z+C_(z$E^C1@EIn3PsgfX24|t`z2Sq7RS!c9SK^?z*RMHNha&hUbbYqF$+7C2;XHJ` z|8KrBX4MaZ^U?Ltdah&D!wWG?F&W(DSRIDKbB+F-W7S`R7o+R_eT8GyH^AlSTEV1M zF*`jB8e`aigEsN0jx|6g{1bY#ztd+oIad8PxMe&4dqIVcRi6p>K-UkmmphJi?*CU~ z$i+b)vHa;+1MG!|p=%Q#w>oCkPlU&y>ocJKj#a-No`l{EgY32w97np`|4+g2lqtY_ zjx|6j{06$#V7p`0tKk*s+Qg}AVphF9ydGT#VQP7JF=m$vsr2w0pK^->3!%POvKaE-SgW%EV$|>+P z&Ie&I${EVI^N|BchT}u{j7K(?Gd z#vmMDya564F#HxQ1ysElZqVNI2XIHjWpH=HtKc2x`9Z~6?*DU)!v-AonqRxAgzcdF z4)#}d?Kbf@52Xe#rq5||{jvGScwa!eqz{Q?5O&|h`vc}~_{mND{a-0Sv{KRMU*I4G z&?liOl`Wzg%Ak}naV;!0(n0tvEHzGX`c6|o86(Xq>Q|r@?62zDLqiO<2C2qD2bt~D zOmxcNjfg6iMki@1fN`7dqI41+YGI<$hjz(-+_&Ep)$s$T%h7*Xy4 z+iBbz_7}e?0o!Su{VspT`yajkXI{=@9?P`Qd3vo0Ak%UfoFDa>?=s=|N(z2-y0ZLR zVe~}afqzAE=mUtu@clej;~<=lUB`&kkKYjMl1>Nl9FzVebj#wkt$~jpacB&kNs#EU zw_*JRme0oDa#y%@y1(1K13m_pPLeK^YkZ^n@j`2OiUgKt!IK*Is`rlP924LVbj$z1 zBgjzC6Ov&j>EkOYIQC0s6&!VOJni}Wf5zbz=b#DRfX5S1PedExT>PW8Jq{4D`VZI` z>&o)4R6zMgbjyP_a{oV_40Ik(#bKdgNtn^Z2T0@(@V9yyTtRw$W%F0K$uYhHl72{2 z6Hn%!H5~pGPo<1Qny{H>$HJ2gcZBB}J{8_;I1_F_f#NGUI1dh#eV!$!g5OF1NRcN^{Zobf(`Wfr91 zAP0ucobhCoPj`I9|6t~M77;{$0G5R&+OFZ&-|(3aT_EY@%-9c>F46ciVd;`+P|M%{ zIs03l<>H{9Y>t4XPxX_{QrKp&($rX1#vO1uW2Und$ju7j_(}>+`a0H?<=?%{Vx93P z4dD&Kr;$J%gfn5=2#2nhbDlS%MCw30?WhUA!d}n0vE#3C#7V$4$e0<+y}2Q zEb-?Z?hBmpE%*Oou!F`rOvb_TRJf9WdJO*nmQfsE{6HZrV?=os+|h6aoM(8$x7`1a z#~@{jPAFAuCdQ!=EMq_eHiu=5C?5nfi0U{6mcMwUdONrQV?a3_&Nh64{4tpU#?T3e z!G_O(pN3_N5iHY6xj8JOUilz+CwwCYsld68RSz%3Ak#t(J>gu#m%;XYa3w5*Q2nokWzZ?# z0L!3Mz7>{1sC*|ZW5{tB+=pS8Hv|vDvUY2N5Vo7oqp-iKYbU~X^VzzY7mrx$C4y|v zCw|BC0a)LDyC0UNI5X0@|Nk0;^mzvivR}9Tp3iFGXkCDFVHvf`FTk?0)o{p@3_5J7 z|7W)Dgk_Mae-SJzX`w67DO-7FL_8U$NwWXnhe1Z^#jXHPm>SCV`7T_=G>vLRFUlnx zUrE7X-^IFeJ2-yKGGL3k&pVG-8RJGJL{Tbo`?+M1ik_D`0K%QE>AUJiiWi z7G3xM4H#OP1W7+I$_;mfXBqAXcQ-s5E;alHoNjm{Tww~l-;X?&L$CY&pOY};m;_hD z0}bcHLk%y0^9@TMr*!ar{x!M`y7)>CzJ+B_DsO>#r&Q`MS90(Z1{rkm#TSL(O!#ID zG6qt%#jJWeSO%qXIxK@w`2<)7sd6V+T0r>>xGIDFUkzO_NS`WqgQW|Uvta2WW{%PsFe#~ z8THCf!J$kGHO#^w(?1s?YE2KZz+2i9Liyaw)W^nAF`@B+BCVJTqgnZ81a{1yJHNBiHm7|IBs z&+VG+Y#4k3%TYr{>FMyNhI8SC2^ki3@fl7;7cM7&c8S&3Ii2wF{* zWRQ2B&)_6<;YuQC23Eh*=~8p4!hP`WgjtqzzQl{hKVLq_K@8C|ov7YH#8G;<(&@_b z@2sxAK;NMY=bIW^J$+ZK+w^JONFU`-1}ESkh5|FsBZnwOQgEZwHNYUa!O4D5O@-49 ze*m{OEa{56`vU)jE*uUt8Cr)9)v<$ScnW+S0d-6afV;!`Qpz~EbXc#T0bc^qE@|Dv zXZSI?@Bot^9M@m^sOfL9gJ#$g?tW{pfDbO}0uJfv173##L)@ChV9es9m)(S=8u^j1IX_gI&7Qo-}#>rD&Z4(|#XmD;4@*5ERq z!89C%JMn3>HmTLuIbG681{>iqWS|Sre!Ju}JYu|t%S04ea>2`yB5tq*u1x^OuO zv_MuL>vWAb3GRP0EudpY#{c*MKHxeWgriThT@9>$$X~Ip0p;HT*ZK5`d<6bhKMJ06 zllKohU??&B`{{6{33wiycfC)L1>bC1`rEpbvu*41IEa zfEDmf-XW-l2O3VT;Z$t62Yf56qyAp_cDU{r72$i0e>r?l9kc)cj-fLK-JhiirH|q( zDQLH+ehVe)>FCy9bXmCKD;|WFPr$#9<@5he7*cQd3CAOA%7e%Aug`~Uqh6dQ*d;bG1}0#1hWV11NY3uYt4g@ELA^N11p@|1=C9i8+4%uOo)h#-Sg)%>=jse!%F`w6f5|S5hzu-L_bw z{v^8fpAL_W;xYfEhRZOF!=Qs^Cp-t%CO&L$!{7y22U&Nx0JdW$?;c;EyU~TS>J}P~ z;YR<+>2>?RlsH}ppqJB2J)}vjM}({R^OQK z{ZB&g!;OeoWRUlF9Q!8+*TbRQ3aMcr2Dy1uz8#i38Ra4H+wct-B;ZWPs?UMtMnw5# zSnhO`=fj;1zg5fqzueiVLop6HhChG{4VS@l4X=V18m@rlMn>apfaOL;xe}He8RhS4 z!}!KS4cl;#8xQ53u-xA(?}p|6UioiWo(CugtdSY;Ss0{+IyhGS6gb~J&ObB6a03b2 zy975n)&zs#G3fdW2~!=bJ_D8q3d+yH@;pKLCAbXMg{#7`>fr_qALF2-Iw>h;b!ZH) zH2SHIRnLT1n+$Gptom*6r$#Sy?DR00iQzNju-vf*SPid7*J=5uW7YS2m+y z9>Wgf(A%*F=nMaft}Eq8$ExSUyU>*%gR4!vMUGWp0?Xa7T&(}e!G{>+W-`9`em*QW zkIJ9Ga&xKtIV>k8<*(o_=4&_K!g6n@`c_!(9hJAkawo(k`%iLEjX`ci;ww4$3zj<- z<$bW636=M2&?q_+DmR7YP^#P#mNTL9A+VeYl~Z9k1G@X~?mJ^h64lGAFxBv2DF$Oszsl$!19Fdf7gXM&zJOq|| zJ>_AroM@Cs!g8QdeiYtl{toCQSPn35|L5m%G02HW6U>C=#H0K?EC&wdd9du3$_rrj z^E!S9mfchJ_hH#RmCIo6tX%$#fz=om8HaVS?1q})D_Bmo%2lwOdX;~K?X%&Xu)nHn z|A6hY;p?mTie_i_{}eeO@HyU-801!IuROtk_nH9muvmiG?X_(~n$&E!qHi(W9(^GN zjNbd9g4uA|DfPGajPOyvUrT@t!w-=to%J}oA@W#U)8n0!nTS3FuJy&E$~5&8in<0(54Z6N`@&! zmF@EaxPTgVhxPVaIKGmC$DOV$|E@RsRCM7%ES;L(>Sc|1|H~RAK$meogG63Mz(l>q z_*b9{&my5_X!VmC$GXIoDn|3KaJ%nf=s+*)W2mCXrGmu0-ozh@UdM9(^B{%+^r0>kFT$f>dmm6?0(^pQSt>C1G2g_Aybk|FJ#S*{ z&-yFJ3hqvwLHJ7&SQfp@r1}|H{vZC9#Xr~he~+F;h4c`6K+~9Ull4D2I2ePpKztBIf8$Wkj;>&ZUBRvavEhv$$W#rYqyKie@J zy`)O|u5dA|gZ6ef^Hk3gzyISt{xtOdr?UTdZ~;p(WSIop#eoENDYXH5Hji})tb=&B z$>1_{VfzEeR$mb5=Kf#8hlPfnkfWI3-hA9}N3r}{e`suKAf$}-9w6O98a7Z828G2wC1M6ox z_d3=Dd9c(_c_eJ7T|Vru>e|O(JM9XLF02$Z!fAe8 zIIsnq5v+qwGGG5x{Vue84*r(AwqXBHd77tK<`WCy_(}@yB7tSGPkP4diF_aaiF&75 z_5CeB7?QvmB;fjl1eV3$viRrCuAhPBNAb5T{;AJ;|7iWOhKVGwED1_Xf<%4-|3rPj zb3Oy{xBN8zhU4|G)tveXEYBu^WeHf8;BWaw{4I^Xo%>ua5PrUI6M^8lH+qUzKNm&1|$yO6TlzEuklFfx0uQ5-nh2twJxXS6u z*TNNA1F{(iZ!!LZ;RY}I^h4nRb3KoM2gNM?pA?M6Fx)syf%6SdhYJi#L595S13r&# z3zVq8jBfo!pBJT%#$QtKIu5Zxq<9Rpe${6nR?9{BTV4bYp6|W`;?fJpR~*msUgux8 z|BGYF8}$=dPHM$Ml%UUFP~YEjWBe^20B65tK6oTQ;duVJ5{n_el7h=z0_7{=A)Wo7 zR2F;YLhql*A^wT_K;!=?I_&ay1t>EP6LGLC8I&xlpP}U^@V6}f!MpYSEkBKa@NUBX zKfbtr0?V^WU|Hh-Kg!Mp&Z?^V;|E_LFvB1NBMQi4RPcf4zRyJ-ckax<%z%oCNj`%6 z6cv?>(u%rR{F6%ml354K64R2>6wAsI-)LH-m{gcA>~BSi3QFYz~qha%go$6 z(EJyT5?uLcz>wr;;?F^EVzvIh$4GD`1SXaYR&DB@p^2}8 z-o!$`p@M$RW8Kr6_?i+Km;sW(n#U^=82B4PZ(yO{`kU_bCcXiB6AQidL_lA<2?8@f z;tzi^AgIJYfZmM19W3L5_jiDGH+Tcs_YL#B#(w-O;LQPj$@&KY(k*;~H^4g${0_MJ zi()JkTFOPhOt2Uz>Sq7yzo_^|G?=@4-6w|n1ka4?&e4z#Ao^vF=Uj`>pdesyo+ zNQ44e5~}I-G_WwFwpvW5Uk6JQ_^#QS-@+v$O`wi!NWT;;5>-#R!27@=F?rx9`8OF1 z9aLia74GI4B9B5~Vu|1WyY5Y5;%U&ESm>|c+@0RUDd>I7_&dOwO+W+@`j+VE!}RGcfTM=uIs2 z(LZ#jH}RjK_pq9OuZ&4*6taYc;E<>t|I>2K5!lMmGRdLy(*s~M?jzg zgmv&}@G2PcCyO?TH}Iw4TMhheaNfX=ftMRta$WLVP@!GKHxloaPfPz>GBCQ?Ua+*e z_jiDGKqKACz=Ob|BYu26Sait8jo`R}j{rLc9uH2&jPw6v2sqgwH~~D}z+v!A13TbZ z2A&C)CiEF-1GgBs3!FCad~jJzU76WewnThK*#WVsx8EaC1C3a+wJp4^|RT za^jB2pkG4#HusH-XB}C(grCzP6i9|5Cj1tGRu0%sPQL=H?hPIdNGj5<;0u#^Wga~?2nN`zucf-Pkb56LHnHq zEUrkf!AS5N@g{y5ysUzLr$IlsiKU8x8^B+L-k4Cvju8QK*IxPySh;Z)k}>)=&j z-|TE7cnf&Ej^{ttf|mmcRN{X?Um3sDpnrpSjb)%8V7)`YE(-9EjmI6%Jmv%ic7ksN z`wT7zZvp!vz6pFTc(Te(>d8{)uK|O)GB_Ih@iW1qgg$Nq zn*&o9IQZMWZ$8)@nCh7amzU_L)1i`iX&KXi^m8A7)X2aexlFD8B=IKx40up7=oPns z4>zzd^X~rzy+Uxw4EQ|>Oe_Q|{}v>8miX<|_-MjKR5BAk1C|2E%j^gq@vnMS;E5Wa36>fO3lje=uvADc>;!KEONAcM z^z8;is!65)nIg_YVB#gdV?~1P0ReuDQ91)p z2X|D^&-+Kf(D}rh_+s$Y(EHce!qA#BJ@emM2!a3}U4b8}NU*h>V1V@`@g|lG2fY?B zP>G+0zB0bSr}qqvxr6ir=veY+;y;psiJu3*TEXCrM*2g>F_0N}D0p(Jy9BoDcs2he zAn*gwTgAZYo!x6>;u+AJSQ6Z8(6n*TfoyZ}i$z{-%o#OH&bq8s`yMy}IXsHK~&6?)<)f@EZT zRAUtleiAIb!pBd8mx^hkDj$MB5+J?6CwLy*4EATMLyq#WA3qd4jds3&9}*guzQR_R1$Z#MUDOV zSHYsRK7Jj%a~AWzZ<9P~yb352j0KC<`U#rB=E!wCIQZMWFAO#ZuID%p6CJTx&B^R~ z59eK?>Wt_SZd5wKJTNNt=w0Rxrz4HB5~Z-bYmg967+q*oZY13cfrp9Ejk5-{{V zaOqY8e2$+a;2yC0<_R3`0dFfu8`!b%oYRd~1;Z@4zdG_dNss zdlK{iy+#HTnpsqWeb>PAz$qhMByz=pbQ|^Obz2i(4!wz2fEOZRzsVku{0)Zw*<4~b zY6LVMO&c3{7I>Y3F9feK@HfGW4g3&zrGZ}uFEj9{V`vfsx0DD-839tUrNg_|(8Noj zH?h#Ksi4274}2Nv&3L8%jU$2ruYf?b-21}?30Oqv<5ghMdLMrkEL!j5HDJ+tAAbuh zTJPfTd?Z+u+>f6CmR_R% z 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%0A)rhAxfJRcBlj2 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�Y}fdujCsf; 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 beyNWqOxHtwaObm+C%mU?TkPjiuch$=RGt{L diff --git a/prover/bin/host/src/lib.rs b/prover/bin/host/src/lib.rs index 928db6cb9..7c8147173 100644 --- a/prover/bin/host/src/lib.rs +++ b/prover/bin/host/src/lib.rs @@ -145,7 +145,7 @@ mod tests { std::env::set_var("TRUSTED_SETUP_4844", "../../configs/4844_trusted_setup.txt"); let blob_info: BlobInfo = populate_kzg(&blob).unwrap(); - let (versioned_hash, batch_data) = BlobVerifier::verify(&blob_info).unwrap(); + let (versioned_hash, batch_data) = BlobVerifier::verify(&blob_info, 1).unwrap(); println!( "versioned_hash: {:?}, batch_data len: {:?}", hex::encode(versioned_hash.as_slice()), diff --git a/prover/bin/server/src/queue.rs b/prover/bin/server/src/queue.rs index a32609d74..b82e1bffc 100644 --- a/prover/bin/server/src/queue.rs +++ b/prover/bin/server/src/queue.rs @@ -117,7 +117,7 @@ fn save_batch_header(blocks: &mut Vec, batch_index: u64) { blocks.iter_mut().for_each(|blobk| blobk.flatten()); let batch_info = EVMVerifier::verify(blocks).unwrap(); let blob_info = morph_executor_host::get_blob_info(blocks).unwrap(); - let (versioned_hash, _) = BlobVerifier::verify(&blob_info).unwrap(); + let (versioned_hash, _) = BlobVerifier::verify(&blob_info, blocks.len()).unwrap(); // Save batch_header // | batch_data_hash | versioned_hash | sequencer_root | diff --git a/prover/bin/shadow-prove/Cargo.lock b/prover/bin/shadow-prove/Cargo.lock index 539489b81..e671567f5 100644 --- a/prover/bin/shadow-prove/Cargo.lock +++ b/prover/bin/shadow-prove/Cargo.lock @@ -30,6 +30,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if 1.0.0", + "getrandom", "once_cell", "version_check", "zerocopy", @@ -67,9 +68,9 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "alloy" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8367891bf380210abb0d6aa30c5f85a9080cb4a066c4d5c5acadad630823751b" +checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" dependencies = [ "alloy-consensus", "alloy-contract", @@ -100,23 +101,40 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "629b62e38d471cc15fea534eb7283d2f8a4e8bdb1811bcc5d66dda6cfce6fae1" +checksum = "e88e1edea70787c33e11197d3f32ae380f3db19e6e061e539a5bcf8184a6b326" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", + "alloy-trie", + "auto_impl", "c-kzg", + "derive_more", + "serde", +] + +[[package]] +name = "alloy-consensus-any" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57b1bb53f40c0273cd1975573cd457b39213e68584e36d1401d25fd0398a1d65" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", "serde", ] [[package]] name = "alloy-contract" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eefe64fd344cffa9cf9e3435ec4e93e6e9c3481bc37269af988bf497faf4a6a" +checksum = "1b668c78c4b1f12f474ede5a85e8ce550d0aa1ef7d49fd1d22855a43b960e725" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", @@ -129,14 +147,14 @@ dependencies = [ "alloy-transport", "futures", "futures-util", - "thiserror", + "thiserror 2.0.9", ] [[package]] name = "alloy-core" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ce854562e7cafd5049189d0268d6e5cba05fe6c9cb7c6f8126a79b94800629c" +checksum = "c618bd382f0bc2ac26a7e4bfae01c9b015ca8f21b37ca40059ae35a7e62b3dc6" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", @@ -147,9 +165,9 @@ dependencies = [ [[package]] name = "alloy-dyn-abi" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b499852e1d0e9b8c6db0f24c48998e647c0d5762a01090f955106a7700e4611" +checksum = "41056bde53ae10ffbbf11618efbe1e0290859e5eab0fe9ef82ebdb62f12a866f" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -175,20 +193,21 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.1.0" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d319bb544ca6caeab58c39cea8921c55d924d4f68f2c60f24f914673f9a74a" +checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" dependencies = [ "alloy-primitives", "alloy-rlp", + "derive_more", "serde", ] [[package]] name = "alloy-eips" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f923dd5fca5f67a43d81ed3ebad0880bd41f6dd0ada930030353ac356c54cd0f" +checksum = "5f9fadfe089e9ccc0650473f2d4ef0a28bc015bbca5631d9f0f09e49b557fdb3" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -204,20 +223,21 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a7a18afb0b318616b6b2b0e2e7ac5529d32a966c673b48091c9919e284e6aca" +checksum = "2b2a4cf7b70f3495788e74ce1c765260ffe38820a2a774ff4aacb62e31ea73f9" dependencies = [ "alloy-primitives", "alloy-serde", + "alloy-trie", "serde", ] [[package]] name = "alloy-json-abi" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a438d4486b5d525df3b3004188f9d5cd1d65cd30ecc41e5a3ccef6f6342e8af9" +checksum = "c357da577dfb56998d01f574d81ad7a1958d248740a7981b205d69d65a7da404" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -227,29 +247,31 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3c717b5298fad078cd3a418335b266eba91b511383ca9bd497f742d5975d5ab" +checksum = "e29040b9d5fe2fb70415531882685b64f8efd08dfbd6cc907120650504821105" dependencies = [ "alloy-primitives", "alloy-sol-types", "serde", "serde_json", - "thiserror", + "thiserror 2.0.9", "tracing", ] [[package]] name = "alloy-network" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb3705ce7d8602132bcf5ac7a1dd293a42adc2f183abf5907c30ac535ceca049" +checksum = "510cc00b318db0dfccfdd2d032411cfae64fc144aef9679409e014145d3dacc4" dependencies = [ "alloy-consensus", + "alloy-consensus-any", "alloy-eips", "alloy-json-rpc", "alloy-network-primitives", "alloy-primitives", + "alloy-rpc-types-any", "alloy-rpc-types-eth", "alloy-serde", "alloy-signer", @@ -257,15 +279,18 @@ dependencies = [ "async-trait", "auto_impl", "futures-utils-wasm", - "thiserror", + "serde", + "serde_json", + "thiserror 2.0.9", ] [[package]] name = "alloy-network-primitives" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94ad40869867ed2d9cd3842b1e800889e5b49e6b92da346e93862b4a741bedf3" +checksum = "9081c099e798b8a2bba2145eb82a9a146f01fc7a35e9ab6e7b43305051f97550" dependencies = [ + "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-serde", @@ -274,16 +299,17 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "260d3ff3bff0bb84599f032a2f2c6828180b0ea0cd41fdaf44f39cef3ba41861" +checksum = "6259a506ab13e1d658796c31e6e39d2e2ee89243bcc505ddc613b35732e0a430" dependencies = [ "alloy-rlp", "bytes", "cfg-if 1.0.0", "const-hex", "derive_more", - "hashbrown", + "foldhash", + "hashbrown 0.15.2", "hex-literal", "indexmap", "itoa", @@ -301,9 +327,9 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "927f708dd457ed63420400ee5f06945df9632d5d101851952056840426a10dc5" +checksum = "dc2dfaddd9a30aa870a78a4e1316e3e115ec1e12e552cbc881310456b85c1f24" dependencies = [ "alloy-chains", "alloy-consensus", @@ -323,21 +349,24 @@ dependencies = [ "futures", "futures-utils-wasm", "lru", + "parking_lot", "pin-project", "reqwest 0.12.7", + "schnellru", "serde", "serde_json", - "thiserror", + "thiserror 2.0.9", "tokio", "tracing", "url", + "wasmtimer", ] [[package]] name = "alloy-rlp" -version = "0.3.8" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26154390b1d205a4a7ac7352aa2eb4f81f391399d4e2f546fb81a2f8bb383f62" +checksum = "f542548a609dca89fcd72b3b9f355928cf844d4363c5eed9c5273a3dd225e097" dependencies = [ "alloy-rlp-derive", "arrayvec", @@ -346,22 +375,23 @@ dependencies = [ [[package]] name = "alloy-rlp-derive" -version = "0.3.8" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d0f2d905ebd295e7effec65e5f6868d153936130ae718352771de3e7d03c75c" +checksum = "5a833d97bf8a5f0f878daf2c8451fff7de7f9de38baa5a45d936ec718d81255a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] name = "alloy-rpc-client" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d82952dca71173813d4e5733e2c986d8b04aea9e0f3b0a576664c232ad050a5" +checksum = "531137b283547d5b9a5cafc96b006c64ef76810c681d606f28be9781955293b6" dependencies = [ "alloy-json-rpc", + "alloy-primitives", "alloy-transport", "alloy-transport-http", "futures", @@ -374,35 +404,47 @@ dependencies = [ "tower 0.5.1", "tracing", "url", + "wasmtimer", ] [[package]] name = "alloy-rpc-types" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64333d639f2a0cf73491813c629a405744e16343a4bc5640931be707c345ecc5" +checksum = "3410a472ce26c457e9780f708ee6bd540b30f88f1f31fdab7a11d00bd6aa1aee" dependencies = [ + "alloy-primitives", "alloy-rpc-types-eth", "alloy-serde", "serde", ] +[[package]] +name = "alloy-rpc-types-any" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed98e1af55a7d856bfa385f30f63d8d56be2513593655c904a8f4a7ec963aa3e" +dependencies = [ + "alloy-consensus-any", + "alloy-rpc-types-eth", + "alloy-serde", +] + [[package]] name = "alloy-rpc-types-eth" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83aa984386deda02482660aa31cb8ca1e63d533f1c31a52d7d181ac5ec68e9b8" +checksum = "8737d7a6e37ca7bba9c23e9495c6534caec6760eb24abc9d5ffbaaba147818e1" dependencies = [ "alloy-consensus", + "alloy-consensus-any", "alloy-eips", "alloy-network-primitives", "alloy-primitives", "alloy-rlp", "alloy-serde", "alloy-sol-types", - "cfg-if 1.0.0", "derive_more", - "hashbrown", "itertools 0.13.0", "serde", "serde_json", @@ -410,9 +452,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "731f75ec5d383107fd745d781619bd9cedf145836c51ecb991623d41278e71fa" +checksum = "5851bf8d5ad33014bd0c45153c603303e730acc8a209450a7ae6b4a12c2789e2" dependencies = [ "alloy-primitives", "serde", @@ -421,23 +463,23 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "307324cca94354cd654d6713629f0383ec037e1ff9e3e3d547212471209860c0" +checksum = "7e10ca565da6500cca015ba35ee424d59798f2e1b85bc0dd8f81dafd401f029a" dependencies = [ "alloy-primitives", "async-trait", "auto_impl", "elliptic-curve", "k256", - "thiserror", + "thiserror 2.0.9", ] [[package]] name = "alloy-signer-local" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fabe917ab1778e760b4701628d1cae8e028ee9d52ac6307de4e1e9286ab6b5f" +checksum = "47fababf5a745133490cde927d48e50267f97d3d1209b9fc9f1d1d666964d172" dependencies = [ "alloy-consensus", "alloy-network", @@ -446,28 +488,28 @@ dependencies = [ "async-trait", "k256", "rand", - "thiserror", + "thiserror 2.0.9", ] [[package]] name = "alloy-sol-macro" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68e7f6e8fe5b443f82b3f1e15abfa191128f71569148428e49449d01f6f49e8b" +checksum = "d9d64f851d95619233f74b310f12bcf16e0cbc27ee3762b6115c14a84809280a" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b96ce28d2fde09abb6135f410c41fad670a3a770b6776869bd852f1df102e6f" +checksum = "6bf7ed1574b699f48bf17caab4e6e54c6d12bc3c006ab33d58b1e227c1c3559f" dependencies = [ "alloy-json-abi", "alloy-sol-macro-input", @@ -477,16 +519,16 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "906746396a8296537745711630d9185746c0b50c033d5e9d18b0a6eba3d53f90" +checksum = "8c02997ccef5f34f9c099277d4145f183b422938ed5322dc57a089fe9b9ad9ee" dependencies = [ "alloy-json-abi", "const-hex", @@ -495,15 +537,15 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.78", + "syn 2.0.91", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc85178909a49c8827ffccfc9103a7ce1767ae66a801b69bdc326913870bf8e6" +checksum = "ce13ff37285b0870d0a0746992a4ae48efaf34b766ae4c2640fa15e5305f8e73" dependencies = [ "serde", "winnow", @@ -511,9 +553,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d86a533ce22525969661b25dfe296c112d35eb6861f188fd284f8bd4bb3842ae" +checksum = "1174cafd6c6d810711b4e00383037bdb458efc4fe3dbafafa16567e0320c54d8" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -524,9 +566,9 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33616b2edf7454302a1d48084db185e52c309f73f6c10be99b0fe39354b3f1e9" +checksum = "538a04a37221469cac0ce231b737fd174de2fdfcdd843bdd068cb39ed3e066ad" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -534,18 +576,19 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror", + "thiserror 2.0.9", "tokio", "tower 0.5.1", "tracing", "url", + "wasmtimer", ] [[package]] name = "alloy-transport-http" -version = "0.3.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a944f5310c690b62bbb3e7e5ce34527cbd36b2d18532a797af123271ce595a49" +checksum = "2ed40eb1e1265b2911512f6aa1dcece9702d078f5a646730c45e39e2be00ac1c" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -556,6 +599,22 @@ dependencies = [ "url", ] +[[package]] +name = "alloy-trie" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e428104b2445a4f929030891b3dbf8c94433a8349ba6480946bf6af7975c2f6" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "arrayvec", + "derive_more", + "nybbles", + "serde", + "smallvec", + "tracing", +] + [[package]] name = "android-tzdata" version = "0.1.1" @@ -706,6 +765,9 @@ name = "arrayvec" version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +dependencies = [ + "serde", +] [[package]] name = "async-compression" @@ -742,7 +804,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -753,7 +815,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -775,7 +837,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -1027,9 +1089,9 @@ dependencies = [ [[package]] name = "const-hex" -version = "1.12.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94fb8a24a26d37e1ffd45343323dc9fe6654ceea44c12f2fcb3d7ac29e610bc6" +checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" dependencies = [ "cfg-if 1.0.0", "cpufeatures", @@ -1120,7 +1182,7 @@ checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" dependencies = [ "cfg-if 1.0.0", "crossbeam-utils", - "hashbrown", + "hashbrown 0.14.5", "lock_api", "once_cell", "parking_lot_core", @@ -1164,7 +1226,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", "unicode-xid", ] @@ -1338,7 +1400,7 @@ dependencies = [ "log", "nu-ansi-term", "regex", - "thiserror", + "thiserror 1.0.64", ] [[package]] @@ -1347,6 +1409,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" + [[package]] name = "foreign-types" version = "0.3.2" @@ -1433,7 +1501,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -1536,6 +1604,12 @@ dependencies = [ "tracing", ] +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" + [[package]] name = "hashbrown" version = "0.14.5" @@ -1544,6 +1618,15 @@ checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ "ahash", "allocator-api2", +] + +[[package]] +name = "hashbrown" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +dependencies = [ + "foldhash", "serde", ] @@ -1810,7 +1893,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" dependencies = [ "equivalent", - "hashbrown", + "hashbrown 0.14.5", "serde", ] @@ -1970,7 +2053,7 @@ version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37ee39891760e7d94734f6f63fedc29a2e4a152f836120753a72503f09fcf904" dependencies = [ - "hashbrown", + "hashbrown 0.14.5", ] [[package]] @@ -2104,7 +2187,20 @@ checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", +] + +[[package]] +name = "nybbles" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55a62e678a89501192cc5ebf47dcbc656b608ae5e1c61c9251fe35230f119fe3" +dependencies = [ + "alloy-rlp", + "const-hex", + "proptest", + "serde", + "smallvec", ] [[package]] @@ -2145,7 +2241,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -2234,7 +2330,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9" dependencies = [ "memchr", - "thiserror", + "thiserror 1.0.64", "ucd-trie", ] @@ -2255,7 +2351,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -2334,14 +2430,14 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -2373,7 +2469,7 @@ dependencies = [ "procfs", "protobuf", "spin", - "thiserror", + "thiserror 1.0.64", ] [[package]] @@ -2730,6 +2826,17 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "schnellru" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367" +dependencies = [ + "ahash", + "cfg-if 1.0.0", + "hashbrown 0.13.2", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -2814,7 +2921,7 @@ checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -2932,6 +3039,9 @@ name = "smallvec" version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +dependencies = [ + "serde", +] [[package]] name = "socket2" @@ -2984,7 +3094,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -3006,9 +3116,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.78" +version = "2.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81b9b4733a9c8b8aaa20634df36eeb68cc0c0669f2e18fb287006b496a14195d" +checksum = "d53cbcb5a243bd33b7858b1d7f4aca2153490815872d86d955d6ea29f743c035" dependencies = [ "proc-macro2", "quote", @@ -3017,14 +3127,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.5" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ab661c8148c2261222a4d641ad5477fd4bea79406a99056096a0b41b35617a5" +checksum = "219389c1ebe89f8333df8bdfb871f6631c552ff399c23cac02480b6088aad8f0" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -3097,7 +3207,16 @@ version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.64", +] + +[[package]] +name = "thiserror" +version = "2.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f072643fd0190df67a8bab670c20ef5d8737177d6ac6b2e9a236cb096206b2cc" +dependencies = [ + "thiserror-impl 2.0.9", ] [[package]] @@ -3108,7 +3227,18 @@ checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b50fa271071aae2e6ee85f842e2e28ba8cd2c5fb67f11fcb1fd70b276f9e7d4" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.91", ] [[package]] @@ -3170,7 +3300,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -3337,7 +3467,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -3505,7 +3635,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", "wasm-bindgen-shared", ] @@ -3539,7 +3669,7 @@ checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -3550,6 +3680,20 @@ version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" +[[package]] +name = "wasmtimer" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0048ad49a55b9deb3953841fa1fc5858f0efbcb7a18868c899a360269fac1b23" +dependencies = [ + "futures", + "js-sys", + "parking_lot", + "pin-utils", + "slab", + "wasm-bindgen", +] + [[package]] name = "web-sys" version = "0.3.70" @@ -3824,7 +3968,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] @@ -3844,7 +3988,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.78", + "syn 2.0.91", ] [[package]] diff --git a/prover/bin/shadow-prove/Cargo.toml b/prover/bin/shadow-prove/Cargo.toml index 5768b2ca0..becb4ceac 100644 --- a/prover/bin/shadow-prove/Cargo.toml +++ b/prover/bin/shadow-prove/Cargo.toml @@ -10,7 +10,7 @@ repository = "https://github.com/morph-l2/morph/tree/main/prover" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -alloy = { version = "0.3", features = [ +alloy = { version = "0.8", features = [ "contract", "signer-local", "rpc-types-eth", diff --git a/prover/bin/shadow-prove/abi/Rollup.json b/prover/bin/shadow-prove/abi/Rollup.json index dc4c9bba6..28f7a5c6d 100644 --- a/prover/bin/shadow-prove/abi/Rollup.json +++ b/prover/bin/shadow-prove/abi/Rollup.json @@ -15,16 +15,6 @@ "name": "ErrZeroAddress", "type": "error" }, - { - "inputs": [], - "name": "ErrorIncorrectBatchLength", - "type": "error" - }, - { - "inputs": [], - "name": "ErrorNoBlockInBatch", - "type": "error" - }, { "anonymous": false, "inputs": [ @@ -619,9 +609,14 @@ "type": "bytes" }, { - "internalType": "bytes", - "name": "blockContexts", - "type": "bytes" + "internalType": "uint64", + "name": "lastBlockNumber", + "type": "uint64" + }, + { + "internalType": "uint16", + "name": "numL1Messages", + "type": "uint16" }, { "internalType": "bytes32", diff --git a/prover/bin/shadow-prove/src/lib.rs b/prover/bin/shadow-prove/src/lib.rs index e13074918..80f58da96 100644 --- a/prover/bin/shadow-prove/src/lib.rs +++ b/prover/bin/shadow-prove/src/lib.rs @@ -9,5 +9,6 @@ pub mod util; #[derive(Clone, Debug)] pub struct BatchInfo { pub batch_index: u64, - pub blocks: Vec, + pub start_block: u64, + pub end_block: u64, } diff --git a/prover/bin/shadow-prove/src/main.rs b/prover/bin/shadow-prove/src/main.rs index e5ce82eb1..dc8302b4e 100644 --- a/prover/bin/shadow-prove/src/main.rs +++ b/prover/bin/shadow-prove/src/main.rs @@ -34,6 +34,7 @@ async fn main() { let l1_verify_rpc: String = read_parse_env("SHADOW_PROVING_VERIFY_L1_RPC"); let l1_rpc: String = read_parse_env("SHADOW_PROVING_L1_RPC"); + let l2_rpc: String = read_parse_env("SHADOW_PROVING_L2_RPC"); let private_key: String = read_parse_env("SHADOW_PROVING_PRIVATE_KEY"); let rollup: String = read_parse_env("SHADOW_PROVING_L1_ROLLUP"); @@ -41,9 +42,12 @@ async fn main() { let signer: PrivateKeySigner = private_key.parse().expect("parse PrivateKeySigner"); let wallet: EthereumWallet = EthereumWallet::from(signer.clone()); - let provider: RootProvider> = + let l1_provider: RootProvider> = ProviderBuilder::new().on_http(l1_rpc.parse().expect("parse l1_rpc to Url")); + let l2_provider: RootProvider> = + ProviderBuilder::new().on_http(l2_rpc.parse().expect("parse l2_rpc to Url")); + let verify_provider: RootProvider> = ProviderBuilder::new().on_http(l1_verify_rpc.parse().expect("parse l1_rpc to Url")); @@ -55,7 +59,8 @@ async fn main() { let batch_syncer = BatchSyncer::new( Address::from_str(&rollup).unwrap(), Address::from_str(&shadow_rollup).unwrap(), - provider.clone(), + l1_provider.clone(), + l2_provider.clone(), l1_signer.clone(), ); @@ -227,7 +232,7 @@ async fn test_prove_batch() { ); let tx_hash = B256::from_str(&next_tx_hash).unwrap(); - let batch_header = shadow_prove::shadow_rollup::batch_header_inspect(&provider, tx_hash) + let batch_header = shadow_proving::shadow_rollup::batch_header_inspect(&provider, tx_hash) .await .ok_or_else(|| "Failed to inspect batch header".to_string()) .unwrap(); @@ -261,7 +266,7 @@ async fn test_prove_batch() { let rt = shadow_tx.send().await.unwrap(); println!("commitBatch success: {:?}", rt.tx_hash()); - let batch_info = BatchInfo { batch_index, blocks: vec![1000001, 1000002] }; + let batch_info = BatchInfo { batch_index, start_block: 1000001, end_block: 1000002 }; shadow_prover.prove(batch_info).await.unwrap(); } diff --git a/prover/bin/shadow-prove/src/shadow_prove.rs b/prover/bin/shadow-prove/src/shadow_prove.rs index dd3e5094e..12e950fd8 100644 --- a/prover/bin/shadow-prove/src/shadow_prove.rs +++ b/prover/bin/shadow-prove/src/shadow_prove.rs @@ -93,8 +93,7 @@ async fn handle_with_prover( { let l2_rpc = var("SHADOW_PROVING_L2_RPC").expect("Cannot detect L2_RPC env var"); let batch_index = batch_info.batch_index; - let blocks = &batch_info.blocks; - let blocks_len = blocks.len(); + let blocks_len = batch_info.end_block - batch_info.start_block + 1; METRICS.shadow_blocks_len.set(blocks_len as i64); METRICS.shadow_batch_index.set(batch_index as i64); @@ -106,7 +105,7 @@ async fn handle_with_prover( "Start prove batch of: {:?}, blocks.len = {:?}, block_start = {:#?}", batch_index, blocks_len, - blocks[0] + batch_info.start_block ); // Query existing proof @@ -121,8 +120,8 @@ async fn handle_with_prover( // Request the proverServer to prove. let request = ProveRequest { batch_index, - start_block: *blocks.first().unwrap_or(&0u64), - end_block: *blocks.last().unwrap_or(&0u64), + start_block: batch_info.start_block, + end_block: batch_info.end_block, rpc: l2_rpc.to_owned(), shadow: true, }; @@ -155,7 +154,7 @@ async fn handle_with_prover( } // Step5. query proof and prove onchain state. - let mut max_waiting_time: usize = 1600 * blocks_len; //block_prove_time =30min + let mut max_waiting_time: usize = 1600 * blocks_len as usize; //block_prove_time =30min while max_waiting_time > 300 { sleep(Duration::from_secs(300)).await; max_waiting_time -= 300; // Query results every 5 minutes. diff --git a/prover/bin/shadow-prove/src/shadow_rollup.rs b/prover/bin/shadow-prove/src/shadow_rollup.rs index 31402ae4b..6c41d8488 100644 --- a/prover/bin/shadow-prove/src/shadow_rollup.rs +++ b/prover/bin/shadow-prove/src/shadow_rollup.rs @@ -1,5 +1,6 @@ use crate::{metrics::METRICS, util::read_env_var, BatchInfo}; use alloy::{ + consensus::Transaction, network::{Network, ReceiptResponse}, primitives::{Address, Bytes, TxHash, U256, U64}, providers::{Provider, RootProvider}, @@ -10,7 +11,6 @@ use alloy::{ Transport, }, }; -use std::ops::Mul; use crate::{ Rollup::{self, RollupInstance}, @@ -20,6 +20,7 @@ use crate::{ #[derive(Clone, Debug)] pub struct BatchSyncer { l1_provider: RootProvider>, + l2_provider: RootProvider>, l1_rollup: RollupInstance, RootProvider>>, l1_shadow_rollup: ShadowRollupInstance, } @@ -33,13 +34,14 @@ where pub fn new( rollup_address: Address, shadow_rollup_address: Address, - provider: RootProvider>, + l1_provider: RootProvider>, + l2_provider: RootProvider>, wallet: P, ) -> Self { - let l1_rollup = Rollup::RollupInstance::new(rollup_address, provider.clone()); + let l1_rollup = Rollup::RollupInstance::new(rollup_address, l1_provider.clone()); let l1_shadow_rollup = ShadowRollup::new(shadow_rollup_address, wallet); - Self { l1_provider: provider, l1_rollup, l1_shadow_rollup } + Self { l1_provider, l2_provider, l1_rollup, l1_shadow_rollup } } /** @@ -55,6 +57,7 @@ where U64::from(latest), &self.l1_rollup, &self.l1_provider, + &self.l2_provider, ) .await { @@ -74,7 +77,7 @@ where // Assembling a batche of the same commitment. #[rustfmt::skip] - // Below is the encoding for `BatchHeader`, reference: morph-repo/contracts/contracts/libraries/codec/BatchHeaderCodecV0.sol + // Below is the encoding for `BatchHeader`, reference: morph-repo/contracts/contracts/libraries/codec/BatchHeaderCodecV1.sol // // * Field Bytes Type Index Comments // * version 1 uint8 0 The batch version @@ -89,6 +92,8 @@ where // * sequencerSetVerifyHash 32 bytes32 185 L2 sequencers set verify hash // * parentBatchHash 32 bytes32 217 The parent batch hash // * skippedL1MessageBitmap dynamic uint256[] 249 A bitmap to indicate which L1 messages are skipped in the batch + // @dev Below is the feilds for `BatchHeader` V1 + // * lastBlockNumber 8 uint64 249 The last block number in this batch // ``` let batch_store = ShadowRollup::BatchStore { prevStateRoot: batch_header @@ -156,6 +161,7 @@ async fn get_committed_batch( latest: U64, l1_rollup: &RollupInstance, l1_provider: &RootProvider>, + l2_provider: &RootProvider>, ) -> Result, String> where P: Provider + Clone, @@ -177,29 +183,16 @@ where log::warn!("There have been no commit_batch logs for the last 600 blocks"); return Ok(None); } - if logs.len() < 2 { + if logs.len() < 3 { log::warn!("No enough commit_batch logs for the last 600 blocks"); return Ok(None); } logs.sort_by(|a, b| a.block_number.unwrap().cmp(&b.block_number.unwrap())); - // A rollup commit_batch_input contains prev batch_header. - let next_tx_hash = match logs.last() { - Some(log) => log.transaction_hash.unwrap_or_default(), - - None => { - return Err("find commit_batch log error".to_string()); - } - }; - let batch_header = batch_header_inspect(l1_provider, next_tx_hash) - .await - .ok_or_else(|| "Failed to inspect batch header".to_string())?; - - let (batch_index, tx_hash) = match logs.get(logs.len() - 2) { + let batch_index = match logs.get(logs.len() - 2) { Some(log) => { let _index = U256::from_be_slice(log.topics()[1].as_slice()); - let _tx_hash = log.transaction_hash.unwrap_or_default(); - (_index.to::(), _tx_hash) + _index.to::() } None => { return Err("find commit_batch log error".to_string()); @@ -209,16 +202,17 @@ where if batch_index == 0 { return Err(String::from("batch_index is 0")); } - let (blocks, total_txn_count) = match batch_blocks_inspect(l1_provider, tx_hash).await { - Some(block_txn) => block_txn, - None => return Err(String::from("batch_blocks_inspect none")), - }; + let (blocks, total_txn_count) = + match batch_blocks_inspect(l1_rollup, l2_provider, batch_index).await { + Some(block_txn) => block_txn, + None => return Err(String::from("batch_blocks_inspect none")), + }; - if blocks.is_empty() { + if blocks.0 <= blocks.1 { return Err(String::from("blocks is empty")); } - if blocks.len() > read_env_var("SHADOW_PROVING_MAX_BLOCK", 300) { + if blocks.1 - blocks.0 + 1 > read_env_var("SHADOW_PROVING_MAX_BLOCK", 300) { log::warn!("Too many blocks in the latest batch to shadow prove"); return Ok(None); } @@ -228,7 +222,20 @@ where return Ok(None); } - let batch_info: BatchInfo = BatchInfo { batch_index, blocks }; + let batch_info: BatchInfo = + BatchInfo { batch_index, start_block: blocks.0, end_block: blocks.1 }; + + // A rollup commit_batch_input contains prev batch_header. + let next_tx_hash = match logs.last() { + Some(log) => log.transaction_hash.unwrap_or_default(), + + None => { + return Err("find commit_batch log error".to_string()); + } + }; + let batch_header = batch_header_inspect(l1_provider, next_tx_hash) + .await + .ok_or_else(|| "Failed to inspect batch header".to_string())?; log::info!("Found the committed batch, batch index = {:#?}", batch_index); Ok(Some((batch_info, batch_header))) @@ -253,7 +260,7 @@ pub async fn batch_header_inspect( }; //Step2. Parse transaction data - let data = tx.input; + let data = tx.input(); if data.is_empty() { log::warn!("batch inspect: tx.input is empty, tx_hash = {:#?}", hash); @@ -269,74 +276,51 @@ pub async fn batch_header_inspect( Some(parent_batch_header) } -async fn batch_blocks_inspect( - l1_provider: &RootProvider>, - hash: TxHash, -) -> Option<(Vec, u32)> { - //Step1. Get transaction - let result = l1_provider.get_transaction_by_hash(hash).await; - let tx = match result { - Ok(Some(tx)) => tx, - Ok(None) => { - log::error!("l1_provider.get_transaction is none"); - return None; - } +async fn batch_blocks_inspect( + l1_rollup: &RollupInstance, + l2_provider: &RootProvider>, + batch_index: u64, +) -> Option<((u64, u64), u64)> +where + P: Provider + Clone, + T: Transport + Clone, + N: Network, +{ + let prev_bn = match l1_rollup.batchDataStore(U256::from(batch_index - 1)).call().await { + Ok(s) => s.blockNumber.to::(), Err(e) => { - log::error!("l1_provider.get_transaction err: {:#?}", e); + log::error!("l1_rollup.batch_data_store err: {:#?}", e); return None; } }; - //Step2. Parse transaction data - let data = tx.input; - - if data.is_empty() { - log::warn!("batch inspect: tx.input is empty, tx_hash = {:#?}", hash); - return None; - } - let param = if let Ok(_param) = Rollup::commitBatchCall::abi_decode(&data, false) { - _param - } else { - log::error!("batch inspect: decode tx.input error, tx_hash = {:#?}", hash); - return None; + let current_bn = match l1_rollup.batchDataStore(U256::from(batch_index)).call().await { + Ok(s) => s.blockNumber.to::(), + Err(e) => { + log::error!("l1_rollup.batch_data_store err: {:#?}", e); + return None; + } }; - let block_contexts: Bytes = param.batchDataInput.blockContexts; - decode_blocks(block_contexts) -} -fn decode_blocks(block_contexts: Bytes) -> Option<(Vec, u32)> { - if block_contexts.is_empty() || block_contexts.len() < 2 { - return Some((vec![], 0)); - } - - let mut blocks: Vec = vec![]; - let mut txn_in_batch = 0u32; - let bs: &[u8] = &block_contexts; - - // decode blocks from batch - // | 2 byte | 60 bytes | ... | 60 bytes | - // | num blocks | block 1 | ... | block n | - // https://github.com/morph-l2/morph/blob/main/contracts/contracts/libraries/codec/BatchCodecV0.sol - let num_blocks: u16 = ((bs[0] as u16) << 8) | (bs[1] as u16); - - for i in 0..num_blocks as usize { - let block_num = - u64::from_be_bytes(bs.get((60.mul(i) + 2)..(60.mul(i) + 2 + 8))?.try_into().ok()?); - let txs_num = u16::from_be_bytes( - bs.get((60.mul(i) + 2 + 56)..(60.mul(i) + 2 + 58))?.try_into().ok()?, - ); - txn_in_batch += txs_num as u32; - blocks.push(block_num); + let mut total_tx_count: u64 = 0; + for i in prev_bn + 1..current_bn + 1 { + total_tx_count += l2_provider + .get_block_transaction_count_by_number(i.into()) + .await + .unwrap_or_default() + .unwrap_or_default(); } - METRICS.shadow_txn_len.set(txn_in_batch.into()); log::info!( "decode_blocks, blocks_len: {:#?}, start_block: {:#?}, txn_in_batch: {:?}", - num_blocks, - blocks.first().unwrap_or(&0), - txn_in_batch + current_bn - prev_bn, + prev_bn + 1, + total_tx_count ); - Some((blocks, txn_in_batch)) + + METRICS.shadow_txn_len.set(total_tx_count as i64); + + Some(((prev_bn + 1, current_bn), total_tx_count)) } async fn is_prove_success( @@ -363,24 +347,6 @@ where Some(is_prove_success) } -#[tokio::test] -async fn test_decode_blocks() { - use std::{fs::File, io::Read, str::FromStr}; - - env_logger::Builder::from_env(env_logger::Env::default().default_filter_or("debug")).init(); - - let mut file = File::open("./src/input.data").unwrap(); - let mut contents = String::new(); - file.read_to_string(&mut contents).unwrap(); - let input = Bytes::from_str(contents.as_str()).unwrap(); - - let param = Rollup::commitBatchCall::abi_decode(&input, false).unwrap(); - let blocks: Bytes = param.batchDataInput.blockContexts; - let rt = decode_blocks(blocks).unwrap(); - assert!(rt.0.len() == 11); - assert!(rt.0[3] == 1112u64); -} - #[tokio::test] async fn test_sync_batch() { use alloy::{ @@ -395,13 +361,18 @@ async fn test_sync_batch() { let l1_rpc: String = var("SHADOW_PROVING_VERIFY_L1_RPC").unwrap_or( var("SHADOW_PROVING_L1_RPC").expect("Shadow prove cannot detect L1_RPC env var"), ); + let l2_rpc: String = var("SHADOW_PROVING_VERIFY_L2_RPC").unwrap_or( + var("SHADOW_PROVING_L2_RPC").expect("Shadow prove cannot detect L2_RPC env var"), + ); let private_key = var("SHADOW_PROVING_PRIVATE_KEY") .expect("Cannot detect SHADOW_PROVING_PRIVATE_KEY env var"); let signer: PrivateKeySigner = private_key.parse().unwrap(); let wallet: EthereumWallet = EthereumWallet::from(signer.clone()); - let provider: RootProvider> = + let l1_provider: RootProvider> = ProviderBuilder::new().on_http(l1_rpc.parse().unwrap()); + let l2_provider: RootProvider> = + ProviderBuilder::new().on_http(l2_rpc.parse().unwrap()); let rollup = var("SHADOW_PROVING_L1_ROLLUP").expect("Cannot detect L1_ROLLUP env var"); let shadow_rollup = @@ -415,7 +386,8 @@ async fn test_sync_batch() { let bs = BatchSyncer::new( Address::from_str(&rollup).unwrap(), Address::from_str(&shadow_rollup).unwrap(), - provider, + l1_provider, + l2_provider, l1_signer, ); bs.sync_batch().await.unwrap(); diff --git a/prover/crates/core/src/batch.rs b/prover/crates/core/src/batch.rs index faddf9501..2ef196a11 100644 --- a/prover/crates/core/src/batch.rs +++ b/prover/crates/core/src/batch.rs @@ -34,9 +34,10 @@ impl BatchInfo { let post_state_root = traces.last().expect("at least 1 block needed").root_after(); let mut data_hasher = Keccak::v256(); - for trace in traces.iter() { - trace.hash_da_header(&mut data_hasher); - } + data_hasher.update(&traces.last().unwrap().number().to_be_bytes()); + let num_l1_txs: u16 = traces.iter().map(|x| x.num_l1_txs()).sum::() as u16; + data_hasher.update(&num_l1_txs.to_be_bytes()); + for trace in traces.iter() { trace.hash_l1_msg(&mut data_hasher); } diff --git a/prover/crates/core/src/hardfork.rs b/prover/crates/core/src/hardfork.rs index 65ddfd77b..320118b02 100644 --- a/prover/crates/core/src/hardfork.rs +++ b/prover/crates/core/src/hardfork.rs @@ -13,20 +13,20 @@ pub const MORPH_TESTNET_CHAIN_ID: u64 = 2810; /// Morph mainnet chain id pub const MORPH_MAINNET_CHAIN_ID: u64 = 2818; -/// Hardfork heights for Scroll networks, grouped by chain id. +/// Hardfork heights for Morph networks, grouped by chain id. static HARDFORK_HEIGHTS: Lazy>> = Lazy::new(|| { let mut map = HashMap::new(); map.insert( MORPH_DEVNET_CHAIN_ID, - HashMap::from([(SpecId::BERNOULLI, 0), (SpecId::CURIE, 0)]), + HashMap::from([(SpecId::BERNOULLI, 0), (SpecId::CURIE, 0), (SpecId::MORPH203, 0)]), ); map.insert( MORPH_TESTNET_CHAIN_ID, - HashMap::from([(SpecId::BERNOULLI, 0), (SpecId::CURIE, 0)]), + HashMap::from([(SpecId::BERNOULLI, 0), (SpecId::CURIE, 0), (SpecId::MORPH203, 0)]), ); map.insert( MORPH_MAINNET_CHAIN_ID, - HashMap::from([(SpecId::BERNOULLI, 0), (SpecId::CURIE, 0)]), + HashMap::from([(SpecId::BERNOULLI, 0), (SpecId::CURIE, 0), (SpecId::MORPH203, 0)]), ); map @@ -37,6 +37,7 @@ static HARDFORK_HEIGHTS: Lazy>> = Lazy::new(|| pub struct HardforkConfig { bernoulli_block: u64, curie_block: u64, + morph203_block: u64, } impl HardforkConfig { @@ -46,6 +47,7 @@ impl HardforkConfig { Self { bernoulli_block: heights.get(&SpecId::BERNOULLI).copied().unwrap_or(0), curie_block: heights.get(&SpecId::CURIE).copied().unwrap_or(0), + morph203_block: heights.get(&SpecId::MORPH203).copied().unwrap_or(0), } } else { dev_warn!( @@ -68,12 +70,19 @@ impl HardforkConfig { self } + /// Set the Morph203 block number. + pub fn set_morph203_block(&mut self, morph203_block: u64) -> &mut Self { + self.morph203_block = morph203_block; + self + } + /// Get the hardfork spec id for a block number. pub fn get_spec_id(&self, block_number: u64) -> SpecId { match block_number { n if n < self.bernoulli_block => SpecId::PRE_BERNOULLI, n if n < self.curie_block => SpecId::BERNOULLI, - _ => SpecId::CURIE, + n if n < self.morph203_block => SpecId::CURIE, + _ => SpecId::MORPH203, } } diff --git a/prover/crates/morph-executor/client/src/lib.rs b/prover/crates/morph-executor/client/src/lib.rs index 6b1457b41..2e630930a 100644 --- a/prover/crates/morph-executor/client/src/lib.rs +++ b/prover/crates/morph-executor/client/src/lib.rs @@ -1,17 +1,31 @@ pub mod types; mod verifier; use alloy::hex; -use sbv_primitives::{TxTrace, B256}; +use sbv_primitives::{Block, TxTrace, B256}; use sbv_utils::dev_info; use types::input::ClientInput; pub use verifier::{blob_verifier::BlobVerifier, evm_verifier::EVMVerifier}; pub fn verify(input: &ClientInput) -> Result { // Verify DA - let (versioned_hash, batch_data) = BlobVerifier::verify(&input.blob_info).unwrap(); + let num_blocks = input.l2_traces.len(); + let (versioned_hash, batch_data) = BlobVerifier::verify(&input.blob_info, num_blocks).unwrap(); println!("cycle-tracker-start: traces-to-data"); + let mut batch_from_trace: Vec = Vec::with_capacity(num_blocks * 60); let mut tx_bytes: Vec = vec![]; for trace in &input.l2_traces { + // BlockContext + let mut block_ctx: Vec = Vec::with_capacity(60); + block_ctx.extend_from_slice(&trace.number().to_be_bytes()); + block_ctx.extend_from_slice(&trace.timestamp().to::().to_be_bytes()); + block_ctx + .extend_from_slice(&trace.base_fee_per_gas().unwrap_or_default().to_be_bytes::<32>()); + block_ctx.extend_from_slice(&trace.gas_limit().to::().to_be_bytes()); + block_ctx.extend_from_slice(&(trace.transactions.len() as u16).to_be_bytes()); + block_ctx.extend_from_slice(&(trace.num_l1_txs() as u16).to_be_bytes()); + batch_from_trace.extend(block_ctx); + + // Collect txns let x = trace .transactions .iter() @@ -20,8 +34,10 @@ pub fn verify(input: &ClientInput) -> Result { .collect::>(); tx_bytes.extend(x); } + batch_from_trace.extend(tx_bytes); + println!("cycle-tracker-end: traces-to-data"); - assert_eq!(batch_data, tx_bytes, "blob data mismatch!"); + assert_eq!(batch_data, batch_from_trace, "blob data mismatch!"); // Verify EVM exec. println!("cycle-tracker-start: evm-verify"); diff --git a/prover/crates/morph-executor/client/src/verifier/blob_verifier.rs b/prover/crates/morph-executor/client/src/verifier/blob_verifier.rs index 12835f4e1..c0b3986dc 100644 --- a/prover/crates/morph-executor/client/src/verifier/blob_verifier.rs +++ b/prover/crates/morph-executor/client/src/verifier/blob_verifier.rs @@ -10,13 +10,16 @@ use crate::types::{blob::get_origin_batch, input::BlobInfo}; pub struct BlobVerifier; impl BlobVerifier { - pub fn verify(blob_info: &BlobInfo) -> Result<(B256, Vec), anyhow::Error> { + pub fn verify( + blob_info: &BlobInfo, + num_blocks: usize, + ) -> Result<(B256, Vec), anyhow::Error> { // decode println!("cycle-tracker-start: decode_blob"); let origin_batch = get_origin_batch(&blob_info.blob_data).unwrap(); cfg_if::cfg_if! { if #[cfg(not(target_os = "zkvm"))] { - let tx_list = crate::types::blob::decode_transactions(origin_batch.as_slice()); + let tx_list = crate::types::blob::decode_transactions(&origin_batch.as_slice()[num_blocks*60..]); println!("decoded tx_list_len: {:?}", tx_list.len()); } } diff --git a/prover/crates/morph-executor/host/src/lib.rs b/prover/crates/morph-executor/host/src/lib.rs index 5f0de76f4..05249a592 100644 --- a/prover/crates/morph-executor/host/src/lib.rs +++ b/prover/crates/morph-executor/host/src/lib.rs @@ -1,6 +1,6 @@ use anyhow::anyhow; use morph_executor_utils::read_env_var; -use sbv_primitives::{types::BlockTrace, TxTrace}; +use sbv_primitives::{types::BlockTrace, Block, TxTrace}; use std::{io::Write, path::Path, sync::Arc}; use zstd_util::{init_zstd_encoder, N_BLOCK_SIZE_TARGET}; @@ -39,9 +39,23 @@ pub fn get_blob_info(block_trace: &Vec) -> Result) -> [u8; BLOB_DATA_SIZE] { - // collect txns + let num_blocks = block_trace.len(); + let mut batch_from_trace: Vec = Vec::with_capacity(num_blocks * 60); let mut tx_bytes: Vec = vec![]; for trace in block_trace { + // BlockContext + // https://github.com/morph-l2/morph/blob/main/contracts/contracts/libraries/codec/BatchCodecV0.sol + let mut block_ctx: Vec = Vec::with_capacity(60); + block_ctx.extend_from_slice(&trace.number().to_be_bytes()); + block_ctx.extend_from_slice(&trace.timestamp().to::().to_be_bytes()); + block_ctx + .extend_from_slice(&trace.base_fee_per_gas().unwrap_or_default().to_be_bytes::<32>()); + block_ctx.extend_from_slice(&trace.gas_limit().to::().to_be_bytes()); + block_ctx.extend_from_slice(&(trace.transactions.len() as u16).to_be_bytes()); + block_ctx.extend_from_slice(&(trace.num_l1_txs() as u16).to_be_bytes()); + batch_from_trace.extend(block_ctx); + + // Collect txns let x = trace .transactions .iter() @@ -50,8 +64,8 @@ pub fn get_blob_data(block_trace: &Vec) -> [u8; BLOB_DATA_SIZE] { .collect::>(); tx_bytes.extend(x); } - - encode_blob(tx_bytes) + batch_from_trace.extend(tx_bytes); + encode_blob(batch_from_trace) } pub fn encode_blob(tx_bytes: Vec) -> [u8; 131072] { diff --git a/prover/testdata/morph203/morph203_0_traces.json b/prover/testdata/morph203/morph203_0_traces.json new file mode 100644 index 000000000..725866e57 --- /dev/null +++ b/prover/testdata/morph203/morph203_0_traces.json @@ -0,0 +1,13648 @@ +[ + [ + { + "chainID": 53077, + "version": "2.0.3-mainnet-0295a3d4", + "coinbase": { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc759a36b47a6c", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "header": { + "parentHash": "0xecc4b5c578237034ccf9b8808631f1929e4ee948379b03ecb74d0d762a494601", + "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", + "miner": "0x0000000000000000000000000000000000000000", + "stateRoot": "0x06282a9b276c3b80d658aca386f03e479d9379af169e73801488632461d86525", + "transactionsRoot": "0x8568a88cc0b207ce2353ba1fa44711789124dcfdf5513729568143d0791c1813", + "receiptsRoot": "0x4afb8f07521fdb953720dca7a0bffabae4eab07fb3440965769665601c2dc526", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000004000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000", + "difficulty": "0x0", + "number": "0x78336", + "gasLimit": "0x3b9aca00", + "gasUsed": "0x17d11", + "timestamp": "0x67d39c45", + "extraData": "0x", + "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce": "0x0000000000000000", + "nextL1MsgIndex": "0x1428f6", + "batchHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "baseFeePerGas": "0xf4240", + "withdrawalsRoot": null, + "blobGasUsed": null, + "excessBlobGas": null, + "parentBeaconBlockRoot": null, + "hash": "0xe9e89fba373845d51992a05507d9aafe1f59281ae4a27ea98236807e73bfa92d" + }, + "transactions": [ + { + "type": 2, + "nonce": 2170, + "txHash": "0xe87351b15850f98a08820abc98ed6e13e6226db90ead6a8a5b4064d05d470bf0", + "gas": 97553, + "gasPrice": "0xf4240", + "gasTipCap": "0xf4240", + "gasFeeCap": "0xf4240", + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "to": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "chainId": "0xcf55", + "value": "0x0", + "data": "0x637bd1640000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000468656c6f00000000000000000000000000000000000000000000000000000000", + "isCreate": false, + "accessList": [], + "v": "0x0", + "r": "0xe09b0a4e6a6b8cb8bb9c2138f17431a8b7712ffeecbef1e4a229d5fe9620e582", + "s": "0x17d892d4f240758ec33d7e849e5561a1971e4351cace52d381f645537e4890f3" + } + ], + "storageTrace": { + "rootBefore": "0x1c3c7f10ba4091cba575777e91ceb7db804dd686e697dc7f0aa20a7d83761375", + "rootAfter": "0x06282a9b276c3b80d658aca386f03e479d9379af169e73801488632461d86525", + "proofs": { + "0x0000000000000000000000000000000000000003": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x090695394d7e90c7ab229f35a5bf7e984623a40a92cc4355e174eeb0fa43215cb1007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09144d123dd26f6dfe0f857b293c4a99d7b0966a8b0749c1dde7e84dcf3036332915c9497f86d8eda791789359e2c944057e6d1069e651edaaae10cc5f1c602ff6", + "0x0900f7bca7214a6e6fcbcbfce1fd023985457d325de3f6cd151af34aaa2bda0636158c5f76d728ac8bf46731ad2e9905d779cf1ef8b4b38d392ed707ff81c6fad2", + "0x0919990527de00f1ddc538fcc0490d594a39b51dbbcaf1f26cdfe9be1bea7835401b69fa24ece85c0c60ec95c5f7a989b91a39f2cb495af36bead9017d76765db2", + "0x09197fbc425c6b18955436ccb7aa7095b99255f5ec2a9ccf356217108c0dc2ca99005c0f07bbf970d785c2c1c3866d26896d42fabf1e0808132915988fbc9c3f3a", + "0x091f1b98802e0b01dbb250552f1a9f7ad8e29cfce3462125c643e9e7be51f5c1e31571d732d58a06af66e8ecc4052a3433ec5092741932405013e9c041ae9c3e4a", + "0x09192e7d947a87813060baab27ee3f32a589e8bc57006a0802e624badb579b8b5f22ebf768ed68a8888c6e9a2c1f06f50e9e692efcaa1cc550796bb49c5a5936a6", + "0x07207869ed88c227637248ddc4bbc4067dcde50f0a1723c6e6c3746f10e454c5d5162c9af98705cf012ced1bf86d1cea75d219159b0bf0a94535a8cca7e5a71661", + "0x0621d7539d4749f67f5554bd5d8863324e3f59745fa8c8b1cb53bad21bac57d0ba1af71caa20f24d10027026702a6060186b00d0bd76b977817f762ec044222c01", + "0x042fc8c52a10b9301b599089efee0123d4d71053d427c2a8ea6bff1cc93186fe260508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008c621c5d486a08000000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420267f56f44cc61487af9df27cc6da1566c757eb56000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000001": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x090695394d7e90c7ab229f35a5bf7e984623a40a92cc4355e174eeb0fa43215cb1007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x092c04089db803ecef80badd1d52cc8e74d960051a224edde4f155a91b47c6d59327b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada27ef17d0195f0506df6a5b34dd52e09c851bc6b6af5fbdec53099aaed7f4d2fc", + "0x092cc07548fafc69a4dc7cfa2a483453f9f9819d104ccc8452b044584316b2918a0b1550511655ecc100037fab01d02dc8afb8b117bedad7f9ff3900d0747d44a6", + "0x091e5bd0832fb5a9827c679c75db95f1a559a07972a60b9c51ec435ea0633394390febfd3ab5fff6718b8ec4122a449fb8320d7a813240d702a4fda781e0a9bdce", + "0x092b96c11dcd9903dd8dfbca4f5acaf64c98f7aa8d1908e90d22682169ff2ba88c1aba44333a24240b0ba627dceff3778abc51012b698672802aea6c8c26bbfe18", + "0x090df918b89bd13e0c0a0745ccee3ac8ba25569fa5ba386d501311f0bf98a643331a327742a33e16c8ac782d9cef4cb06d98b731e6ca13b0c5450951b020f9b0c6", + "0x0820f409300cb23fffe97841b4b70f4c160f90393f7d29ecb5d2dc25f15c89fb550000000000000000000000000000000000000000000000000000000000000000", + "0x061276876f7f3ac122c96a402a706e93a7da84ad82496958bf8cf8d2baefa8c02a20abfaf6bc20fadf9a7609c0562a0ff138977845b052cf9e5d4c52cb2adedbe3", + "0x0427cfcbd2fe87474008e199ef5bff09273803bbf38032c75a36a7726b3c88f8a205080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002b2d37d04a6c2068ba19a08e79f3eeabfc6d2d1d516fcd700d4c377b23f9fc3f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000001000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x530000000000000000000000000000000000000f": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01600e6198f3de08a2b8ae6b32493e7f0f2ac288d195b9bae360081d2edb9a17f", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x092acea573988b3a33584f55cee3da7527b7ec93c39ee431d6a00e9e1c0908c32907d5d2c7ba73004c814f367fcfa9bbed0636535570c02819442719331f977f69", + "0x090e9d499bfcd7a95f27f1232e8299d71b9e312b56a5c2f96de6ba2114ce6427600bffa1d771c4f6eb4bbdc666b4ee82f7ea04a51f7c036d38e88ce7e9f7deb0d2", + "0x092e0e76440cf40d49e6a6441452c7ff3db1c5530a007c6d11b54c655302baa6a12719c9e93c1c4ab00f37d68d1fbde1ad2c4c0f540add6fc908b56c496d140ff6", + "0x082596dc85315e1b7b634ed1b19fd101397a8aaee2a296aca23e1f154d83bf2ca81d502de1ce7abdbf1e224e458bcbde4742e517dfc7ff124fca95bc7d6916a573", + "0x0418a86f98026d1a55f6fee616f04d51be16c033651ffaafb0514287ec067d04e805080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002d56fafe62ab5b6fed6b2a6cd3e6eaff4b96665a12fda3cb3fcd69f5e7bee95f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f8420530000000000000000000000000000000000000f000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000017": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01600e6198f3de08a2b8ae6b32493e7f0f2ac288d195b9bae360081d2edb9a17f", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x0921db0def816c47288e31e114f2d320d1bef10a2ce0ed76f2333bfbaf4c9665df164af8117b30ef75c3a4e008ea19aceaa6e63940ecf5e5a545aab0906e772f19", + "0x09243159bed6b5236c01d76e3c7ce8656377ede3215a267875ebd69ecb83609c2f1d430d8e77abbe31d81de9fd34eb7963320d07e618379663173532df9fd64a45", + "0x0901b9f43d7930c744b2f5c270fc55ebc1dad912c53348dc7fc91c254d4f65dc731935412eb3f2d483f1fad4cda432ea52bf9a2fcc83bb4998daae1e3fcb942d70", + "0x090e532e6013b5c675cdd7dd5dbca734c748a7f04cbd659dd2ae0bc5eafa5970c91e3d73de759429994c0b1ca675ad7693042bdd444939eb4adbf7098f3863b137", + "0x091cf7b52fea8453a4ca0b91aa9982cfa67d70de187ba25db4a8f248026ca3e530001cfc254334d3a06381cc5cee1769ae6912ce781377cc01b9c6917605338915", + "0x07092aee158cd2b81331e1ce9909492eb4317b6c5bc4794d546b62069798d0b24428cd8e8880db728741786b4fa7256d94a30e266ca07390acd342670e53ccb6b9", + "0x060e3bf5a186646517ca6d50e9d232f03b095fcceb727e719819a496973c2a8cf81102b8f2eac7af07547b293c5389e362fced543befbe69dc6fa5ec89b7df96e3", + "0x041918c47a133f759975cc95c0dba82051d9b5cd65407e76ef1366a9deaa14f28005080000000000000000000000000000000000000000000000000aec00000000000000000000000000000000000000000000000000000000000000000000000000000000047815c1b6b86b3270e62056fbc5c2f5e6d06a5d3255217e122006dece0bb56544107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000017000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01600e6198f3de08a2b8ae6b32493e7f0f2ac288d195b9bae360081d2edb9a17f", + "0x0901ae383d775a5593e8a9c58ec5e32d5b37296baa0363f05956ce31e20bf28f362e8e22f6b7f16ccaf973dab95034586851dd90ea30d65d8870b91aea2af5b8a3", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e14387ced0d9189063544aa46dd43112a978fc35e7526b39c40008a376e773d8c", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa130bd62f7e696e7c3e834cc85fa3d8725effbd8f5e8aec1c8e7f966d82744b08", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed92901c5e622b20c6495e875b575e3dd145b99700697726bb02b8cbf73912c4f5949", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e12bccf6a108d2a9e2970cc735937477086dde10fb57254012939a5fe256f882c3", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a023de0555312a2fb89fadd6c4ef42e0aa5c403f884adf6ed26ce9de2bee551d9", + "0x07000000000000000000000000000000000000000000000000000000000000000009118a4378481478ba2ce8cb6ee78986b1136bdc712a83c1d4f7a8f6189baf82", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d0b005e6f905f2e56b9bce131dac69841124cd59c226fe3cab7ae8c5aa8811426", + "0x060d815f195b8f33c180f64db3447bf925590e5c4dc51cababf56ffed7c673a5b804f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc7464b51c6e890000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x090695394d7e90c7ab229f35a5bf7e984623a40a92cc4355e174eeb0fa43215cb1007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x092c04089db803ecef80badd1d52cc8e74d960051a224edde4f155a91b47c6d59327b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada27ef17d0195f0506df6a5b34dd52e09c851bc6b6af5fbdec53099aaed7f4d2fc", + "0x091594815ce3dab93b7a7a68e15e4f028c70130867a0c79816cea289fa703f32612c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x0904cb8ed1ee836a65563cf69814f12e7f05d7fe12957ac9dc97368e9dd1da8e27003f6c7ab23583dcb86714887fb7001654b639aef9b6a428eb3b1ec49d1ffaba", + "0x090443b59957547874bbad45056b1194c9316d47b51ddac3098927333ab421292a19d66853551b5572832ff2b8fb72db53abe9fd30f56d6234918b51b1a50d3e75", + "0x0705f62a2631030f319cc83d3aed31907f893959137f58b48b7b3e8c22d877ea371bdec89829016afd7afc01d165ff7df8703bd585530f3a630989764f6eaa4b6b", + "0x081155333bd99d7309a59d3167d1015363dac4f00305fe9fb1663e70bd6d40e14e0000000000000000000000000000000000000000000000000000000000000000", + "0x082964b1230661041e032c985207341ef4fd4b33e64382d28bb03210e69d8cb1ff0000000000000000000000000000000000000000000000000000000000000000", + "0x0613932eb8f57fa5abe741533e08ccd2a04ad892f622243099b59dda840a0d0d8e0e8e9abd7780da5da2ef86496348acf63857300969c2e704a31e7ea401be45f7", + "0x040dc14d1e73c0c578e5be438abfab5d1a47a0eef96e1d759f6997244869c1011205080000000000000000000000000000000000000000000000001dfd0000000000000001000000000000000000000000000000000000000000000000000000000000000026d6ebbf5a9ab0fb041cf1ceda5a52dff6eb7ec8f2bb21c4c281dbcacfd6351c04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd520f78ce1e2f0de8fd15ce6ac4ddec6982413fda499000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x090695394d7e90c7ab229f35a5bf7e984623a40a92cc4355e174eeb0fa43215cb1007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x092c04089db803ecef80badd1d52cc8e74d960051a224edde4f155a91b47c6d59327b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada27ef17d0195f0506df6a5b34dd52e09c851bc6b6af5fbdec53099aaed7f4d2fc", + "0x091594815ce3dab93b7a7a68e15e4f028c70130867a0c79816cea289fa703f32612c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x0904cb8ed1ee836a65563cf69814f12e7f05d7fe12957ac9dc97368e9dd1da8e27003f6c7ab23583dcb86714887fb7001654b639aef9b6a428eb3b1ec49d1ffaba", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf0ae88f70036904a5ef65ca32ef6fe25a82526a71c7952aff24d5c988058ca52c", + "0x081bbe96ae8365df9b15e2165199c3502d9f5b962f585948040c008398fa1dbbee09b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x0829a6a7fe3afd17c3514e17e52d173e6cd61b855562b19e2ecfd817080a7e0e940000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000f057731e85b476292bfe91038b46ee1bca6cf7eb16cb08f09145a2509da58bc", + "0x060b1f2c348f9e213843ddee3beda053c5fd99bcf747ca7928f56d58507b422fc11dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d205080000000000000000000000000000000000000000000000000000000000000000087a000000000000000000000000000000000000000000000655cea7368c7bbc197f0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0x5300000000000000000000000000000000000001": { + "0x0000000000000000000000000000000000000000000000000000000000000021": [ + "0x09185c96062cbc2b564296e9e1bce3354dbcbf9f5879fd062d5b50bb358f81517e2a2dbce5edb6723342643101ac68123f3790ae822b572ec8bbd69da035c7b935", + "0x092d047e244b411ce9155f14462cfb81958ef4b4c2a08fc3fd4189484a8b7711a40462e3566daed4615c6e51a0e598dfb9a7ed84c831bfc516151e9f5ffb8110ca", + "0x09261fe911b00d2fd329c6b0e4b6d4c3a810b95a82ff32e6946a3244614feb91d205b63b9955f3a8244688b1a6cb053a7559f79129086239b473999e85be4c4282", + "0x07251841563b13c8aa1784b2d917584c358e1607710c0e0b41e5b1c45a07ceac601daf38969872c436599f595013a03f6c004d1f072aa7c8347f6ead35212900a8", + "0x08249e00f5aae6d513fc492c019a4e4de721a60764cada3866244a95db0d4e38bf0000000000000000000000000000000000000000000000000000000000000000", + "0x0818749973fd91f5be3859e8cfa68caee44893779b104075dd793bf4c486475b5b0000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000017d7d830e47e7f6da4ddbf680cf2eb1f9b538cec3240c26711d780f22f093f9a", + "0x0700000000000000000000000000000000000000000000000000000000000000000abb47e0d1f63a2287426a57ee22892129c848adcfadb74266fee6b726c86ede", + "0x07000000000000000000000000000000000000000000000000000000000000000021e13181b559aa6ad86c239a49008b70447de95cb59caa3242701b556ff6d030", + "0x0609a3a225fccec46d81cb0f42943e252523157488c3f7712cc9528ec8eceeee2d0736af2262ac152f39d5da51e394c65d8ab9f3223c051e5be4c43e508a8766cf", + "0x042f683d080c393f5fb2ade2190fd56e8a5e8fa26533acdea8cce25caa236027cc01010000f15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67200000000000000000000000000000000000000000000000000000000000000021", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x530000000000000000000000000000000000000f": { + "0x0000000000000000000000000000000000000000000000000000000000000001": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x0826741766ba756a60481cdbfbf1385b2e19410e0b174723be76ccce90749c19b71721b818bb25fdc0627fbd0f0ced2d5f58f1065a3e11d06073b58139aa144311", + "0x0700000000000000000000000000000000000000000000000000000000000000002aa3eec54733e8552173f9294865bf49cf8b2c952706e74cee743186ad4cd928", + "0x080ccb96bae7a65349544b73c51e1c17e905afa52b470cd3d12f5068df70ae80380000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000001982d84b59e872b109cb1b01bc1d03406977eb16aeef0ca94449c0e4dbde6426", + "0x08148058fb1d8433119f2f078417d61bd03610293c07a22079d8add13751806be00000000000000000000000000000000000000000000000000000000000000000", + "0x080b933363c8e146ca259ddce0026a7cda36a75da17137370243f5452dad2e2bd10000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000029d862e775a17f6a182820b3ef22a94850f73238972142e77c423a5ccda02739", + "0x0607f1a71dd97c713b6e6f0e0429b179a7f7a5d1a95605340f87f7b3b5c6571655156a0960a84fa4287f66d18b9c39ab9d403fa6b6dddd126f47758aadcb82e122", + "0x0426049ba6de63003492eb078a01a8aa4f4a0e67f28f0955c2eba9101d5d2eea50010100000000000000000000000000000000000000000000000000000000000005f5e108200000000000000000000000000000000000000000000000000000000000000001", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000002": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04020953ad52de135367a1ba2629636216ed5174cce5629d11b5d97fe733f07dcc0101000000000000000000000000000000000000000000000000000000000000000009c4200000000000000000000000000000000000000000000000000000000000000002", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000003": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x0406c50541f08911ad149aa545dd3d606f86ee63c751a795c7d57f0d3f85e6bdeb01010000000000000000000000000000000000000000000000000000000000003b9aca00200000000000000000000000000000000000000000000000000000000000000003", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000006": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04064ef33f6d7044a6aa1458b710bb24a531e379030cf6ca490d84fff1d8e79c94010100000000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000006", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000007": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x082b571cbf4c65b2bf5a694234230c0bb2e95c55920e0c050a73027dea6f5535ab0000000000000000000000000000000000000000000000000000000000000000", + "0x082119746c2afd71d1574bea80b47eab52d70db3990cd1c9f6d4df98eaed5c3ff01555b1ad85223923b16c0129d117eb56e12b2c4310ff3014c28b40684e3ea69d", + "0x040d1e80106f23933567a7c4881177b5d6c45a3f319feafe560a28df75769db9ba0101000000000000000000000000000000000000000000000000000000000b33edbfaf14200000000000000000000000000000000000000000000000000000000000000007", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000008": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x060e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200302bd20972a48695c1c418461cc2124f0c246ad1bb41e1d8d05cd9527784228a", + "0x0412c0c59f64422dd5b7ce259c4aa62e9bf4e2bcc4f0da068e332b9f4e502ba38f01010000000000000000000000000000000000000000000000000000000000174876e800200000000000000000000000000000000000000000000000000000000000000008", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000009": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x05", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x5300000000000000000000000000000000000017": { + "0x0000000000000000000000000000000000000000000000000000000000000065": [ + "0x091e6f7e3b2102387b1b88b997f51470252cf226b68be43284a52489de59a2abb0105259f0b8858b399570780c836f31751cc2566ba5935c50b2db952c1020abb0", + "0x091623ed516b763c3dd7bd75be87d3bda3bc50b9909eb6f832c706e2f973246c131bb859e26b23e5d0474d863af33c2a1163103f5881396448cd8ef9cfe18f9b92", + "0x0812bc2e9bd37f44093eb71c7af67706fd9be1a51a828a3d321b792b5490c6ad560e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200", + "0x07290cb26e75385afbd8fce76271781f49ca9f5737fe573f7a121642a43bdba61a04c601c63ad45f2c8c8c8cbe20c788ef63e574ce0e800153c8b0c855dca3c0be", + "0x0702bdcd1f95c7883b7b633e040eb8263e1fb0ab97a3fa5e590f4ba82b29ee3e5a2284968786ddc52459cd3e8be14da7533c8470c63575eaccae28bd65169074f9", + "0x07000000000000000000000000000000000000000000000000000000000000000028bcb7656960130b704e5cd2afdc5bf933752cc290e10ce8de9ff4eeff23fa71", + "0x060bf27252e269c88af00daf8e309f853351131ba9cb56aa8ffdc008546b4eefc9236d89b8a52ce6f920048f57605af94c276903d51b48d2a9549a2d4ce38af1e2", + "0x042115c9b0a0938aa1ce2e8c01581e5aa931288249a453588de70cf2c5dae26a7b0101000072fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc200000000000000000000000000000000000000000000000000000000000000065", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": { + "0x10f63bf6e119ea77f5bac4f2d14208f7bc130150e39d1898d11f3a85a4539e7b": [ + "0x072c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc50794d00aa0fb0c977fad9810122d1d52810dfe10dd3f060f3d5060cb09d412e1", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc45560ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x041e8c398d459c37919cfeed406cdf7ae1f710c7cfc105ed6a51d296d7efed716501010000000000000000000000000000000000000000000000000000000000000000000320a4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x411092aa40253bc3a57548e804d0118e38225673267c809e7a24d0ef673c1e36": [ + "0x072c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc50794d00aa0fb0c977fad9810122d1d52810dfe10dd3f060f3d5060cb09d412e1", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc45560ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x041e8c398d459c37919cfeed406cdf7ae1f710c7cfc105ed6a51d296d7efed716501010000000000000000000000000000000000000000000000000000000000000000000320a4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xa7f7d1323a52987879f36312c5073aaaebefb56b07868f38dc16e0fe5a6e3cea": [ + "0x072c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc50794d00aa0fb0c977fad9810122d1d52810dfe10dd3f060f3d5060cb09d412e1", + "0x0402ff3d98d60879a35a5db7d2391babef2157d459d0d3fe39288673e1d095e872010100000000000000000000000000000000000000000000000000000000000000000001209b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + }, + "codes": [ + { + "codeSize": 0, + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "code": "0x" + }, + { + "codeSize": 7677, + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "hash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "code": "0x608060405234801561000f575f80fd5b506004361061009c575f3560e01c8063637bd16411610064578063637bd1641461019057806365207521146101c05780638a59e100146101f05780638f527e9414610220578063dbd81bc71461023e5761009c565b80630c8f3129146100a057806321ceca81146100d0578063447a4c62146101005780635e109b571461013057806363138d4f14610160575b5f80fd5b6100ba60048036038101906100b59190611296565b61026e565b6040516100c791906112f7565b60405180910390f35b6100ea60048036038101906100e591906113ae565b6103ad565b6040516100f79190611455565b60405180910390f35b61011a600480360381019061011591906114a8565b610460565b60405161012791906112f7565b60405180910390f35b61014a600480360381019061014591906113ae565b61075f565b60405161015791906112f7565b60405180910390f35b61017a60048036038101906101759190611296565b610770565b60405161018791906112f7565b60405180910390f35b6101aa60048036038101906101a591906113ae565b6108af565b6040516101b791906112f7565b60405180910390f35b6101da60048036038101906101d59190611296565b6108c0565b6040516101e791906112f7565b60405180910390f35b61020a600480360381019061020591906114d3565b610a50565b60405161021791906112f7565b60405180910390f35b610228610d94565b6040516102359190611455565b60405180910390f35b610258600480360381019061025391906113ae565b610fbc565b60405161026591906112f7565b60405180910390f35b5f8061027a8351610ff0565b60405160200161028a91906115b1565b60405160208183030381529060405290505f80600373ffffffffffffffffffffffffffffffffffffffff16856040516102c3919061160c565b5f60405180830381855afa9150503d805f81146102fb576040519150601f19603f3d011682016040523d82523d5f602084013e610300565b606091505b5091509150815f846040516103159190611622565b90815260200160405180910390205f6101000a81548160ff0219169083151502179055508060018460405161034a9190611622565b908152602001604051809103902090816103649190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018383834260405161039a9493929190611958565b60405180910390a1819350505050919050565b6001818051602081018201805184825260208301602085012081835280955050505050505f9150905080546103e190611665565b80601f016020809104026020016040519081016040528092919081815260200182805461040d90611665565b80156104585780601f1061042f57610100808354040283529160200191610458565b820191905f5260205f20905b81548152906001019060200180831161043b57829003601f168201915b505050505081565b5f8061046b83610ff0565b60405160200161047b91906119f3565b60405160208183030381529060405290505f60c08461049a9190611a41565b67ffffffffffffffff8111156104b3576104b2611172565b5b6040519080825280601f01601f1916602001820160405280156104e55781602001600182028036833780820191505090505b5090505f5b8481101561064b575f60c0826105009190611a41565b905060018261050f9190611a82565b60f81b83601f836105209190611a82565b8151811061053157610530611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a90535060028261056c9190611a82565b60f81b836040601f8461057f9190611a82565b6105899190611a82565b8151811061059a57610599611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053506003826105d59190611a82565b60f81b8360206040601f856105ea9190611a82565b6105f49190611a82565b6105fe9190611a82565b8151811061060f5761060e611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505080806001019150506104ea565b505f80600873ffffffffffffffffffffffffffffffffffffffff1683604051610674919061160c565b5f60405180830381855afa9150503d805f81146106ac576040519150601f19603f3d011682016040523d82523d5f602084013e6106b1565b606091505b5091509150815f856040516106c69190611622565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001856040516106fb9190611622565b908152602001604051809103902090816107159190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018483834260405161074b9493929190611958565b60405180910390a181945050505050919050565b5f61076982610770565b9050919050565b5f8061077c8351610ff0565b60405160200161078c9190611b2c565b60405160208183030381529060405290505f80600273ffffffffffffffffffffffffffffffffffffffff16856040516107c5919061160c565b5f60405180830381855afa9150503d805f81146107fd576040519150601f19603f3d011682016040523d82523d5f602084013e610802565b606091505b5091509150815f846040516108179190611622565b90815260200160405180910390205f6101000a81548160ff0219169083151502179055508060018460405161084c9190611622565b908152602001604051809103902090816108669190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018383834260405161089c9493929190611958565b60405180910390a1819350505050919050565b5f6108b98261026e565b9050919050565b5f60d5825114610905576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fc90611bbd565b60405180910390fd5b5f6040518060400160405280600781526020017f426c616b6532460000000000000000000000000000000000000000000000000081525090505f80600973ffffffffffffffffffffffffffffffffffffffff1685604051610966919061160c565b5f60405180830381855afa9150503d805f811461099e576040519150601f19603f3d011682016040523d82523d5f602084013e6109a3565b606091505b5091509150815f846040516109b89190611622565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001846040516109ed9190611622565b90815260200160405180910390209081610a079190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00183838342604051610a3d9493929190611958565b60405180910390a1819350505050919050565b5f80610a5b85610ff0565b610a6485610ff0565b610a6d85610ff0565b604051602001610a7f93929190611c6f565b60405160208183030381529060405290505f8385876060610aa09190611a82565b610aaa9190611a82565b610ab49190611a82565b67ffffffffffffffff811115610acd57610acc611172565b5b6040519080825280601f01601f191660200182016040528015610aff5781602001600182028036833780820191505090505b5090505f865f1b90505f865f1b90505f865f1b90508260208501528160408501528060608501525f891115610b8d57600760f81b8460018b6060610b439190611a82565b610b4d9190611cc0565b81518110610b5e57610b5d611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f881115610bff57600360f81b8460018a8c6060610bab9190611a82565b610bb59190611a82565b610bbf9190611cc0565b81518110610bd057610bcf611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f871115610c7c57601160f81b846001898b8d6060610c1e9190611a82565b610c289190611a82565b610c329190611a82565b610c3c9190611cc0565b81518110610c4d57610c4c611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f80600573ffffffffffffffffffffffffffffffffffffffff1686604051610ca4919061160c565b5f60405180830381855afa9150503d805f8114610cdc576040519150601f19603f3d011682016040523d82523d5f602084013e610ce1565b606091505b5091509150815f88604051610cf69190611622565b90815260200160405180910390205f6101000a81548160ff02191690831515021790555080600188604051610d2b9190611622565b90815260200160405180910390209081610d459190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00187838342604051610d7b9493929190611958565b60405180910390a1819750505050505050509392505050565b60605f60d567ffffffffffffffff811115610db257610db1611172565b5b6040519080825280601f01601f191660200182016040528015610de45781602001600182028036833780820191505090505b5090505f60f81b815f81518110610dfe57610dfd611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600181518110610e4457610e43611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600281518110610e8a57610e89611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600c60f81b81600381518110610ed157610ed0611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f600490505b60d4811015610f6d5761010081610f1c9190611d20565b60f81b828281518110610f3257610f31611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508080600101915050610f05565b50600160f81b8160d481518110610f8757610f86611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508091505090565b5f818051602081018201805184825260208301602085012081835280955050505050505f915054906101000a900460ff1681565b60605f8203611036576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611144565b5f8290505f5b5f821461106557808061104e90611d50565b915050600a8261105e9190611d97565b915061103c565b5f8167ffffffffffffffff8111156110805761107f611172565b5b6040519080825280601f01601f1916602001820160405280156110b25781602001600182028036833780820191505090505b5090505b5f851461113d576001826110ca9190611cc0565b9150600a856110d99190611d20565b60306110e59190611a82565b60f81b8183815181106110fb576110fa611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600a856111369190611d97565b94506110b6565b8093505050505b919050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6111a882611162565b810181811067ffffffffffffffff821117156111c7576111c6611172565b5b80604052505050565b5f6111d9611149565b90506111e5828261119f565b919050565b5f67ffffffffffffffff82111561120457611203611172565b5b61120d82611162565b9050602081019050919050565b828183375f83830152505050565b5f61123a611235846111ea565b6111d0565b9050828152602081018484840111156112565761125561115e565b5b61126184828561121a565b509392505050565b5f82601f83011261127d5761127c61115a565b5b813561128d848260208601611228565b91505092915050565b5f602082840312156112ab576112aa611152565b5b5f82013567ffffffffffffffff8111156112c8576112c7611156565b5b6112d484828501611269565b91505092915050565b5f8115159050919050565b6112f1816112dd565b82525050565b5f60208201905061130a5f8301846112e8565b92915050565b5f67ffffffffffffffff82111561132a57611329611172565b5b61133382611162565b9050602081019050919050565b5f61135261134d84611310565b6111d0565b90508281526020810184848401111561136e5761136d61115e565b5b61137984828561121a565b509392505050565b5f82601f8301126113955761139461115a565b5b81356113a5848260208601611340565b91505092915050565b5f602082840312156113c3576113c2611152565b5b5f82013567ffffffffffffffff8111156113e0576113df611156565b5b6113ec84828501611381565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f611427826113f5565b61143181856113ff565b935061144181856020860161140f565b61144a81611162565b840191505092915050565b5f6020820190508181035f83015261146d818461141d565b905092915050565b5f819050919050565b61148781611475565b8114611491575f80fd5b50565b5f813590506114a28161147e565b92915050565b5f602082840312156114bd576114bc611152565b5b5f6114ca84828501611494565b91505092915050565b5f805f606084860312156114ea576114e9611152565b5b5f6114f786828701611494565b935050602061150886828701611494565b925050604061151986828701611494565b9150509250925092565b5f81905092915050565b7f524950454d443136305f000000000000000000000000000000000000000000005f82015250565b5f611561600a83611523565b915061156c8261152d565b600a82019050919050565b5f81519050919050565b5f61158b82611577565b6115958185611523565b93506115a581856020860161140f565b80840191505092915050565b5f6115bb82611555565b91506115c78284611581565b915081905092915050565b5f81905092915050565b5f6115e6826113f5565b6115f081856115d2565b935061160081856020860161140f565b80840191505092915050565b5f61161782846115dc565b915081905092915050565b5f61162d8284611581565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061167c57607f821691505b60208210810361168f5761168e611638565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026116f17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826116b6565b6116fb86836116b6565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61173661173161172c84611475565b611713565b611475565b9050919050565b5f819050919050565b61174f8361171c565b61176361175b8261173d565b8484546116c2565b825550505050565b5f90565b61177761176b565b611782818484611746565b505050565b5b818110156117a55761179a5f8261176f565b600181019050611788565b5050565b601f8211156117ea576117bb81611695565b6117c4846116a7565b810160208510156117d3578190505b6117e76117df856116a7565b830182611787565b50505b505050565b5f82821c905092915050565b5f61180a5f19846008026117ef565b1980831691505092915050565b5f61182283836117fb565b9150826002028217905092915050565b61183b826113f5565b67ffffffffffffffff81111561185457611853611172565b5b61185e8254611665565b6118698282856117a9565b5f60209050601f83116001811461189a575f8415611888578287015190505b6118928582611817565b8655506118f9565b601f1984166118a886611695565b5f5b828110156118cf578489015182556001820191506020850194506020810190506118aa565b868310156118ec57848901516118e8601f8916826117fb565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b5f61191b82611577565b6119258185611901565b935061193581856020860161140f565b61193e81611162565b840191505092915050565b61195281611475565b82525050565b5f6080820190508181035f8301526119708187611911565b905061197f60208301866112e8565b8181036040830152611991818561141d565b90506119a06060830184611949565b95945050505050565b7f50616972696e675f0000000000000000000000000000000000000000000000005f82015250565b5f6119dd600883611523565b91506119e8826119a9565b600882019050919050565b5f6119fd826119d1565b9150611a098284611581565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611a4b82611475565b9150611a5683611475565b9250828202611a6481611475565b91508282048414831517611a7b57611a7a611a14565b5b5092915050565b5f611a8c82611475565b9150611a9783611475565b9250828201905080821115611aaf57611aae611a14565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f5348413235365f000000000000000000000000000000000000000000000000005f82015250565b5f611b16600783611523565b9150611b2182611ae2565b600782019050919050565b5f611b3682611b0a565b9150611b428284611581565b915081905092915050565b7f426c616b6532662072657175697265732065786163746c7920323133206279745f8201527f657320696e707574000000000000000000000000000000000000000000000000602082015250565b5f611ba7602883611901565b9150611bb282611b4d565b604082019050919050565b5f6020820190508181035f830152611bd481611b9b565b9050919050565b7f4d6f644578705f000000000000000000000000000000000000000000000000005f82015250565b5f611c0f600783611523565b9150611c1a82611bdb565b600782019050919050565b7f5f000000000000000000000000000000000000000000000000000000000000005f82015250565b5f611c59600183611523565b9150611c6482611c25565b600182019050919050565b5f611c7982611c03565b9150611c858286611581565b9150611c9082611c4d565b9150611c9c8285611581565b9150611ca782611c4d565b9150611cb38284611581565b9150819050949350505050565b5f611cca82611475565b9150611cd583611475565b9250828203905081811115611ced57611cec611a14565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611d2a82611475565b9150611d3583611475565b925082611d4557611d44611cf3565b5b828206905092915050565b5f611d5a82611475565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611d8c57611d8b611a14565b5b600182019050919050565b5f611da182611475565b9150611dac83611475565b925082611dbc57611dbb611cf3565b5b82820490509291505056fea264697066735822122005118c223c12b158349613416fd6342abd507776ce6306cce1e9a99fa8e7b9bb64736f6c634300081a0033" + } + ], + "txStorageTraces": [ + { + "rootBefore": "0x1c3c7f10ba4091cba575777e91ceb7db804dd686e697dc7f0aa20a7d83761375", + "rootAfter": "0x06282a9b276c3b80d658aca386f03e479d9379af169e73801488632461d86525", + "proofs": { + "0x0000000000000000000000000000000000000003": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x090695394d7e90c7ab229f35a5bf7e984623a40a92cc4355e174eeb0fa43215cb1007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09144d123dd26f6dfe0f857b293c4a99d7b0966a8b0749c1dde7e84dcf3036332915c9497f86d8eda791789359e2c944057e6d1069e651edaaae10cc5f1c602ff6", + "0x0900f7bca7214a6e6fcbcbfce1fd023985457d325de3f6cd151af34aaa2bda0636158c5f76d728ac8bf46731ad2e9905d779cf1ef8b4b38d392ed707ff81c6fad2", + "0x0919990527de00f1ddc538fcc0490d594a39b51dbbcaf1f26cdfe9be1bea7835401b69fa24ece85c0c60ec95c5f7a989b91a39f2cb495af36bead9017d76765db2", + "0x09197fbc425c6b18955436ccb7aa7095b99255f5ec2a9ccf356217108c0dc2ca99005c0f07bbf970d785c2c1c3866d26896d42fabf1e0808132915988fbc9c3f3a", + "0x091f1b98802e0b01dbb250552f1a9f7ad8e29cfce3462125c643e9e7be51f5c1e31571d732d58a06af66e8ecc4052a3433ec5092741932405013e9c041ae9c3e4a", + "0x09192e7d947a87813060baab27ee3f32a589e8bc57006a0802e624badb579b8b5f22ebf768ed68a8888c6e9a2c1f06f50e9e692efcaa1cc550796bb49c5a5936a6", + "0x07207869ed88c227637248ddc4bbc4067dcde50f0a1723c6e6c3746f10e454c5d5162c9af98705cf012ced1bf86d1cea75d219159b0bf0a94535a8cca7e5a71661", + "0x0621d7539d4749f67f5554bd5d8863324e3f59745fa8c8b1cb53bad21bac57d0ba1af71caa20f24d10027026702a6060186b00d0bd76b977817f762ec044222c01", + "0x042fc8c52a10b9301b599089efee0123d4d71053d427c2a8ea6bff1cc93186fe260508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008c621c5d486a08000000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420267f56f44cc61487af9df27cc6da1566c757eb56000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01600e6198f3de08a2b8ae6b32493e7f0f2ac288d195b9bae360081d2edb9a17f", + "0x0901ae383d775a5593e8a9c58ec5e32d5b37296baa0363f05956ce31e20bf28f362e8e22f6b7f16ccaf973dab95034586851dd90ea30d65d8870b91aea2af5b8a3", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e14387ced0d9189063544aa46dd43112a978fc35e7526b39c40008a376e773d8c", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa130bd62f7e696e7c3e834cc85fa3d8725effbd8f5e8aec1c8e7f966d82744b08", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed92901c5e622b20c6495e875b575e3dd145b99700697726bb02b8cbf73912c4f5949", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e12bccf6a108d2a9e2970cc735937477086dde10fb57254012939a5fe256f882c3", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a023de0555312a2fb89fadd6c4ef42e0aa5c403f884adf6ed26ce9de2bee551d9", + "0x07000000000000000000000000000000000000000000000000000000000000000009118a4378481478ba2ce8cb6ee78986b1136bdc712a83c1d4f7a8f6189baf82", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d0b005e6f905f2e56b9bce131dac69841124cd59c226fe3cab7ae8c5aa8811426", + "0x060d815f195b8f33c180f64db3447bf925590e5c4dc51cababf56ffed7c673a5b804f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc7464b51c6e890000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x090695394d7e90c7ab229f35a5bf7e984623a40a92cc4355e174eeb0fa43215cb1007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x092c04089db803ecef80badd1d52cc8e74d960051a224edde4f155a91b47c6d59327b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada27ef17d0195f0506df6a5b34dd52e09c851bc6b6af5fbdec53099aaed7f4d2fc", + "0x091594815ce3dab93b7a7a68e15e4f028c70130867a0c79816cea289fa703f32612c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x0904cb8ed1ee836a65563cf69814f12e7f05d7fe12957ac9dc97368e9dd1da8e27003f6c7ab23583dcb86714887fb7001654b639aef9b6a428eb3b1ec49d1ffaba", + "0x090443b59957547874bbad45056b1194c9316d47b51ddac3098927333ab421292a19d66853551b5572832ff2b8fb72db53abe9fd30f56d6234918b51b1a50d3e75", + "0x0705f62a2631030f319cc83d3aed31907f893959137f58b48b7b3e8c22d877ea371bdec89829016afd7afc01d165ff7df8703bd585530f3a630989764f6eaa4b6b", + "0x081155333bd99d7309a59d3167d1015363dac4f00305fe9fb1663e70bd6d40e14e0000000000000000000000000000000000000000000000000000000000000000", + "0x082964b1230661041e032c985207341ef4fd4b33e64382d28bb03210e69d8cb1ff0000000000000000000000000000000000000000000000000000000000000000", + "0x0613932eb8f57fa5abe741533e08ccd2a04ad892f622243099b59dda840a0d0d8e0e8e9abd7780da5da2ef86496348acf63857300969c2e704a31e7ea401be45f7", + "0x040dc14d1e73c0c578e5be438abfab5d1a47a0eef96e1d759f6997244869c1011205080000000000000000000000000000000000000000000000001dfd0000000000000001000000000000000000000000000000000000000000000000000000000000000026d6ebbf5a9ab0fb041cf1ceda5a52dff6eb7ec8f2bb21c4c281dbcacfd6351c04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd520f78ce1e2f0de8fd15ce6ac4ddec6982413fda499000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x0914e497f5219f809a1da1d4f2f115131b5dc9ad48724a1106b36d065909ad440a2d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x0914698788d45d66a67b900ee5938ae433aa83c5c4c43e5d866680d7b1f2661bba1b2ca4446bcde185d101b0d0c7f09c3e659d1607550762d2a4534c0f62946586", + "0x090695394d7e90c7ab229f35a5bf7e984623a40a92cc4355e174eeb0fa43215cb1007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x092c04089db803ecef80badd1d52cc8e74d960051a224edde4f155a91b47c6d59327b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada27ef17d0195f0506df6a5b34dd52e09c851bc6b6af5fbdec53099aaed7f4d2fc", + "0x091594815ce3dab93b7a7a68e15e4f028c70130867a0c79816cea289fa703f32612c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x0904cb8ed1ee836a65563cf69814f12e7f05d7fe12957ac9dc97368e9dd1da8e27003f6c7ab23583dcb86714887fb7001654b639aef9b6a428eb3b1ec49d1ffaba", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf0ae88f70036904a5ef65ca32ef6fe25a82526a71c7952aff24d5c988058ca52c", + "0x081bbe96ae8365df9b15e2165199c3502d9f5b962f585948040c008398fa1dbbee09b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x0829a6a7fe3afd17c3514e17e52d173e6cd61b855562b19e2ecfd817080a7e0e940000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000f057731e85b476292bfe91038b46ee1bca6cf7eb16cb08f09145a2509da58bc", + "0x060b1f2c348f9e213843ddee3beda053c5fd99bcf747ca7928f56d58507b422fc11dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d205080000000000000000000000000000000000000000000000000000000000000000087a000000000000000000000000000000000000000000000655cea7368c7bbc197f0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": { + "0x10f63bf6e119ea77f5bac4f2d14208f7bc130150e39d1898d11f3a85a4539e7b": [ + "0x072c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc50794d00aa0fb0c977fad9810122d1d52810dfe10dd3f060f3d5060cb09d412e1", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc45560ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x041e8c398d459c37919cfeed406cdf7ae1f710c7cfc105ed6a51d296d7efed716501010000000000000000000000000000000000000000000000000000000000000000000320a4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x411092aa40253bc3a57548e804d0118e38225673267c809e7a24d0ef673c1e36": [ + "0x072c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc50794d00aa0fb0c977fad9810122d1d52810dfe10dd3f060f3d5060cb09d412e1", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc45560ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x041e8c398d459c37919cfeed406cdf7ae1f710c7cfc105ed6a51d296d7efed716501010000000000000000000000000000000000000000000000000000000000000000000320a4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xa7f7d1323a52987879f36312c5073aaaebefb56b07868f38dc16e0fe5a6e3cea": [ + "0x072c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc50794d00aa0fb0c977fad9810122d1d52810dfe10dd3f060f3d5060cb09d412e1", + "0x0402ff3d98d60879a35a5db7d2391babef2157d459d0d3fe39288673e1d095e872010100000000000000000000000000000000000000000000000000000000000000000001209b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + } + ], + "executionResults": [ + { + "l1DataFee": "0x11ecafb65a3", + "gas": 97553, + "failed": false, + "returnValue": "0000000000000000000000000000000000000000000000000000000000000001", + "from": { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2170, + "balance": "0x655cea7368c7bbc197f", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "to": { + "address": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "poseidonCodeHash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "codeSize": 7677 + }, + "accountAfter": [ + { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2171, + "balance": "0x655cea73556fa240d9c", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + { + "address": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "poseidonCodeHash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "codeSize": 7677 + }, + { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc759a36b47a6c", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + } + ], + "structLogs": [ + { + "pc": 0, + "op": "PUSH1", + "gas": 76033, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2, + "op": "PUSH1", + "gas": 76030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4, + "op": "MSTORE", + "gas": 76027, + "gasCost": 12, + "depth": 1 + }, + { + "pc": 5, + "op": "CALLVALUE", + "gas": 76015, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6, + "op": "DUP1", + "gas": 76013, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7, + "op": "ISZERO", + "gas": 76010, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 8, + "op": "PUSH2", + "gas": 76007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 11, + "op": "JUMPI", + "gas": 76004, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 15, + "op": "JUMPDEST", + "gas": 75994, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 16, + "op": "POP", + "gas": 75993, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 17, + "op": "PUSH1", + "gas": 75991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 19, + "op": "CALLDATASIZE", + "gas": 75988, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 20, + "op": "LT", + "gas": 75986, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 21, + "op": "PUSH2", + "gas": 75983, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 24, + "op": "JUMPI", + "gas": 75980, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 25, + "op": "PUSH0", + "gas": 75970, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 26, + "op": "CALLDATALOAD", + "gas": 75968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 27, + "op": "PUSH1", + "gas": 75965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 29, + "op": "SHR", + "gas": 75962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 30, + "op": "DUP1", + "gas": 75959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 31, + "op": "PUSH4", + "gas": 75956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 36, + "op": "GT", + "gas": 75953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 37, + "op": "PUSH2", + "gas": 75950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 40, + "op": "JUMPI", + "gas": 75947, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 41, + "op": "DUP1", + "gas": 75937, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 42, + "op": "PUSH4", + "gas": 75934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 47, + "op": "EQ", + "gas": 75931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 48, + "op": "PUSH2", + "gas": 75928, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 51, + "op": "JUMPI", + "gas": 75925, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 400, + "op": "JUMPDEST", + "gas": 75915, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 401, + "op": "PUSH2", + "gas": 75914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 404, + "op": "PUSH1", + "gas": 75911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 406, + "op": "DUP1", + "gas": 75908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 407, + "op": "CALLDATASIZE", + "gas": 75905, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 408, + "op": "SUB", + "gas": 75903, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 409, + "op": "DUP2", + "gas": 75900, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 410, + "op": "ADD", + "gas": 75897, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 411, + "op": "SWAP1", + "gas": 75894, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 412, + "op": "PUSH2", + "gas": 75891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 415, + "op": "SWAP2", + "gas": 75888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 416, + "op": "SWAP1", + "gas": 75885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 417, + "op": "PUSH2", + "gas": 75882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 420, + "op": "JUMP", + "gas": 75879, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5038, + "op": "JUMPDEST", + "gas": 75871, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5039, + "op": "PUSH0", + "gas": 75870, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5040, + "op": "PUSH1", + "gas": 75868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5042, + "op": "DUP3", + "gas": 75865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5043, + "op": "DUP5", + "gas": 75862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5044, + "op": "SUB", + "gas": 75859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5045, + "op": "SLT", + "gas": 75856, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5046, + "op": "ISZERO", + "gas": 75853, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5047, + "op": "PUSH2", + "gas": 75850, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5050, + "op": "JUMPI", + "gas": 75847, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5059, + "op": "JUMPDEST", + "gas": 75837, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5060, + "op": "PUSH0", + "gas": 75836, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5061, + "op": "DUP3", + "gas": 75834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5062, + "op": "ADD", + "gas": 75831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5063, + "op": "CALLDATALOAD", + "gas": 75828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5064, + "op": "PUSH8", + "gas": 75825, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5073, + "op": "DUP2", + "gas": 75822, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5074, + "op": "GT", + "gas": 75819, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5075, + "op": "ISZERO", + "gas": 75816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5076, + "op": "PUSH2", + "gas": 75813, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5079, + "op": "JUMPI", + "gas": 75810, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5088, + "op": "JUMPDEST", + "gas": 75800, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5089, + "op": "PUSH2", + "gas": 75799, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5092, + "op": "DUP5", + "gas": 75796, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5093, + "op": "DUP3", + "gas": 75793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5094, + "op": "DUP6", + "gas": 75790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5095, + "op": "ADD", + "gas": 75787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5096, + "op": "PUSH2", + "gas": 75784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5099, + "op": "JUMP", + "gas": 75781, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4993, + "op": "JUMPDEST", + "gas": 75773, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4994, + "op": "PUSH0", + "gas": 75772, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4995, + "op": "DUP3", + "gas": 75770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4996, + "op": "PUSH1", + "gas": 75767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4998, + "op": "DUP4", + "gas": 75764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4999, + "op": "ADD", + "gas": 75761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5000, + "op": "SLT", + "gas": 75758, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5001, + "op": "PUSH2", + "gas": 75755, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5004, + "op": "JUMPI", + "gas": 75752, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5013, + "op": "JUMPDEST", + "gas": 75742, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5014, + "op": "DUP2", + "gas": 75741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5015, + "op": "CALLDATALOAD", + "gas": 75738, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5016, + "op": "PUSH2", + "gas": 75735, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5019, + "op": "DUP5", + "gas": 75732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5020, + "op": "DUP3", + "gas": 75729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5021, + "op": "PUSH1", + "gas": 75726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5023, + "op": "DUP7", + "gas": 75723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5024, + "op": "ADD", + "gas": 75720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5025, + "op": "PUSH2", + "gas": 75717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5028, + "op": "JUMP", + "gas": 75714, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4928, + "op": "JUMPDEST", + "gas": 75706, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4929, + "op": "PUSH0", + "gas": 75705, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4930, + "op": "PUSH2", + "gas": 75703, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4933, + "op": "PUSH2", + "gas": 75700, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4936, + "op": "DUP5", + "gas": 75697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4937, + "op": "PUSH2", + "gas": 75694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4940, + "op": "JUMP", + "gas": 75691, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4880, + "op": "JUMPDEST", + "gas": 75683, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4881, + "op": "PUSH0", + "gas": 75682, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4882, + "op": "PUSH8", + "gas": 75680, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4891, + "op": "DUP3", + "gas": 75677, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4892, + "op": "GT", + "gas": 75674, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4893, + "op": "ISZERO", + "gas": 75671, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4894, + "op": "PUSH2", + "gas": 75668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4897, + "op": "JUMPI", + "gas": 75665, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4906, + "op": "JUMPDEST", + "gas": 75655, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4907, + "op": "PUSH2", + "gas": 75654, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4910, + "op": "DUP3", + "gas": 75651, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4911, + "op": "PUSH2", + "gas": 75648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4914, + "op": "JUMP", + "gas": 75645, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 75637, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 75636, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 75634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 75631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 75628, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 75625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 75622, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 75619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 75616, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 75613, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 75611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 75608, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 75605, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 75603, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4915, + "op": "JUMPDEST", + "gas": 75595, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4916, + "op": "SWAP1", + "gas": 75594, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4917, + "op": "POP", + "gas": 75591, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4918, + "op": "PUSH1", + "gas": 75589, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4920, + "op": "DUP2", + "gas": 75586, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4921, + "op": "ADD", + "gas": 75583, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4922, + "op": "SWAP1", + "gas": 75580, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4923, + "op": "POP", + "gas": 75577, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4924, + "op": "SWAP2", + "gas": 75575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4925, + "op": "SWAP1", + "gas": 75572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4926, + "op": "POP", + "gas": 75569, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4927, + "op": "JUMP", + "gas": 75567, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4941, + "op": "JUMPDEST", + "gas": 75559, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4942, + "op": "PUSH2", + "gas": 75558, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4945, + "op": "JUMP", + "gas": 75555, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4560, + "op": "JUMPDEST", + "gas": 75547, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4561, + "op": "PUSH0", + "gas": 75546, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4562, + "op": "PUSH2", + "gas": 75544, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4565, + "op": "PUSH2", + "gas": 75541, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4568, + "op": "JUMP", + "gas": 75538, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4425, + "op": "JUMPDEST", + "gas": 75530, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4426, + "op": "PUSH0", + "gas": 75529, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4427, + "op": "PUSH1", + "gas": 75527, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4429, + "op": "MLOAD", + "gas": 75524, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4430, + "op": "SWAP1", + "gas": 75521, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4431, + "op": "POP", + "gas": 75518, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4432, + "op": "SWAP1", + "gas": 75516, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4433, + "op": "JUMP", + "gas": 75513, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4569, + "op": "JUMPDEST", + "gas": 75505, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4570, + "op": "SWAP1", + "gas": 75504, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4571, + "op": "POP", + "gas": 75501, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4572, + "op": "PUSH2", + "gas": 75499, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4575, + "op": "DUP3", + "gas": 75496, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4576, + "op": "DUP3", + "gas": 75493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4577, + "op": "PUSH2", + "gas": 75490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4580, + "op": "JUMP", + "gas": 75487, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4511, + "op": "JUMPDEST", + "gas": 75479, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4512, + "op": "PUSH2", + "gas": 75478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4515, + "op": "DUP3", + "gas": 75475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4516, + "op": "PUSH2", + "gas": 75472, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4519, + "op": "JUMP", + "gas": 75469, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 75461, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 75460, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 75458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 75455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 75452, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 75449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 75446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 75443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 75440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 75437, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 75435, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 75432, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 75429, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 75427, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4520, + "op": "JUMPDEST", + "gas": 75419, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4521, + "op": "DUP2", + "gas": 75418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4522, + "op": "ADD", + "gas": 75415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4523, + "op": "DUP2", + "gas": 75412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4524, + "op": "DUP2", + "gas": 75409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4525, + "op": "LT", + "gas": 75406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4526, + "op": "PUSH8", + "gas": 75403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4535, + "op": "DUP3", + "gas": 75400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4536, + "op": "GT", + "gas": 75397, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4537, + "op": "OR", + "gas": 75394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4538, + "op": "ISZERO", + "gas": 75391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4539, + "op": "PUSH2", + "gas": 75388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4542, + "op": "JUMPI", + "gas": 75385, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4551, + "op": "JUMPDEST", + "gas": 75375, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4552, + "op": "DUP1", + "gas": 75374, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4553, + "op": "PUSH1", + "gas": 75371, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4555, + "op": "MSTORE", + "gas": 75368, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4556, + "op": "POP", + "gas": 75365, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4557, + "op": "POP", + "gas": 75363, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4558, + "op": "POP", + "gas": 75361, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4559, + "op": "JUMP", + "gas": 75359, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4581, + "op": "JUMPDEST", + "gas": 75351, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4582, + "op": "SWAP2", + "gas": 75350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4583, + "op": "SWAP1", + "gas": 75347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4584, + "op": "POP", + "gas": 75344, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4585, + "op": "JUMP", + "gas": 75342, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4946, + "op": "JUMPDEST", + "gas": 75334, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4947, + "op": "SWAP1", + "gas": 75333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4948, + "op": "POP", + "gas": 75330, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4949, + "op": "DUP3", + "gas": 75328, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4950, + "op": "DUP2", + "gas": 75325, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4951, + "op": "MSTORE", + "gas": 75322, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4952, + "op": "PUSH1", + "gas": 75313, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4954, + "op": "DUP2", + "gas": 75310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4955, + "op": "ADD", + "gas": 75307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4956, + "op": "DUP5", + "gas": 75304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4957, + "op": "DUP5", + "gas": 75301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4958, + "op": "DUP5", + "gas": 75298, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4959, + "op": "ADD", + "gas": 75295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4960, + "op": "GT", + "gas": 75292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4961, + "op": "ISZERO", + "gas": 75289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4962, + "op": "PUSH2", + "gas": 75286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4965, + "op": "JUMPI", + "gas": 75283, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4974, + "op": "JUMPDEST", + "gas": 75273, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4975, + "op": "PUSH2", + "gas": 75272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4978, + "op": "DUP5", + "gas": 75269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4979, + "op": "DUP3", + "gas": 75266, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4980, + "op": "DUP6", + "gas": 75263, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4981, + "op": "PUSH2", + "gas": 75260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4984, + "op": "JUMP", + "gas": 75257, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4634, + "op": "JUMPDEST", + "gas": 75249, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4635, + "op": "DUP3", + "gas": 75248, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4636, + "op": "DUP2", + "gas": 75245, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4637, + "op": "DUP4", + "gas": 75242, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4638, + "op": "CALLDATACOPY", + "gas": 75239, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4639, + "op": "PUSH0", + "gas": 75230, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4640, + "op": "DUP4", + "gas": 75228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4641, + "op": "DUP4", + "gas": 75225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4642, + "op": "ADD", + "gas": 75222, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4643, + "op": "MSTORE", + "gas": 75219, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 4644, + "op": "POP", + "gas": 75213, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4645, + "op": "POP", + "gas": 75211, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4646, + "op": "POP", + "gas": 75209, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4647, + "op": "JUMP", + "gas": 75207, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4985, + "op": "JUMPDEST", + "gas": 75199, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4986, + "op": "POP", + "gas": 75198, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4987, + "op": "SWAP4", + "gas": 75196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4988, + "op": "SWAP3", + "gas": 75193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4989, + "op": "POP", + "gas": 75190, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4990, + "op": "POP", + "gas": 75188, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4991, + "op": "POP", + "gas": 75186, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4992, + "op": "JUMP", + "gas": 75184, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5029, + "op": "JUMPDEST", + "gas": 75176, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5030, + "op": "SWAP2", + "gas": 75175, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5031, + "op": "POP", + "gas": 75172, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5032, + "op": "POP", + "gas": 75170, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5033, + "op": "SWAP3", + "gas": 75168, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5034, + "op": "SWAP2", + "gas": 75165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5035, + "op": "POP", + "gas": 75162, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5036, + "op": "POP", + "gas": 75160, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5037, + "op": "JUMP", + "gas": 75158, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5100, + "op": "JUMPDEST", + "gas": 75150, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5101, + "op": "SWAP2", + "gas": 75149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5102, + "op": "POP", + "gas": 75146, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5103, + "op": "POP", + "gas": 75144, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5104, + "op": "SWAP3", + "gas": 75142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5105, + "op": "SWAP2", + "gas": 75139, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5106, + "op": "POP", + "gas": 75136, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5107, + "op": "POP", + "gas": 75134, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5108, + "op": "JUMP", + "gas": 75132, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 421, + "op": "JUMPDEST", + "gas": 75124, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 422, + "op": "PUSH2", + "gas": 75123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 425, + "op": "JUMP", + "gas": 75120, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2223, + "op": "JUMPDEST", + "gas": 75112, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2224, + "op": "PUSH0", + "gas": 75111, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2225, + "op": "PUSH2", + "gas": 75109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2228, + "op": "DUP3", + "gas": 75106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2229, + "op": "PUSH2", + "gas": 75103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2232, + "op": "JUMP", + "gas": 75100, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 622, + "op": "JUMPDEST", + "gas": 75092, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 623, + "op": "PUSH0", + "gas": 75091, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 624, + "op": "DUP1", + "gas": 75089, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 625, + "op": "PUSH2", + "gas": 75086, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 628, + "op": "DUP4", + "gas": 75083, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 629, + "op": "MLOAD", + "gas": 75080, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 630, + "op": "PUSH2", + "gas": 75077, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 633, + "op": "JUMP", + "gas": 75074, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4080, + "op": "JUMPDEST", + "gas": 75066, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4081, + "op": "PUSH1", + "gas": 75065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4083, + "op": "PUSH0", + "gas": 75062, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4084, + "op": "DUP3", + "gas": 75060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4085, + "op": "SUB", + "gas": 75057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4086, + "op": "PUSH2", + "gas": 75054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4089, + "op": "JUMPI", + "gas": 75051, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4150, + "op": "JUMPDEST", + "gas": 75041, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4151, + "op": "PUSH0", + "gas": 75040, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4152, + "op": "DUP3", + "gas": 75038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4153, + "op": "SWAP1", + "gas": 75035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4154, + "op": "POP", + "gas": 75032, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4155, + "op": "PUSH0", + "gas": 75030, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 75028, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 75027, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 75025, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 75022, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 75019, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 75016, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4164, + "op": "DUP1", + "gas": 75006, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "DUP1", + "gas": 75003, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 75000, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "SWAP1", + "gas": 74997, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4170, + "op": "PUSH2", + "gas": 74994, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "JUMP", + "gas": 74991, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7504, + "op": "JUMPDEST", + "gas": 74983, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7505, + "op": "PUSH0", + "gas": 74982, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7506, + "op": "PUSH2", + "gas": 74980, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7509, + "op": "DUP3", + "gas": 74977, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7510, + "op": "PUSH2", + "gas": 74974, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7513, + "op": "JUMP", + "gas": 74971, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74963, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74962, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74960, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74954, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74952, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74949, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74946, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74944, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7514, + "op": "JUMPDEST", + "gas": 74936, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7515, + "op": "SWAP2", + "gas": 74935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7516, + "op": "POP", + "gas": 74932, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7517, + "op": "PUSH32", + "gas": 74930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7550, + "op": "DUP3", + "gas": 74927, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7551, + "op": "SUB", + "gas": 74924, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7552, + "op": "PUSH2", + "gas": 74921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7555, + "op": "JUMPI", + "gas": 74918, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7564, + "op": "JUMPDEST", + "gas": 74908, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH1", + "gas": 74907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7567, + "op": "DUP3", + "gas": 74904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "ADD", + "gas": 74901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7569, + "op": "SWAP1", + "gas": 74898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7570, + "op": "POP", + "gas": 74895, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7571, + "op": "SWAP2", + "gas": 74893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7572, + "op": "SWAP1", + "gas": 74890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "POP", + "gas": 74887, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7574, + "op": "JUMP", + "gas": 74885, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4174, + "op": "JUMPDEST", + "gas": 74877, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4175, + "op": "SWAP2", + "gas": 74876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4176, + "op": "POP", + "gas": 74873, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4177, + "op": "POP", + "gas": 74871, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4178, + "op": "PUSH1", + "gas": 74869, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4180, + "op": "DUP3", + "gas": 74866, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4181, + "op": "PUSH2", + "gas": 74863, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "SWAP2", + "gas": 74860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "SWAP1", + "gas": 74857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4186, + "op": "PUSH2", + "gas": 74854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4189, + "op": "JUMP", + "gas": 74851, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 74843, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 74842, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 74840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 74837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 74834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 74831, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74823, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74822, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74820, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74817, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74814, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74809, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74806, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74804, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 74796, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 74795, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 74792, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 74790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 74787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 74784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 74781, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74773, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74772, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74764, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74756, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74754, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 74746, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 74745, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 74742, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 74740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 74737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 74734, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 74724, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 74723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 74720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 74717, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 74712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 74709, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 74707, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 74704, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 74701, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 74699, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 74697, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4190, + "op": "JUMPDEST", + "gas": 74689, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4191, + "op": "SWAP2", + "gas": 74688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4192, + "op": "POP", + "gas": 74685, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4193, + "op": "PUSH2", + "gas": 74683, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4196, + "op": "JUMP", + "gas": 74680, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 74672, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 74671, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 74669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 74666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 74663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 74660, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4197, + "op": "JUMPDEST", + "gas": 74650, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4198, + "op": "PUSH0", + "gas": 74649, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4199, + "op": "DUP2", + "gas": 74647, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4200, + "op": "PUSH8", + "gas": 74644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4209, + "op": "DUP2", + "gas": 74641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4210, + "op": "GT", + "gas": 74638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4211, + "op": "ISZERO", + "gas": 74635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4212, + "op": "PUSH2", + "gas": 74632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4215, + "op": "JUMPI", + "gas": 74629, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4224, + "op": "JUMPDEST", + "gas": 74619, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4225, + "op": "PUSH1", + "gas": 74618, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4227, + "op": "MLOAD", + "gas": 74615, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4228, + "op": "SWAP1", + "gas": 74612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4229, + "op": "DUP1", + "gas": 74609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4230, + "op": "DUP3", + "gas": 74606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4231, + "op": "MSTORE", + "gas": 74603, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4232, + "op": "DUP1", + "gas": 74600, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4233, + "op": "PUSH1", + "gas": 74597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4235, + "op": "ADD", + "gas": 74594, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4236, + "op": "PUSH1", + "gas": 74591, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4238, + "op": "NOT", + "gas": 74588, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4239, + "op": "AND", + "gas": 74585, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4240, + "op": "PUSH1", + "gas": 74582, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4242, + "op": "ADD", + "gas": 74579, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4243, + "op": "DUP3", + "gas": 74576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4244, + "op": "ADD", + "gas": 74573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4245, + "op": "PUSH1", + "gas": 74570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4247, + "op": "MSTORE", + "gas": 74567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4248, + "op": "DUP1", + "gas": 74564, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4249, + "op": "ISZERO", + "gas": 74561, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4250, + "op": "PUSH2", + "gas": 74558, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4253, + "op": "JUMPI", + "gas": 74555, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4254, + "op": "DUP2", + "gas": 74545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4255, + "op": "PUSH1", + "gas": 74542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4257, + "op": "ADD", + "gas": 74539, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4258, + "op": "PUSH1", + "gas": 74536, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4260, + "op": "DUP3", + "gas": 74533, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4261, + "op": "MUL", + "gas": 74530, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 4262, + "op": "DUP1", + "gas": 74525, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4263, + "op": "CALLDATASIZE", + "gas": 74522, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4264, + "op": "DUP4", + "gas": 74520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4265, + "op": "CALLDATACOPY", + "gas": 74517, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4266, + "op": "DUP1", + "gas": 74508, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4267, + "op": "DUP3", + "gas": 74505, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4268, + "op": "ADD", + "gas": 74502, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4269, + "op": "SWAP2", + "gas": 74499, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4270, + "op": "POP", + "gas": 74496, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4271, + "op": "POP", + "gas": 74494, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4272, + "op": "SWAP1", + "gas": 74492, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4273, + "op": "POP", + "gas": 74489, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4274, + "op": "JUMPDEST", + "gas": 74487, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4275, + "op": "POP", + "gas": 74486, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4276, + "op": "SWAP1", + "gas": 74484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4277, + "op": "POP", + "gas": 74481, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 74479, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 74478, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 74476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 74473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 74470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 74467, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4286, + "op": "PUSH1", + "gas": 74457, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4288, + "op": "DUP3", + "gas": 74454, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 74451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 74448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 74445, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 74442, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 74439, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 74431, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 74430, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 74428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 74425, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 74422, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 74419, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74411, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74410, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74402, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74397, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74394, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74392, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 74384, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 74383, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 74380, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 74378, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 74375, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 74372, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 74369, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74361, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74360, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74358, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74355, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74352, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74344, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74342, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 74334, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 74333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 74330, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 74328, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 74325, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 74322, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 74319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 74316, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 74314, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 74311, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 74308, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 74305, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 74302, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 74299, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 74289, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 74288, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 74285, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 74282, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 74280, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 74278, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 74270, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "SWAP2", + "gas": 74269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4300, + "op": "POP", + "gas": 74266, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4301, + "op": "PUSH1", + "gas": 74264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP6", + "gas": 74261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "PUSH2", + "gas": 74258, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "SWAP2", + "gas": 74255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "SWAP1", + "gas": 74252, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4309, + "op": "PUSH2", + "gas": 74249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4312, + "op": "JUMP", + "gas": 74246, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7456, + "op": "JUMPDEST", + "gas": 74238, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7457, + "op": "PUSH0", + "gas": 74237, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7458, + "op": "PUSH2", + "gas": 74235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7461, + "op": "DUP3", + "gas": 74232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7462, + "op": "PUSH2", + "gas": 74229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7465, + "op": "JUMP", + "gas": 74226, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74218, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74217, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74215, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74212, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74209, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74201, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74199, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 74191, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "SWAP2", + "gas": 74190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "POP", + "gas": 74187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7469, + "op": "PUSH2", + "gas": 74185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7472, + "op": "DUP4", + "gas": 74182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "PUSH2", + "gas": 74179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 74176, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74168, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74167, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74159, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74157, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74151, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74149, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 74141, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "SWAP3", + "gas": 74140, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7479, + "op": "POP", + "gas": 74137, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7480, + "op": "DUP3", + "gas": 74135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7481, + "op": "PUSH2", + "gas": 74132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7484, + "op": "JUMPI", + "gas": 74129, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7493, + "op": "JUMPDEST", + "gas": 74119, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7494, + "op": "DUP3", + "gas": 74118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7495, + "op": "DUP3", + "gas": 74115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7496, + "op": "MOD", + "gas": 74112, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7497, + "op": "SWAP1", + "gas": 74107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7498, + "op": "POP", + "gas": 74104, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7499, + "op": "SWAP3", + "gas": 74102, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7500, + "op": "SWAP2", + "gas": 74099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7501, + "op": "POP", + "gas": 74096, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7502, + "op": "POP", + "gas": 74094, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7503, + "op": "JUMP", + "gas": 74092, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4313, + "op": "JUMPDEST", + "gas": 74084, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4314, + "op": "PUSH1", + "gas": 74083, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4316, + "op": "PUSH2", + "gas": 74080, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4319, + "op": "SWAP2", + "gas": 74077, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4320, + "op": "SWAP1", + "gas": 74074, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH2", + "gas": 74071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "JUMP", + "gas": 74068, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 74060, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 74059, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 74057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 74054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 74051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 74048, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 74040, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 74039, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 74037, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 74034, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 74031, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 74029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 74026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 74023, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 74021, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 74013, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 74012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 74009, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 74007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 74004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 74001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 73998, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 73990, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 73989, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 73987, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 73984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 73981, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 73979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 73976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 73973, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 73971, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 73963, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 73962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 73959, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 73957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 73954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 73951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 73948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 73945, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 73943, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 73940, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 73937, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 73934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 73931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 73928, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 73918, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 73917, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 73914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 73911, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 73909, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 73907, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4325, + "op": "JUMPDEST", + "gas": 73899, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH1", + "gas": 73898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4328, + "op": "SHL", + "gas": 73895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4329, + "op": "DUP2", + "gas": 73892, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4330, + "op": "DUP4", + "gas": 73889, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4331, + "op": "DUP2", + "gas": 73886, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4332, + "op": "MLOAD", + "gas": 73883, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4333, + "op": "DUP2", + "gas": 73880, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4334, + "op": "LT", + "gas": 73877, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4335, + "op": "PUSH2", + "gas": 73874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4338, + "op": "JUMPI", + "gas": 73871, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4347, + "op": "JUMPDEST", + "gas": 73861, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4348, + "op": "PUSH1", + "gas": 73860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4350, + "op": "ADD", + "gas": 73857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4351, + "op": "ADD", + "gas": 73854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4352, + "op": "SWAP1", + "gas": 73851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4353, + "op": "PUSH31", + "gas": 73848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "NOT", + "gas": 73845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4386, + "op": "AND", + "gas": 73842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4387, + "op": "SWAP1", + "gas": 73839, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "DUP2", + "gas": 73836, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "PUSH0", + "gas": 73833, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "BYTE", + "gas": 73831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4391, + "op": "SWAP1", + "gas": 73828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4392, + "op": "MSTORE8", + "gas": 73825, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4393, + "op": "POP", + "gas": 73822, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4394, + "op": "PUSH1", + "gas": 73820, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "DUP6", + "gas": 73817, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4397, + "op": "PUSH2", + "gas": 73814, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4400, + "op": "SWAP2", + "gas": 73811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4401, + "op": "SWAP1", + "gas": 73808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4402, + "op": "PUSH2", + "gas": 73805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4405, + "op": "JUMP", + "gas": 73802, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 73794, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 73793, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 73791, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 73788, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 73785, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 73782, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 73774, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 73773, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 73771, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 73768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 73765, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 73763, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 73760, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 73757, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 73755, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 73747, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 73746, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 73743, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 73741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 73738, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 73735, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 73732, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 73724, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 73723, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 73721, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 73718, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 73715, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 73713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 73710, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 73707, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 73705, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 73697, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 73696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 73693, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 73691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 73688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 73685, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 73675, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 73674, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 73671, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 73668, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 73663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 73660, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 73658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 73655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 73652, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 73650, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 73648, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4406, + "op": "JUMPDEST", + "gas": 73640, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4407, + "op": "SWAP5", + "gas": 73639, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4408, + "op": "POP", + "gas": 73636, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4409, + "op": "PUSH2", + "gas": 73634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4412, + "op": "JUMP", + "gas": 73631, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 73623, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 73622, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 73620, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 73617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 73614, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 73611, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4413, + "op": "JUMPDEST", + "gas": 73601, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4414, + "op": "DUP1", + "gas": 73600, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4415, + "op": "SWAP4", + "gas": 73597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4416, + "op": "POP", + "gas": 73594, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4417, + "op": "POP", + "gas": 73592, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4418, + "op": "POP", + "gas": 73590, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4419, + "op": "POP", + "gas": 73588, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4420, + "op": "JUMPDEST", + "gas": 73586, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4421, + "op": "SWAP2", + "gas": 73585, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4422, + "op": "SWAP1", + "gas": 73582, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4423, + "op": "POP", + "gas": 73579, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4424, + "op": "JUMP", + "gas": 73577, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 634, + "op": "JUMPDEST", + "gas": 73569, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 635, + "op": "PUSH1", + "gas": 73568, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 637, + "op": "MLOAD", + "gas": 73565, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 638, + "op": "PUSH1", + "gas": 73562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 640, + "op": "ADD", + "gas": 73559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 641, + "op": "PUSH2", + "gas": 73556, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 644, + "op": "SWAP2", + "gas": 73553, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 645, + "op": "SWAP1", + "gas": 73550, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 646, + "op": "PUSH2", + "gas": 73547, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 649, + "op": "JUMP", + "gas": 73544, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5553, + "op": "JUMPDEST", + "gas": 73536, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5554, + "op": "PUSH0", + "gas": 73535, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5555, + "op": "PUSH2", + "gas": 73533, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5558, + "op": "DUP3", + "gas": 73530, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5559, + "op": "PUSH2", + "gas": 73527, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5562, + "op": "JUMP", + "gas": 73524, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5461, + "op": "JUMPDEST", + "gas": 73516, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5462, + "op": "PUSH0", + "gas": 73515, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5463, + "op": "PUSH2", + "gas": 73513, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5466, + "op": "PUSH1", + "gas": 73510, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5468, + "op": "DUP4", + "gas": 73507, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5469, + "op": "PUSH2", + "gas": 73504, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5472, + "op": "JUMP", + "gas": 73501, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 73493, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 73492, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 73490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 73487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 73484, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 73482, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 73479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 73476, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 73474, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 73472, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5473, + "op": "JUMPDEST", + "gas": 73464, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5474, + "op": "SWAP2", + "gas": 73463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5475, + "op": "POP", + "gas": 73460, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5476, + "op": "PUSH2", + "gas": 73458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5479, + "op": "DUP3", + "gas": 73455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5480, + "op": "PUSH2", + "gas": 73452, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5483, + "op": "JUMP", + "gas": 73449, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5421, + "op": "JUMPDEST", + "gas": 73441, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5422, + "op": "PUSH32", + "gas": 73440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5455, + "op": "PUSH0", + "gas": 73437, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5456, + "op": "DUP3", + "gas": 73435, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5457, + "op": "ADD", + "gas": 73432, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5458, + "op": "MSTORE", + "gas": 73429, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 5459, + "op": "POP", + "gas": 73420, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5460, + "op": "JUMP", + "gas": 73418, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5484, + "op": "JUMPDEST", + "gas": 73410, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5485, + "op": "PUSH1", + "gas": 73409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5487, + "op": "DUP3", + "gas": 73406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5488, + "op": "ADD", + "gas": 73403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5489, + "op": "SWAP1", + "gas": 73400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5490, + "op": "POP", + "gas": 73397, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5491, + "op": "SWAP2", + "gas": 73395, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5492, + "op": "SWAP1", + "gas": 73392, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5493, + "op": "POP", + "gas": 73389, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5494, + "op": "JUMP", + "gas": 73387, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5563, + "op": "JUMPDEST", + "gas": 73379, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5564, + "op": "SWAP2", + "gas": 73378, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5565, + "op": "POP", + "gas": 73375, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5566, + "op": "PUSH2", + "gas": 73373, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5569, + "op": "DUP3", + "gas": 73370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5570, + "op": "DUP5", + "gas": 73367, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5571, + "op": "PUSH2", + "gas": 73364, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5574, + "op": "JUMP", + "gas": 73361, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 73353, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 73352, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 73350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 73347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 73344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 73341, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 73333, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 73332, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 73330, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 73327, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 73324, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 73321, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 73319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 73316, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 73313, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 73311, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 73303, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 73302, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 73299, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 73296, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 73293, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 73290, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 73282, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 73281, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 73279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 73276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 73273, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 73271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 73268, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 73265, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 73263, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 73261, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 73253, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 73252, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 73249, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 73247, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 73244, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 73241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 73238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 73235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 73232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 73229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 73226, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 73218, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 73217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 73214, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 73211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 73208, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 73202, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 73200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 73197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 73194, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 73191, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 73185, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 73183, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 73181, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 73179, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 73171, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 73170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 73167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 73164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 73161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 73158, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 73156, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 73154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 73151, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 73148, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 73146, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 73144, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5575, + "op": "JUMPDEST", + "gas": 73136, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5576, + "op": "SWAP2", + "gas": 73135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5577, + "op": "POP", + "gas": 73132, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5578, + "op": "DUP2", + "gas": 73130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5579, + "op": "SWAP1", + "gas": 73127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5580, + "op": "POP", + "gas": 73124, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5581, + "op": "SWAP3", + "gas": 73122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5582, + "op": "SWAP2", + "gas": 73119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5583, + "op": "POP", + "gas": 73116, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5584, + "op": "POP", + "gas": 73114, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5585, + "op": "JUMP", + "gas": 73112, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 650, + "op": "JUMPDEST", + "gas": 73104, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 651, + "op": "PUSH1", + "gas": 73103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 653, + "op": "MLOAD", + "gas": 73100, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 654, + "op": "PUSH1", + "gas": 73097, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 656, + "op": "DUP2", + "gas": 73094, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 657, + "op": "DUP4", + "gas": 73091, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 658, + "op": "SUB", + "gas": 73088, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 659, + "op": "SUB", + "gas": 73085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 660, + "op": "DUP2", + "gas": 73082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 661, + "op": "MSTORE", + "gas": 73079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 662, + "op": "SWAP1", + "gas": 73076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 663, + "op": "PUSH1", + "gas": 73073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 665, + "op": "MSTORE", + "gas": 73070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 666, + "op": "SWAP1", + "gas": 73067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 667, + "op": "POP", + "gas": 73064, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 668, + "op": "PUSH0", + "gas": 73062, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 669, + "op": "DUP1", + "gas": 73060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 670, + "op": "PUSH1", + "gas": 73057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 672, + "op": "PUSH20", + "gas": 73054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 693, + "op": "AND", + "gas": 73051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 694, + "op": "DUP6", + "gas": 73048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 695, + "op": "PUSH1", + "gas": 73045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 697, + "op": "MLOAD", + "gas": 73042, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 698, + "op": "PUSH2", + "gas": 73039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 701, + "op": "SWAP2", + "gas": 73036, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 702, + "op": "SWAP1", + "gas": 73033, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 703, + "op": "PUSH2", + "gas": 73030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 706, + "op": "JUMP", + "gas": 73027, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5644, + "op": "JUMPDEST", + "gas": 73019, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5645, + "op": "PUSH0", + "gas": 73018, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5646, + "op": "PUSH2", + "gas": 73016, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5649, + "op": "DUP3", + "gas": 73013, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5650, + "op": "DUP5", + "gas": 73010, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5651, + "op": "PUSH2", + "gas": 73007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5654, + "op": "JUMP", + "gas": 73004, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5596, + "op": "JUMPDEST", + "gas": 72996, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5597, + "op": "PUSH0", + "gas": 72995, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5598, + "op": "PUSH2", + "gas": 72993, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5601, + "op": "DUP3", + "gas": 72990, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5602, + "op": "PUSH2", + "gas": 72987, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5605, + "op": "JUMP", + "gas": 72984, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 72976, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 72975, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 72973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 72970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 72967, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 72964, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 72962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 72959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 72956, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 72954, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5606, + "op": "JUMPDEST", + "gas": 72946, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5607, + "op": "PUSH2", + "gas": 72945, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5610, + "op": "DUP2", + "gas": 72942, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5611, + "op": "DUP6", + "gas": 72939, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5612, + "op": "PUSH2", + "gas": 72936, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5615, + "op": "JUMP", + "gas": 72933, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5586, + "op": "JUMPDEST", + "gas": 72925, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5587, + "op": "PUSH0", + "gas": 72924, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5588, + "op": "DUP2", + "gas": 72922, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5589, + "op": "SWAP1", + "gas": 72919, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5590, + "op": "POP", + "gas": 72916, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5591, + "op": "SWAP3", + "gas": 72914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5592, + "op": "SWAP2", + "gas": 72911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5593, + "op": "POP", + "gas": 72908, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5594, + "op": "POP", + "gas": 72906, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5595, + "op": "JUMP", + "gas": 72904, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5616, + "op": "JUMPDEST", + "gas": 72896, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5617, + "op": "SWAP4", + "gas": 72895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5618, + "op": "POP", + "gas": 72892, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5619, + "op": "PUSH2", + "gas": 72890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5622, + "op": "DUP2", + "gas": 72887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5623, + "op": "DUP6", + "gas": 72884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5624, + "op": "PUSH1", + "gas": 72881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5626, + "op": "DUP7", + "gas": 72878, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5627, + "op": "ADD", + "gas": 72875, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5628, + "op": "PUSH2", + "gas": 72872, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5631, + "op": "JUMP", + "gas": 72869, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 72861, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 72860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 72857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 72854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 72851, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 72845, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 72843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 72840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 72837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 72834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 72831, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 72829, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 72827, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 72825, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5632, + "op": "JUMPDEST", + "gas": 72817, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5633, + "op": "DUP1", + "gas": 72816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5634, + "op": "DUP5", + "gas": 72813, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5635, + "op": "ADD", + "gas": 72810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5636, + "op": "SWAP2", + "gas": 72807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5637, + "op": "POP", + "gas": 72804, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5638, + "op": "POP", + "gas": 72802, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5639, + "op": "SWAP3", + "gas": 72800, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5640, + "op": "SWAP2", + "gas": 72797, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5641, + "op": "POP", + "gas": 72794, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5642, + "op": "POP", + "gas": 72792, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5643, + "op": "JUMP", + "gas": 72790, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5655, + "op": "JUMPDEST", + "gas": 72782, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5656, + "op": "SWAP2", + "gas": 72781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5657, + "op": "POP", + "gas": 72778, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5658, + "op": "DUP2", + "gas": 72776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5659, + "op": "SWAP1", + "gas": 72773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5660, + "op": "POP", + "gas": 72770, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5661, + "op": "SWAP3", + "gas": 72768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5662, + "op": "SWAP2", + "gas": 72765, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5663, + "op": "POP", + "gas": 72762, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5664, + "op": "POP", + "gas": 72760, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5665, + "op": "JUMP", + "gas": 72758, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 707, + "op": "JUMPDEST", + "gas": 72750, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 708, + "op": "PUSH0", + "gas": 72749, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 709, + "op": "PUSH1", + "gas": 72747, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 711, + "op": "MLOAD", + "gas": 72744, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 712, + "op": "DUP1", + "gas": 72741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 713, + "op": "DUP4", + "gas": 72738, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 714, + "op": "SUB", + "gas": 72735, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 715, + "op": "DUP2", + "gas": 72732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 716, + "op": "DUP6", + "gas": 72729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 717, + "op": "GAS", + "gas": 72726, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 718, + "op": "STATICCALL", + "gas": 72724, + "gasCost": 71590, + "depth": 1 + }, + { + "pc": 719, + "op": "SWAP2", + "gas": 71904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 720, + "op": "POP", + "gas": 71901, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 721, + "op": "POP", + "gas": 71899, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 722, + "op": "RETURNDATASIZE", + "gas": 71897, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 723, + "op": "DUP1", + "gas": 71895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 724, + "op": "PUSH0", + "gas": 71892, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 725, + "op": "DUP2", + "gas": 71890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 726, + "op": "EQ", + "gas": 71887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 727, + "op": "PUSH2", + "gas": 71884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 730, + "op": "JUMPI", + "gas": 71881, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 731, + "op": "PUSH1", + "gas": 71871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 733, + "op": "MLOAD", + "gas": 71868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 734, + "op": "SWAP2", + "gas": 71865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 735, + "op": "POP", + "gas": 71862, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 736, + "op": "PUSH1", + "gas": 71860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 738, + "op": "NOT", + "gas": 71857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 739, + "op": "PUSH1", + "gas": 71854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 741, + "op": "RETURNDATASIZE", + "gas": 71851, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 742, + "op": "ADD", + "gas": 71849, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 743, + "op": "AND", + "gas": 71846, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 744, + "op": "DUP3", + "gas": 71843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 745, + "op": "ADD", + "gas": 71840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 746, + "op": "PUSH1", + "gas": 71837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 748, + "op": "MSTORE", + "gas": 71834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 749, + "op": "RETURNDATASIZE", + "gas": 71831, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 750, + "op": "DUP3", + "gas": 71829, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 751, + "op": "MSTORE", + "gas": 71826, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 752, + "op": "RETURNDATASIZE", + "gas": 71823, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 753, + "op": "PUSH0", + "gas": 71821, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 754, + "op": "PUSH1", + "gas": 71819, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 756, + "op": "DUP5", + "gas": 71816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 757, + "op": "ADD", + "gas": 71813, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 758, + "op": "RETURNDATACOPY", + "gas": 71810, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 759, + "op": "PUSH2", + "gas": 71801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 762, + "op": "JUMP", + "gas": 71798, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 768, + "op": "JUMPDEST", + "gas": 71790, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 769, + "op": "POP", + "gas": 71789, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 770, + "op": "SWAP2", + "gas": 71787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 771, + "op": "POP", + "gas": 71784, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 772, + "op": "SWAP2", + "gas": 71782, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 773, + "op": "POP", + "gas": 71779, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 774, + "op": "DUP2", + "gas": 71777, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 775, + "op": "PUSH0", + "gas": 71774, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 776, + "op": "DUP5", + "gas": 71772, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 777, + "op": "PUSH1", + "gas": 71769, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 779, + "op": "MLOAD", + "gas": 71766, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 780, + "op": "PUSH2", + "gas": 71763, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 783, + "op": "SWAP2", + "gas": 71760, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 784, + "op": "SWAP1", + "gas": 71757, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 785, + "op": "PUSH2", + "gas": 71754, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 788, + "op": "JUMP", + "gas": 71751, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5666, + "op": "JUMPDEST", + "gas": 71743, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5667, + "op": "PUSH0", + "gas": 71742, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5668, + "op": "PUSH2", + "gas": 71740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5671, + "op": "DUP3", + "gas": 71737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5672, + "op": "DUP5", + "gas": 71734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5673, + "op": "PUSH2", + "gas": 71731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5676, + "op": "JUMP", + "gas": 71728, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 71720, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 71719, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 71717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 71714, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 71711, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 71708, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 71700, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 71699, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 71697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 71694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 71691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 71688, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 71686, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 71683, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 71680, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 71678, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 71670, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 71669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 71666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 71663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 71660, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 71657, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 71649, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 71648, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 71646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 71643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 71640, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 71638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 71635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 71632, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 71630, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 71628, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 71620, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 71619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 71616, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 71614, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 71611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 71608, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 71605, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 71602, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 71599, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 71596, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 71593, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 71585, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 71584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 71581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 71578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 71575, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 71569, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 71567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 71564, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 71561, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 71558, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 71552, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 71550, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 71548, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 71546, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 71538, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 71537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 71534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 71531, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 71528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 71525, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 71523, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 71521, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 71518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 71515, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 71513, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 71511, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5677, + "op": "JUMPDEST", + "gas": 71503, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5678, + "op": "SWAP2", + "gas": 71502, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5679, + "op": "POP", + "gas": 71499, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5680, + "op": "DUP2", + "gas": 71497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5681, + "op": "SWAP1", + "gas": 71494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5682, + "op": "POP", + "gas": 71491, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5683, + "op": "SWAP3", + "gas": 71489, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5684, + "op": "SWAP2", + "gas": 71486, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5685, + "op": "POP", + "gas": 71483, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5686, + "op": "POP", + "gas": 71481, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5687, + "op": "JUMP", + "gas": 71479, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 789, + "op": "JUMPDEST", + "gas": 71471, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 790, + "op": "SWAP1", + "gas": 71470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 791, + "op": "DUP2", + "gas": 71467, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 792, + "op": "MSTORE", + "gas": 71464, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 793, + "op": "PUSH1", + "gas": 71461, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 795, + "op": "ADD", + "gas": 71458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 796, + "op": "PUSH1", + "gas": 71455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 798, + "op": "MLOAD", + "gas": 71452, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 799, + "op": "DUP1", + "gas": 71449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 800, + "op": "SWAP2", + "gas": 71446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 801, + "op": "SUB", + "gas": 71443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 802, + "op": "SWAP1", + "gas": 71440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 803, + "op": "SHA3", + "gas": 71437, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 804, + "op": "PUSH0", + "gas": 71395, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 805, + "op": "PUSH2", + "gas": 71393, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 808, + "op": "EXP", + "gas": 71390, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 809, + "op": "DUP2", + "gas": 71380, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 810, + "op": "SLOAD", + "gas": 71377, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 811, + "op": "DUP2", + "gas": 69277, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 812, + "op": "PUSH1", + "gas": 69274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 814, + "op": "MUL", + "gas": 69271, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 815, + "op": "NOT", + "gas": 69266, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 816, + "op": "AND", + "gas": 69263, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 817, + "op": "SWAP1", + "gas": 69260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 818, + "op": "DUP4", + "gas": 69257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 819, + "op": "ISZERO", + "gas": 69254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 820, + "op": "ISZERO", + "gas": 69251, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 821, + "op": "MUL", + "gas": 69248, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 822, + "op": "OR", + "gas": 69243, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 823, + "op": "SWAP1", + "gas": 69240, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 824, + "op": "SSTORE", + "gas": 69237, + "gasCost": 20000, + "depth": 1 + }, + { + "pc": 825, + "op": "POP", + "gas": 49237, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 826, + "op": "DUP1", + "gas": 49235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 827, + "op": "PUSH1", + "gas": 49232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 829, + "op": "DUP5", + "gas": 49229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 830, + "op": "PUSH1", + "gas": 49226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 832, + "op": "MLOAD", + "gas": 49223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 833, + "op": "PUSH2", + "gas": 49220, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 836, + "op": "SWAP2", + "gas": 49217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 837, + "op": "SWAP1", + "gas": 49214, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 838, + "op": "PUSH2", + "gas": 49211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 841, + "op": "JUMP", + "gas": 49208, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5666, + "op": "JUMPDEST", + "gas": 49200, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5667, + "op": "PUSH0", + "gas": 49199, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5668, + "op": "PUSH2", + "gas": 49197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5671, + "op": "DUP3", + "gas": 49194, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5672, + "op": "DUP5", + "gas": 49191, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5673, + "op": "PUSH2", + "gas": 49188, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5676, + "op": "JUMP", + "gas": 49185, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 49177, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 49176, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 49174, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 49171, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 49168, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 49165, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 49157, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 49156, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 49154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 49151, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 49148, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 49145, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 49143, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 49140, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 49137, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 49135, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 49127, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 49126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 49123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 49120, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 49117, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 49114, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 49106, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 49105, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 49103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 49100, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 49097, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 49095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 49092, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 49089, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 49087, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 49085, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 49077, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 49076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 49073, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 49071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 49068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 49065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 49062, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 49059, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 49056, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 49053, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 49050, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 49042, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 49041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 49038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 49035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 49032, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 49026, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 49024, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 49021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 49018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 49015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 49012, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 49010, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 49008, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 49006, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 48998, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 48997, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 48994, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 48991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 48988, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 48985, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 48983, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 48981, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 48978, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 48975, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 48973, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 48971, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5677, + "op": "JUMPDEST", + "gas": 48963, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5678, + "op": "SWAP2", + "gas": 48962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5679, + "op": "POP", + "gas": 48959, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5680, + "op": "DUP2", + "gas": 48957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5681, + "op": "SWAP1", + "gas": 48954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5682, + "op": "POP", + "gas": 48951, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5683, + "op": "SWAP3", + "gas": 48949, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5684, + "op": "SWAP2", + "gas": 48946, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5685, + "op": "POP", + "gas": 48943, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5686, + "op": "POP", + "gas": 48941, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5687, + "op": "JUMP", + "gas": 48939, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 842, + "op": "JUMPDEST", + "gas": 48931, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 843, + "op": "SWAP1", + "gas": 48930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 844, + "op": "DUP2", + "gas": 48927, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 845, + "op": "MSTORE", + "gas": 48924, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 846, + "op": "PUSH1", + "gas": 48921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 848, + "op": "ADD", + "gas": 48918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 849, + "op": "PUSH1", + "gas": 48915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 851, + "op": "MLOAD", + "gas": 48912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 852, + "op": "DUP1", + "gas": 48909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 853, + "op": "SWAP2", + "gas": 48906, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 854, + "op": "SUB", + "gas": 48903, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 855, + "op": "SWAP1", + "gas": 48900, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 856, + "op": "SHA3", + "gas": 48897, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 857, + "op": "SWAP1", + "gas": 48855, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 858, + "op": "DUP2", + "gas": 48852, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 859, + "op": "PUSH2", + "gas": 48849, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 862, + "op": "SWAP2", + "gas": 48846, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 863, + "op": "SWAP1", + "gas": 48843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 864, + "op": "PUSH2", + "gas": 48840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 867, + "op": "JUMP", + "gas": 48837, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6194, + "op": "JUMPDEST", + "gas": 48829, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6195, + "op": "PUSH2", + "gas": 48828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6198, + "op": "DUP3", + "gas": 48825, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6199, + "op": "PUSH2", + "gas": 48822, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6202, + "op": "JUMP", + "gas": 48819, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 48811, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 48810, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 48808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 48805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 48802, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 48799, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 48797, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 48794, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 48791, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 48789, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6203, + "op": "JUMPDEST", + "gas": 48781, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6204, + "op": "PUSH8", + "gas": 48780, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6213, + "op": "DUP2", + "gas": 48777, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6214, + "op": "GT", + "gas": 48774, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6215, + "op": "ISZERO", + "gas": 48771, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6216, + "op": "PUSH2", + "gas": 48768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6219, + "op": "JUMPI", + "gas": 48765, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6228, + "op": "JUMPDEST", + "gas": 48755, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6229, + "op": "PUSH2", + "gas": 48754, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6232, + "op": "DUP3", + "gas": 48751, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6233, + "op": "SLOAD", + "gas": 48748, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 6234, + "op": "PUSH2", + "gas": 46648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6237, + "op": "JUMP", + "gas": 46645, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5733, + "op": "JUMPDEST", + "gas": 46637, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5734, + "op": "PUSH0", + "gas": 46636, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5735, + "op": "PUSH1", + "gas": 46634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5737, + "op": "DUP3", + "gas": 46631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5738, + "op": "DIV", + "gas": 46628, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 5739, + "op": "SWAP1", + "gas": 46623, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5740, + "op": "POP", + "gas": 46620, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5741, + "op": "PUSH1", + "gas": 46618, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5743, + "op": "DUP3", + "gas": 46615, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5744, + "op": "AND", + "gas": 46612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5745, + "op": "DUP1", + "gas": 46609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5746, + "op": "PUSH2", + "gas": 46606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5749, + "op": "JUMPI", + "gas": 46603, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5750, + "op": "PUSH1", + "gas": 46593, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5752, + "op": "DUP3", + "gas": 46590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5753, + "op": "AND", + "gas": 46587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5754, + "op": "SWAP2", + "gas": 46584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5755, + "op": "POP", + "gas": 46581, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5756, + "op": "JUMPDEST", + "gas": 46579, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5757, + "op": "PUSH1", + "gas": 46578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5759, + "op": "DUP3", + "gas": 46575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5760, + "op": "LT", + "gas": 46572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5761, + "op": "DUP2", + "gas": 46569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5762, + "op": "SUB", + "gas": 46566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5763, + "op": "PUSH2", + "gas": 46563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5766, + "op": "JUMPI", + "gas": 46560, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5775, + "op": "JUMPDEST", + "gas": 46550, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5776, + "op": "POP", + "gas": 46549, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5777, + "op": "SWAP2", + "gas": 46547, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5778, + "op": "SWAP1", + "gas": 46544, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5779, + "op": "POP", + "gas": 46541, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5780, + "op": "JUMP", + "gas": 46539, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6238, + "op": "JUMPDEST", + "gas": 46531, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6239, + "op": "PUSH2", + "gas": 46530, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6242, + "op": "DUP3", + "gas": 46527, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6243, + "op": "DUP3", + "gas": 46524, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6244, + "op": "DUP6", + "gas": 46521, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6245, + "op": "PUSH2", + "gas": 46518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6248, + "op": "JUMP", + "gas": 46515, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6057, + "op": "JUMPDEST", + "gas": 46507, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6058, + "op": "PUSH1", + "gas": 46506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6060, + "op": "DUP3", + "gas": 46503, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6061, + "op": "GT", + "gas": 46500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6062, + "op": "ISZERO", + "gas": 46497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6063, + "op": "PUSH2", + "gas": 46494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6066, + "op": "JUMPI", + "gas": 46491, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6122, + "op": "JUMPDEST", + "gas": 46481, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6123, + "op": "POP", + "gas": 46480, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6124, + "op": "POP", + "gas": 46478, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6125, + "op": "POP", + "gas": 46476, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6126, + "op": "JUMP", + "gas": 46474, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6249, + "op": "JUMPDEST", + "gas": 46466, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6250, + "op": "PUSH0", + "gas": 46465, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6251, + "op": "PUSH1", + "gas": 46463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6253, + "op": "SWAP1", + "gas": 46460, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6254, + "op": "POP", + "gas": 46457, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6255, + "op": "PUSH1", + "gas": 46455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6257, + "op": "DUP4", + "gas": 46452, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6258, + "op": "GT", + "gas": 46449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6259, + "op": "PUSH1", + "gas": 46446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6261, + "op": "DUP2", + "gas": 46443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6262, + "op": "EQ", + "gas": 46440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6263, + "op": "PUSH2", + "gas": 46437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6266, + "op": "JUMPI", + "gas": 46434, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6298, + "op": "JUMPDEST", + "gas": 46424, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6299, + "op": "PUSH1", + "gas": 46423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6301, + "op": "NOT", + "gas": 46420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6302, + "op": "DUP5", + "gas": 46417, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6303, + "op": "AND", + "gas": 46414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6304, + "op": "PUSH2", + "gas": 46411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6307, + "op": "DUP7", + "gas": 46408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6308, + "op": "PUSH2", + "gas": 46405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6311, + "op": "JUMP", + "gas": 46402, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5781, + "op": "JUMPDEST", + "gas": 46394, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5782, + "op": "PUSH0", + "gas": 46393, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5783, + "op": "DUP2", + "gas": 46391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5784, + "op": "SWAP1", + "gas": 46388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5785, + "op": "POP", + "gas": 46385, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5786, + "op": "DUP2", + "gas": 46383, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5787, + "op": "PUSH0", + "gas": 46380, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5788, + "op": "MSTORE", + "gas": 46378, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5789, + "op": "PUSH1", + "gas": 46375, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5791, + "op": "PUSH0", + "gas": 46372, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5792, + "op": "SHA3", + "gas": 46370, + "gasCost": 36, + "depth": 1 + }, + { + "pc": 5793, + "op": "SWAP1", + "gas": 46334, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5794, + "op": "POP", + "gas": 46331, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5795, + "op": "SWAP2", + "gas": 46329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5796, + "op": "SWAP1", + "gas": 46326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5797, + "op": "POP", + "gas": 46323, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5798, + "op": "JUMP", + "gas": 46321, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6312, + "op": "JUMPDEST", + "gas": 46313, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6313, + "op": "PUSH0", + "gas": 46312, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6314, + "op": "JUMPDEST", + "gas": 46310, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6315, + "op": "DUP3", + "gas": 46309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 46306, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "LT", + "gas": 46303, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "ISZERO", + "gas": 46300, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "PUSH2", + "gas": 46297, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6322, + "op": "JUMPI", + "gas": 46294, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6323, + "op": "DUP5", + "gas": 46284, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6324, + "op": "DUP10", + "gas": 46281, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6325, + "op": "ADD", + "gas": 46278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6326, + "op": "MLOAD", + "gas": 46275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6327, + "op": "DUP3", + "gas": 46272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6328, + "op": "SSTORE", + "gas": 46269, + "gasCost": 22100, + "depth": 1 + }, + { + "pc": 6329, + "op": "PUSH1", + "gas": 24169, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6331, + "op": "DUP3", + "gas": 24166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6332, + "op": "ADD", + "gas": 24163, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6333, + "op": "SWAP2", + "gas": 24160, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6334, + "op": "POP", + "gas": 24157, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6335, + "op": "PUSH1", + "gas": 24155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6337, + "op": "DUP6", + "gas": 24152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6338, + "op": "ADD", + "gas": 24149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6339, + "op": "SWAP5", + "gas": 24146, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6340, + "op": "POP", + "gas": 24143, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6341, + "op": "PUSH1", + "gas": 24141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6343, + "op": "DUP2", + "gas": 24138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6344, + "op": "ADD", + "gas": 24135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6345, + "op": "SWAP1", + "gas": 24132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6346, + "op": "POP", + "gas": 24129, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6347, + "op": "PUSH2", + "gas": 24127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6350, + "op": "JUMP", + "gas": 24124, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6314, + "op": "JUMPDEST", + "gas": 24116, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6315, + "op": "DUP3", + "gas": 24115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 24112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "LT", + "gas": 24109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "ISZERO", + "gas": 24106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "PUSH2", + "gas": 24103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6322, + "op": "JUMPI", + "gas": 24100, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6351, + "op": "JUMPDEST", + "gas": 24090, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6352, + "op": "DUP7", + "gas": 24089, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6353, + "op": "DUP4", + "gas": 24086, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6354, + "op": "LT", + "gas": 24083, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6355, + "op": "ISZERO", + "gas": 24080, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6356, + "op": "PUSH2", + "gas": 24077, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6359, + "op": "JUMPI", + "gas": 24074, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6380, + "op": "JUMPDEST", + "gas": 24064, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6381, + "op": "PUSH1", + "gas": 24063, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6383, + "op": "PUSH1", + "gas": 24060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6385, + "op": "DUP9", + "gas": 24057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6386, + "op": "MUL", + "gas": 24054, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6387, + "op": "ADD", + "gas": 24049, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6388, + "op": "DUP9", + "gas": 24046, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6389, + "op": "SSTORE", + "gas": 24043, + "gasCost": 20000, + "depth": 1 + }, + { + "pc": 6390, + "op": "POP", + "gas": 4043, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6391, + "op": "POP", + "gas": 4041, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6392, + "op": "POP", + "gas": 4039, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6393, + "op": "JUMPDEST", + "gas": 4037, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6394, + "op": "POP", + "gas": 4036, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6395, + "op": "POP", + "gas": 4034, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6396, + "op": "POP", + "gas": 4032, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6397, + "op": "POP", + "gas": 4030, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6398, + "op": "POP", + "gas": 4028, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6399, + "op": "POP", + "gas": 4026, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6400, + "op": "JUMP", + "gas": 4024, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 868, + "op": "JUMPDEST", + "gas": 4016, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 869, + "op": "POP", + "gas": 4015, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 870, + "op": "PUSH32", + "gas": 4013, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 903, + "op": "DUP4", + "gas": 4010, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 904, + "op": "DUP4", + "gas": 4007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 905, + "op": "DUP4", + "gas": 4004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 906, + "op": "TIMESTAMP", + "gas": 4001, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 907, + "op": "PUSH1", + "gas": 3999, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 909, + "op": "MLOAD", + "gas": 3996, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 910, + "op": "PUSH2", + "gas": 3993, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 913, + "op": "SWAP5", + "gas": 3990, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 914, + "op": "SWAP4", + "gas": 3987, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 915, + "op": "SWAP3", + "gas": 3984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 916, + "op": "SWAP2", + "gas": 3981, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 917, + "op": "SWAP1", + "gas": 3978, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 918, + "op": "PUSH2", + "gas": 3975, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 921, + "op": "JUMP", + "gas": 3972, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6488, + "op": "JUMPDEST", + "gas": 3964, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6489, + "op": "PUSH0", + "gas": 3963, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6490, + "op": "PUSH1", + "gas": 3961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6492, + "op": "DUP3", + "gas": 3958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6493, + "op": "ADD", + "gas": 3955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6494, + "op": "SWAP1", + "gas": 3952, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6495, + "op": "POP", + "gas": 3949, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6496, + "op": "DUP2", + "gas": 3947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6497, + "op": "DUP2", + "gas": 3944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6498, + "op": "SUB", + "gas": 3941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6499, + "op": "PUSH0", + "gas": 3938, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6500, + "op": "DUP4", + "gas": 3936, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6501, + "op": "ADD", + "gas": 3933, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6502, + "op": "MSTORE", + "gas": 3930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6503, + "op": "PUSH2", + "gas": 3927, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6506, + "op": "DUP2", + "gas": 3924, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6507, + "op": "DUP8", + "gas": 3921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6508, + "op": "PUSH2", + "gas": 3918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6511, + "op": "JUMP", + "gas": 3915, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6417, + "op": "JUMPDEST", + "gas": 3907, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6418, + "op": "PUSH0", + "gas": 3906, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6419, + "op": "PUSH2", + "gas": 3904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6422, + "op": "DUP3", + "gas": 3901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6423, + "op": "PUSH2", + "gas": 3898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6426, + "op": "JUMP", + "gas": 3895, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 3887, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 3886, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 3884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 3881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 3878, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 3875, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 3873, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 3870, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 3867, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 3865, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6427, + "op": "JUMPDEST", + "gas": 3857, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6428, + "op": "PUSH2", + "gas": 3856, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6431, + "op": "DUP2", + "gas": 3853, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6432, + "op": "DUP6", + "gas": 3850, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6433, + "op": "PUSH2", + "gas": 3847, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6436, + "op": "JUMP", + "gas": 3844, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6401, + "op": "JUMPDEST", + "gas": 3836, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6402, + "op": "PUSH0", + "gas": 3835, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6403, + "op": "DUP3", + "gas": 3833, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6404, + "op": "DUP3", + "gas": 3830, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6405, + "op": "MSTORE", + "gas": 3827, + "gasCost": 15, + "depth": 1 + }, + { + "pc": 6406, + "op": "PUSH1", + "gas": 3812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6408, + "op": "DUP3", + "gas": 3809, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6409, + "op": "ADD", + "gas": 3806, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6410, + "op": "SWAP1", + "gas": 3803, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6411, + "op": "POP", + "gas": 3800, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6412, + "op": "SWAP3", + "gas": 3798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6413, + "op": "SWAP2", + "gas": 3795, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6414, + "op": "POP", + "gas": 3792, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6415, + "op": "POP", + "gas": 3790, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6416, + "op": "JUMP", + "gas": 3788, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6437, + "op": "JUMPDEST", + "gas": 3780, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6438, + "op": "SWAP4", + "gas": 3779, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6439, + "op": "POP", + "gas": 3776, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6440, + "op": "PUSH2", + "gas": 3774, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6443, + "op": "DUP2", + "gas": 3771, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6444, + "op": "DUP6", + "gas": 3768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6445, + "op": "PUSH1", + "gas": 3765, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6447, + "op": "DUP7", + "gas": 3762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6448, + "op": "ADD", + "gas": 3759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6449, + "op": "PUSH2", + "gas": 3756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6452, + "op": "JUMP", + "gas": 3753, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 3745, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 3744, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 3741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 3738, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 3735, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 3729, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 3727, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 3724, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 3721, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 3718, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 3712, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 3710, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 3708, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 3706, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6453, + "op": "JUMPDEST", + "gas": 3698, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6454, + "op": "PUSH2", + "gas": 3697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6457, + "op": "DUP2", + "gas": 3694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6458, + "op": "PUSH2", + "gas": 3691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6461, + "op": "JUMP", + "gas": 3688, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 3680, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 3679, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 3677, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 3674, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 3671, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 3668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 3665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 3662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 3659, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 3656, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 3654, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 3651, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 3648, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 3646, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6462, + "op": "JUMPDEST", + "gas": 3638, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6463, + "op": "DUP5", + "gas": 3637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6464, + "op": "ADD", + "gas": 3634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6465, + "op": "SWAP2", + "gas": 3631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6466, + "op": "POP", + "gas": 3628, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6467, + "op": "POP", + "gas": 3626, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6468, + "op": "SWAP3", + "gas": 3624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6469, + "op": "SWAP2", + "gas": 3621, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6470, + "op": "POP", + "gas": 3618, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6471, + "op": "POP", + "gas": 3616, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6472, + "op": "JUMP", + "gas": 3614, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6512, + "op": "JUMPDEST", + "gas": 3606, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6513, + "op": "SWAP1", + "gas": 3605, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6514, + "op": "POP", + "gas": 3602, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6515, + "op": "PUSH2", + "gas": 3600, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6518, + "op": "PUSH1", + "gas": 3597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6520, + "op": "DUP4", + "gas": 3594, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6521, + "op": "ADD", + "gas": 3591, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6522, + "op": "DUP7", + "gas": 3588, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6523, + "op": "PUSH2", + "gas": 3585, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6526, + "op": "JUMP", + "gas": 3582, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4840, + "op": "JUMPDEST", + "gas": 3574, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4841, + "op": "PUSH2", + "gas": 3573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4844, + "op": "DUP2", + "gas": 3570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4845, + "op": "PUSH2", + "gas": 3567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4848, + "op": "JUMP", + "gas": 3564, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4829, + "op": "JUMPDEST", + "gas": 3556, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4830, + "op": "PUSH0", + "gas": 3555, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4831, + "op": "DUP2", + "gas": 3553, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4832, + "op": "ISZERO", + "gas": 3550, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4833, + "op": "ISZERO", + "gas": 3547, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4834, + "op": "SWAP1", + "gas": 3544, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4835, + "op": "POP", + "gas": 3541, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4836, + "op": "SWAP2", + "gas": 3539, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4837, + "op": "SWAP1", + "gas": 3536, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4838, + "op": "POP", + "gas": 3533, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4839, + "op": "JUMP", + "gas": 3531, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4849, + "op": "JUMPDEST", + "gas": 3523, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4850, + "op": "DUP3", + "gas": 3522, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4851, + "op": "MSTORE", + "gas": 3519, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4852, + "op": "POP", + "gas": 3516, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4853, + "op": "POP", + "gas": 3514, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4854, + "op": "JUMP", + "gas": 3512, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6527, + "op": "JUMPDEST", + "gas": 3504, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6528, + "op": "DUP2", + "gas": 3503, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6529, + "op": "DUP2", + "gas": 3500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6530, + "op": "SUB", + "gas": 3497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6531, + "op": "PUSH1", + "gas": 3494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6533, + "op": "DUP4", + "gas": 3491, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6534, + "op": "ADD", + "gas": 3488, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6535, + "op": "MSTORE", + "gas": 3485, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6536, + "op": "PUSH2", + "gas": 3482, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6539, + "op": "DUP2", + "gas": 3479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6540, + "op": "DUP6", + "gas": 3476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6541, + "op": "PUSH2", + "gas": 3473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6544, + "op": "JUMP", + "gas": 3470, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5149, + "op": "JUMPDEST", + "gas": 3462, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5150, + "op": "PUSH0", + "gas": 3461, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5151, + "op": "PUSH2", + "gas": 3459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5154, + "op": "DUP3", + "gas": 3456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5155, + "op": "PUSH2", + "gas": 3453, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5158, + "op": "JUMP", + "gas": 3450, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 3442, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 3441, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 3439, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 3436, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 3433, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 3430, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 3428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 3425, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 3422, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 3420, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5159, + "op": "JUMPDEST", + "gas": 3412, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5160, + "op": "PUSH2", + "gas": 3411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5163, + "op": "DUP2", + "gas": 3408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5164, + "op": "DUP6", + "gas": 3405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5165, + "op": "PUSH2", + "gas": 3402, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5168, + "op": "JUMP", + "gas": 3399, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5119, + "op": "JUMPDEST", + "gas": 3391, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5120, + "op": "PUSH0", + "gas": 3390, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "DUP3", + "gas": 3388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5122, + "op": "DUP3", + "gas": 3385, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5123, + "op": "MSTORE", + "gas": 3382, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5124, + "op": "PUSH1", + "gas": 3376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5126, + "op": "DUP3", + "gas": 3373, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5127, + "op": "ADD", + "gas": 3370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5128, + "op": "SWAP1", + "gas": 3367, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5129, + "op": "POP", + "gas": 3364, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5130, + "op": "SWAP3", + "gas": 3362, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5131, + "op": "SWAP2", + "gas": 3359, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5132, + "op": "POP", + "gas": 3356, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5133, + "op": "POP", + "gas": 3354, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5134, + "op": "JUMP", + "gas": 3352, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5169, + "op": "JUMPDEST", + "gas": 3344, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5170, + "op": "SWAP4", + "gas": 3343, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5171, + "op": "POP", + "gas": 3340, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5172, + "op": "PUSH2", + "gas": 3338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5175, + "op": "DUP2", + "gas": 3335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5176, + "op": "DUP6", + "gas": 3332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5177, + "op": "PUSH1", + "gas": 3329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5179, + "op": "DUP7", + "gas": 3326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5180, + "op": "ADD", + "gas": 3323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5181, + "op": "PUSH2", + "gas": 3320, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5184, + "op": "JUMP", + "gas": 3317, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 3309, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 3308, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 3305, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 3302, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 3299, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 3290, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 3288, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 3285, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 3282, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 3279, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 3273, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 3271, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 3269, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 3267, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5185, + "op": "JUMPDEST", + "gas": 3259, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5186, + "op": "PUSH2", + "gas": 3258, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5189, + "op": "DUP2", + "gas": 3255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5190, + "op": "PUSH2", + "gas": 3252, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5193, + "op": "JUMP", + "gas": 3249, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 3241, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 3240, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 3238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 3235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 3232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 3229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 3226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 3223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 3220, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 3217, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 3215, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 3212, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 3209, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 3207, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5194, + "op": "JUMPDEST", + "gas": 3199, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5195, + "op": "DUP5", + "gas": 3198, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5196, + "op": "ADD", + "gas": 3195, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5197, + "op": "SWAP2", + "gas": 3192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5198, + "op": "POP", + "gas": 3189, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5199, + "op": "POP", + "gas": 3187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5200, + "op": "SWAP3", + "gas": 3185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5201, + "op": "SWAP2", + "gas": 3182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5202, + "op": "POP", + "gas": 3179, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5203, + "op": "POP", + "gas": 3177, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5204, + "op": "JUMP", + "gas": 3175, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6545, + "op": "JUMPDEST", + "gas": 3167, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6546, + "op": "SWAP1", + "gas": 3166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6547, + "op": "POP", + "gas": 3163, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6548, + "op": "PUSH2", + "gas": 3161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6551, + "op": "PUSH1", + "gas": 3158, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6553, + "op": "DUP4", + "gas": 3155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6554, + "op": "ADD", + "gas": 3152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6555, + "op": "DUP5", + "gas": 3149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6556, + "op": "PUSH2", + "gas": 3146, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6559, + "op": "JUMP", + "gas": 3143, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6473, + "op": "JUMPDEST", + "gas": 3135, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6474, + "op": "PUSH2", + "gas": 3134, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6477, + "op": "DUP2", + "gas": 3131, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6478, + "op": "PUSH2", + "gas": 3128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6481, + "op": "JUMP", + "gas": 3125, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 3117, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 3116, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 3114, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 3111, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 3108, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 3106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 3103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 3100, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 3098, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6482, + "op": "JUMPDEST", + "gas": 3090, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6483, + "op": "DUP3", + "gas": 3089, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6484, + "op": "MSTORE", + "gas": 3086, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6485, + "op": "POP", + "gas": 3083, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6486, + "op": "POP", + "gas": 3081, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6487, + "op": "JUMP", + "gas": 3079, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6560, + "op": "JUMPDEST", + "gas": 3071, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6561, + "op": "SWAP6", + "gas": 3070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6562, + "op": "SWAP5", + "gas": 3067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6563, + "op": "POP", + "gas": 3064, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6564, + "op": "POP", + "gas": 3062, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6565, + "op": "POP", + "gas": 3060, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6566, + "op": "POP", + "gas": 3058, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6567, + "op": "POP", + "gas": 3056, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6568, + "op": "JUMP", + "gas": 3054, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 922, + "op": "JUMPDEST", + "gas": 3046, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 923, + "op": "PUSH1", + "gas": 3045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 925, + "op": "MLOAD", + "gas": 3042, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 926, + "op": "DUP1", + "gas": 3039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 927, + "op": "SWAP2", + "gas": 3036, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 928, + "op": "SUB", + "gas": 3033, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 929, + "op": "SWAP1", + "gas": 3030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 930, + "op": "LOG1", + "gas": 3027, + "gasCost": 2798, + "depth": 1 + }, + { + "pc": 931, + "op": "DUP2", + "gas": 229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 932, + "op": "SWAP4", + "gas": 226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 933, + "op": "POP", + "gas": 223, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 934, + "op": "POP", + "gas": 221, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 935, + "op": "POP", + "gas": 219, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 936, + "op": "POP", + "gas": 217, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 937, + "op": "SWAP2", + "gas": 215, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 938, + "op": "SWAP1", + "gas": 212, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 939, + "op": "POP", + "gas": 209, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 940, + "op": "JUMP", + "gas": 207, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2233, + "op": "JUMPDEST", + "gas": 199, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2234, + "op": "SWAP1", + "gas": 198, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2235, + "op": "POP", + "gas": 195, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2236, + "op": "SWAP2", + "gas": 193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2237, + "op": "SWAP1", + "gas": 190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2238, + "op": "POP", + "gas": 187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2239, + "op": "JUMP", + "gas": 185, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 426, + "op": "JUMPDEST", + "gas": 177, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 427, + "op": "PUSH1", + "gas": 176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 429, + "op": "MLOAD", + "gas": 173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 430, + "op": "PUSH2", + "gas": 170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 433, + "op": "SWAP2", + "gas": 167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 434, + "op": "SWAP1", + "gas": 164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 435, + "op": "PUSH2", + "gas": 161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 438, + "op": "JUMP", + "gas": 158, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4855, + "op": "JUMPDEST", + "gas": 150, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4856, + "op": "PUSH0", + "gas": 149, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4857, + "op": "PUSH1", + "gas": 147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4859, + "op": "DUP3", + "gas": 144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4860, + "op": "ADD", + "gas": 141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4861, + "op": "SWAP1", + "gas": 138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4862, + "op": "POP", + "gas": 135, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4863, + "op": "PUSH2", + "gas": 133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4866, + "op": "PUSH0", + "gas": 130, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4867, + "op": "DUP4", + "gas": 128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4868, + "op": "ADD", + "gas": 125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4869, + "op": "DUP5", + "gas": 122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4870, + "op": "PUSH2", + "gas": 119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4873, + "op": "JUMP", + "gas": 116, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4840, + "op": "JUMPDEST", + "gas": 108, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4841, + "op": "PUSH2", + "gas": 107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4844, + "op": "DUP2", + "gas": 104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4845, + "op": "PUSH2", + "gas": 101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4848, + "op": "JUMP", + "gas": 98, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4829, + "op": "JUMPDEST", + "gas": 90, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4830, + "op": "PUSH0", + "gas": 89, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4831, + "op": "DUP2", + "gas": 87, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4832, + "op": "ISZERO", + "gas": 84, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4833, + "op": "ISZERO", + "gas": 81, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4834, + "op": "SWAP1", + "gas": 78, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4835, + "op": "POP", + "gas": 75, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4836, + "op": "SWAP2", + "gas": 73, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4837, + "op": "SWAP1", + "gas": 70, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4838, + "op": "POP", + "gas": 67, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4839, + "op": "JUMP", + "gas": 65, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4849, + "op": "JUMPDEST", + "gas": 57, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4850, + "op": "DUP3", + "gas": 56, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4851, + "op": "MSTORE", + "gas": 53, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4852, + "op": "POP", + "gas": 50, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4853, + "op": "POP", + "gas": 48, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4854, + "op": "JUMP", + "gas": 46, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4874, + "op": "JUMPDEST", + "gas": 38, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4875, + "op": "SWAP3", + "gas": 37, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4876, + "op": "SWAP2", + "gas": 34, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4877, + "op": "POP", + "gas": 31, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4878, + "op": "POP", + "gas": 29, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4879, + "op": "JUMP", + "gas": 27, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 439, + "op": "JUMPDEST", + "gas": 19, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 440, + "op": "PUSH1", + "gas": 18, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 442, + "op": "MLOAD", + "gas": 15, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 443, + "op": "DUP1", + "gas": 12, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 444, + "op": "SWAP2", + "gas": 9, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 445, + "op": "SUB", + "gas": 6, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 446, + "op": "SWAP1", + "gas": 3, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 447, + "op": "RETURN", + "gas": 0, + "gasCost": 0, + "depth": 1 + } + ], + "callTrace": { + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "gas": "0x17d11", + "gasUsed": "0x17d11", + "to": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "input": "0x637bd1640000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000468656c6f00000000000000000000000000000000000000000000000000000000", + "output": "0x0000000000000000000000000000000000000000000000000000000000000001", + "calls": [ + { + "from": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "gas": "0x11742", + "gasUsed": "0x2d0", + "to": "0x0000000000000000000000000000000000000003", + "input": "0x68656c6f", + "output": "0x000000000000000000000000158cedaee897fad9539a79146d34b587b38a76b7", + "type": "STATICCALL" + } + ], + "value": "0x0", + "type": "CALL" + } + } + ], + "withdraw_trie_root": "0xf15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67", + "sequencer_set_verify_hash": "0x72fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc", + "startL1QueueIndex": 1321206 + } + ] +] \ No newline at end of file diff --git a/prover/testdata/morph203/morph203_1_traces.json b/prover/testdata/morph203/morph203_1_traces.json new file mode 100644 index 000000000..2fd3b25d4 --- /dev/null +++ b/prover/testdata/morph203/morph203_1_traces.json @@ -0,0 +1,9576 @@ +[ + [ + { + "chainID": 53077, + "version": "2.0.3-mainnet-0295a3d4", + "coinbase": { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc77ff00b8b156", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "header": { + "parentHash": "0x63bb6fe159f8bed6b6549fefa5fa832f6c7855949cac72aa501eb50ae3303a21", + "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", + "miner": "0x0000000000000000000000000000000000000000", + "stateRoot": "0x2e3a128bf02f699263d560a2dea15c40daeb046e981f89576b9b7ba0fc98238f", + "transactionsRoot": "0xee6ccf2ad3829bb1970cccc9efcb4b7472de5fdadb7e24d5603f051b9e6cf1c6", + "receiptsRoot": "0xbf8743e4e21132d3c364831f16daa19d928d4a61b9b89fe6614aa4e8e29647eb", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000004000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000", + "difficulty": "0x0", + "number": "0x78369", + "gasLimit": "0x3b9aca00", + "gasUsed": "0x1d744", + "timestamp": "0x67d39d55", + "extraData": "0x", + "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce": "0x0000000000000000", + "nextL1MsgIndex": "0x1428f6", + "batchHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "baseFeePerGas": "0xf4240", + "withdrawalsRoot": null, + "blobGasUsed": null, + "excessBlobGas": null, + "parentBeaconBlockRoot": null, + "hash": "0xdd33ef8f0acd65a138d4b06161335ac4e557596dbd8886fca9fbeb04a250f1eb" + }, + "transactions": [ + { + "type": 2, + "nonce": 2172, + "txHash": "0xeec7175879653339d866e18077ef1c45767149573572d0b0e58ad384b2253166", + "gas": 120644, + "gasPrice": "0xf4240", + "gasTipCap": "0xf4240", + "gasFeeCap": "0xf4240", + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "to": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "chainId": "0xcf55", + "value": "0x0", + "data": "0x65207521000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000d50000000c0405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3010000000000000000000000", + "isCreate": false, + "accessList": [], + "v": "0x0", + "r": "0xd8c822a807ac57274ef5b5e5eb094a8e4d32ac6ee89d1e65f0cf25642e598553", + "s": "0x7de8a48c72083a9b291b51856f6807752ad75e22f7d65f27debd16d9420917e5" + } + ], + "storageTrace": { + "rootBefore": "0x2ae6666bcca6b4e72819d44bba819a3f37f015d6e1df579f84847e3ee7c55f3e", + "rootAfter": "0x2e3a128bf02f699263d560a2dea15c40daeb046e981f89576b9b7ba0fc98238f", + "proofs": { + "0x0000000000000000000000000000000000000009": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01f40d7cbd6801e32eea2e73ae37a3e6a9c612c17eacd5ee7f9e54e3064af68ed", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x0921db0def816c47288e31e114f2d320d1bef10a2ce0ed76f2333bfbaf4c9665df164af8117b30ef75c3a4e008ea19aceaa6e63940ecf5e5a545aab0906e772f19", + "0x090bdf939207e635077a89f39556cd58b57a5b91f7dd98c575665e30da373293ab236ab274f709263510668e66c2e8aec6dd013ed3aa1f7c3c188942b60cbaa671", + "0x090a9b9eb0eaf92b6a5a4eaff4b1191ae18e79672e5faab8e28bc34463f1da8827087e533a51344d20f09abcff595055b7ffd063e9f2513dd6fb7d2b48743d5932", + "0x09155c6820bbd72e6d877fb66c92c324f732982dbcd484cb746afd208a49ee2ef216fd2ec563dc9c533f9e8f40d08d2c6e1c80cfacc72bff908d529eaa3aed14af", + "0x062419360621da4f6d65940dc43995755d1b17b08f311067fc2e47614ed451b0970fb518201f9a11f33d4128782669aefb52a0d29954cdcbf190c597f1b0a1a88f", + "0x04105403da6918e91208c94938cb8af9bcab94ef192f175bbd5a4759e4e46a0d700508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008c621c5d486a08000000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420cae036ce53831e56043108b3ef9444d95464cfde000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000001": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x0915588127e13317eac2a90561a4bbce9529db0b5fcfb87d1aa7364994db6f638d007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09128aa2ec49bb12c10c7ee13d60415e9433d9b779a2a5c7d6ab9d49dd320d434127b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada24be1a9aa08adbc8ba1e71b30f38c299058e853fbe93cee09c566afe37c96d12", + "0x092cc07548fafc69a4dc7cfa2a483453f9f9819d104ccc8452b044584316b2918a0b1550511655ecc100037fab01d02dc8afb8b117bedad7f9ff3900d0747d44a6", + "0x091e5bd0832fb5a9827c679c75db95f1a559a07972a60b9c51ec435ea0633394390febfd3ab5fff6718b8ec4122a449fb8320d7a813240d702a4fda781e0a9bdce", + "0x092b96c11dcd9903dd8dfbca4f5acaf64c98f7aa8d1908e90d22682169ff2ba88c1aba44333a24240b0ba627dceff3778abc51012b698672802aea6c8c26bbfe18", + "0x090df918b89bd13e0c0a0745ccee3ac8ba25569fa5ba386d501311f0bf98a643331a327742a33e16c8ac782d9cef4cb06d98b731e6ca13b0c5450951b020f9b0c6", + "0x0820f409300cb23fffe97841b4b70f4c160f90393f7d29ecb5d2dc25f15c89fb550000000000000000000000000000000000000000000000000000000000000000", + "0x061276876f7f3ac122c96a402a706e93a7da84ad82496958bf8cf8d2baefa8c02a20abfaf6bc20fadf9a7609c0562a0ff138977845b052cf9e5d4c52cb2adedbe3", + "0x0427cfcbd2fe87474008e199ef5bff09273803bbf38032c75a36a7726b3c88f8a205080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002b2d37d04a6c2068ba19a08e79f3eeabfc6d2d1d516fcd700d4c377b23f9fc3f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000001000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x530000000000000000000000000000000000000f": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01f40d7cbd6801e32eea2e73ae37a3e6a9c612c17eacd5ee7f9e54e3064af68ed", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x092acea573988b3a33584f55cee3da7527b7ec93c39ee431d6a00e9e1c0908c32907d5d2c7ba73004c814f367fcfa9bbed0636535570c02819442719331f977f69", + "0x090e9d499bfcd7a95f27f1232e8299d71b9e312b56a5c2f96de6ba2114ce6427600bffa1d771c4f6eb4bbdc666b4ee82f7ea04a51f7c036d38e88ce7e9f7deb0d2", + "0x092e0e76440cf40d49e6a6441452c7ff3db1c5530a007c6d11b54c655302baa6a12719c9e93c1c4ab00f37d68d1fbde1ad2c4c0f540add6fc908b56c496d140ff6", + "0x082596dc85315e1b7b634ed1b19fd101397a8aaee2a296aca23e1f154d83bf2ca81d502de1ce7abdbf1e224e458bcbde4742e517dfc7ff124fca95bc7d6916a573", + "0x0418a86f98026d1a55f6fee616f04d51be16c033651ffaafb0514287ec067d04e805080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002d56fafe62ab5b6fed6b2a6cd3e6eaff4b96665a12fda3cb3fcd69f5e7bee95f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f8420530000000000000000000000000000000000000f000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000017": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01f40d7cbd6801e32eea2e73ae37a3e6a9c612c17eacd5ee7f9e54e3064af68ed", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x0921db0def816c47288e31e114f2d320d1bef10a2ce0ed76f2333bfbaf4c9665df164af8117b30ef75c3a4e008ea19aceaa6e63940ecf5e5a545aab0906e772f19", + "0x09243159bed6b5236c01d76e3c7ce8656377ede3215a267875ebd69ecb83609c2f1d430d8e77abbe31d81de9fd34eb7963320d07e618379663173532df9fd64a45", + "0x0901b9f43d7930c744b2f5c270fc55ebc1dad912c53348dc7fc91c254d4f65dc731935412eb3f2d483f1fad4cda432ea52bf9a2fcc83bb4998daae1e3fcb942d70", + "0x090e532e6013b5c675cdd7dd5dbca734c748a7f04cbd659dd2ae0bc5eafa5970c91e3d73de759429994c0b1ca675ad7693042bdd444939eb4adbf7098f3863b137", + "0x091cf7b52fea8453a4ca0b91aa9982cfa67d70de187ba25db4a8f248026ca3e530001cfc254334d3a06381cc5cee1769ae6912ce781377cc01b9c6917605338915", + "0x07092aee158cd2b81331e1ce9909492eb4317b6c5bc4794d546b62069798d0b24428cd8e8880db728741786b4fa7256d94a30e266ca07390acd342670e53ccb6b9", + "0x060e3bf5a186646517ca6d50e9d232f03b095fcceb727e719819a496973c2a8cf81102b8f2eac7af07547b293c5389e362fced543befbe69dc6fa5ec89b7df96e3", + "0x041918c47a133f759975cc95c0dba82051d9b5cd65407e76ef1366a9deaa14f28005080000000000000000000000000000000000000000000000000aec00000000000000000000000000000000000000000000000000000000000000000000000000000000047815c1b6b86b3270e62056fbc5c2f5e6d06a5d3255217e122006dece0bb56544107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000017000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01f40d7cbd6801e32eea2e73ae37a3e6a9c612c17eacd5ee7f9e54e3064af68ed", + "0x0901ae383d775a5593e8a9c58ec5e32d5b37296baa0363f05956ce31e20bf28f360aafacd4fa6a4af2e76345dcd258001d8525e1f0b15de72aa184708588a2e35a", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e2ab45becdac9b9922102afd7064f345952b290760a3f989808dca99c2d06130d", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa2d78b77cb674d0a4807418dde4894fe02131f6b5cd6e55564ee31e6fd152366f", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed92916c1f547c1b4befd140ad0df5148954ea9b8d316a3f30ac487b9828137d575e5", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e11368c01d16ad1cc931152eed082219375b88fbc1954e7d02321f331b2cc73035", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a23387b834374c9e0fd3988025e271787762722d7377318a033a72c1262e73f07", + "0x0700000000000000000000000000000000000000000000000000000000000000002132a384e0b749578e04b225ddc5fe7993e9ad939472707b779b39316ef5101b", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d2ec37a3eaab5531f679ae7b47970a9db6180c2464b5007f79d01c3ba1af7abf1", + "0x0603352201e9677453b2cfc7b12ba1f3e0cf320de57c0beb28e671d437e336fbbb04f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc76c41ecba6eb0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x0915588127e13317eac2a90561a4bbce9529db0b5fcfb87d1aa7364994db6f638d007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09128aa2ec49bb12c10c7ee13d60415e9433d9b779a2a5c7d6ab9d49dd320d434127b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada24be1a9aa08adbc8ba1e71b30f38c299058e853fbe93cee09c566afe37c96d12", + "0x092c5da8e3201d802213ef792f56e2215c4ec5dddeeca3994478c4dfe0a630aa962c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9021436af3496f9659fecbe04997c9f3f424bd376d5194fef20e1679b4d55f3ea4", + "0x0928dfb159dc353f8078c4363538a58a9fa9d7752e3fcf7d8ceddc08c11b51d15e19d66853551b5572832ff2b8fb72db53abe9fd30f56d6234918b51b1a50d3e75", + "0x0705f62a2631030f319cc83d3aed31907f893959137f58b48b7b3e8c22d877ea3716ef7145a610c21838e72d9d113e968ad41ab9c59e0a35633ddc5352d1867bd4", + "0x0802c74dd49b7efb1838742c4bd723baf03c7213fd6451541830a55b1a8a4b97f80000000000000000000000000000000000000000000000000000000000000000", + "0x08200b133820811eae273851524cd4b4286bfe2c1952baf7add3cea76fd28f55c30000000000000000000000000000000000000000000000000000000000000000", + "0x062dedb44952879016a484230de4935598f46859023d2b5c59b5839a54694766630e8e9abd7780da5da2ef86496348acf63857300969c2e704a31e7ea401be45f7", + "0x040dc14d1e73c0c578e5be438abfab5d1a47a0eef96e1d759f6997244869c1011205080000000000000000000000000000000000000000000000001dfd000000000000000100000000000000000000000000000000000000000000000000000000000000000f98ed2e0091c1dcd5e8881666d11fc23b8d3bff6db63078ff41db71965f5b6d04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd520f78ce1e2f0de8fd15ce6ac4ddec6982413fda499000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x0915588127e13317eac2a90561a4bbce9529db0b5fcfb87d1aa7364994db6f638d007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09128aa2ec49bb12c10c7ee13d60415e9433d9b779a2a5c7d6ab9d49dd320d434127b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada24be1a9aa08adbc8ba1e71b30f38c299058e853fbe93cee09c566afe37c96d12", + "0x092c5da8e3201d802213ef792f56e2215c4ec5dddeeca3994478c4dfe0a630aa962c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9021436af3496f9659fecbe04997c9f3f424bd376d5194fef20e1679b4d55f3ea4", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf296a1e25050d195d3b4699a0da27135a9fc8e49ec8f4dfa98038b7d6ae774826", + "0x080bb10865c33ea20a22c7941fc0a096301c98873d56148c6e8fea9b6e70fc3d2409b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x0811f12781b367fe7f10a9080a169e9419d7e19a5e8372ec4ed7e4d100f772054d0000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000b07218665f37f37b6d95bd589c908f68d992080a49912641ace09e8b78b85bc", + "0x062febdf23bcdd8a95c606e8e55c203c581bd01d6346d31d231a225babe5b3fa061dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d205080000000000000000000000000000000000000000000000000000000000000000087c000000000000000000000000000000000000000000000655cea7342d120ce11d0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0x5300000000000000000000000000000000000001": { + "0x0000000000000000000000000000000000000000000000000000000000000021": [ + "0x09185c96062cbc2b564296e9e1bce3354dbcbf9f5879fd062d5b50bb358f81517e2a2dbce5edb6723342643101ac68123f3790ae822b572ec8bbd69da035c7b935", + "0x092d047e244b411ce9155f14462cfb81958ef4b4c2a08fc3fd4189484a8b7711a40462e3566daed4615c6e51a0e598dfb9a7ed84c831bfc516151e9f5ffb8110ca", + "0x09261fe911b00d2fd329c6b0e4b6d4c3a810b95a82ff32e6946a3244614feb91d205b63b9955f3a8244688b1a6cb053a7559f79129086239b473999e85be4c4282", + "0x07251841563b13c8aa1784b2d917584c358e1607710c0e0b41e5b1c45a07ceac601daf38969872c436599f595013a03f6c004d1f072aa7c8347f6ead35212900a8", + "0x08249e00f5aae6d513fc492c019a4e4de721a60764cada3866244a95db0d4e38bf0000000000000000000000000000000000000000000000000000000000000000", + "0x0818749973fd91f5be3859e8cfa68caee44893779b104075dd793bf4c486475b5b0000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000017d7d830e47e7f6da4ddbf680cf2eb1f9b538cec3240c26711d780f22f093f9a", + "0x0700000000000000000000000000000000000000000000000000000000000000000abb47e0d1f63a2287426a57ee22892129c848adcfadb74266fee6b726c86ede", + "0x07000000000000000000000000000000000000000000000000000000000000000021e13181b559aa6ad86c239a49008b70447de95cb59caa3242701b556ff6d030", + "0x0609a3a225fccec46d81cb0f42943e252523157488c3f7712cc9528ec8eceeee2d0736af2262ac152f39d5da51e394c65d8ab9f3223c051e5be4c43e508a8766cf", + "0x042f683d080c393f5fb2ade2190fd56e8a5e8fa26533acdea8cce25caa236027cc01010000f15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67200000000000000000000000000000000000000000000000000000000000000021", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x530000000000000000000000000000000000000f": { + "0x0000000000000000000000000000000000000000000000000000000000000001": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x0826741766ba756a60481cdbfbf1385b2e19410e0b174723be76ccce90749c19b71721b818bb25fdc0627fbd0f0ced2d5f58f1065a3e11d06073b58139aa144311", + "0x0700000000000000000000000000000000000000000000000000000000000000002aa3eec54733e8552173f9294865bf49cf8b2c952706e74cee743186ad4cd928", + "0x080ccb96bae7a65349544b73c51e1c17e905afa52b470cd3d12f5068df70ae80380000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000001982d84b59e872b109cb1b01bc1d03406977eb16aeef0ca94449c0e4dbde6426", + "0x08148058fb1d8433119f2f078417d61bd03610293c07a22079d8add13751806be00000000000000000000000000000000000000000000000000000000000000000", + "0x080b933363c8e146ca259ddce0026a7cda36a75da17137370243f5452dad2e2bd10000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000029d862e775a17f6a182820b3ef22a94850f73238972142e77c423a5ccda02739", + "0x0607f1a71dd97c713b6e6f0e0429b179a7f7a5d1a95605340f87f7b3b5c6571655156a0960a84fa4287f66d18b9c39ab9d403fa6b6dddd126f47758aadcb82e122", + "0x0426049ba6de63003492eb078a01a8aa4f4a0e67f28f0955c2eba9101d5d2eea50010100000000000000000000000000000000000000000000000000000000000005f5e108200000000000000000000000000000000000000000000000000000000000000001", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000002": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04020953ad52de135367a1ba2629636216ed5174cce5629d11b5d97fe733f07dcc0101000000000000000000000000000000000000000000000000000000000000000009c4200000000000000000000000000000000000000000000000000000000000000002", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000003": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x0406c50541f08911ad149aa545dd3d606f86ee63c751a795c7d57f0d3f85e6bdeb01010000000000000000000000000000000000000000000000000000000000003b9aca00200000000000000000000000000000000000000000000000000000000000000003", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000006": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04064ef33f6d7044a6aa1458b710bb24a531e379030cf6ca490d84fff1d8e79c94010100000000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000006", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000007": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x082b571cbf4c65b2bf5a694234230c0bb2e95c55920e0c050a73027dea6f5535ab0000000000000000000000000000000000000000000000000000000000000000", + "0x082119746c2afd71d1574bea80b47eab52d70db3990cd1c9f6d4df98eaed5c3ff01555b1ad85223923b16c0129d117eb56e12b2c4310ff3014c28b40684e3ea69d", + "0x040d1e80106f23933567a7c4881177b5d6c45a3f319feafe560a28df75769db9ba0101000000000000000000000000000000000000000000000000000000000b33edbfaf14200000000000000000000000000000000000000000000000000000000000000007", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000008": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x060e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200302bd20972a48695c1c418461cc2124f0c246ad1bb41e1d8d05cd9527784228a", + "0x0412c0c59f64422dd5b7ce259c4aa62e9bf4e2bcc4f0da068e332b9f4e502ba38f01010000000000000000000000000000000000000000000000000000000000174876e800200000000000000000000000000000000000000000000000000000000000000008", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000009": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x05", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x5300000000000000000000000000000000000017": { + "0x0000000000000000000000000000000000000000000000000000000000000065": [ + "0x091e6f7e3b2102387b1b88b997f51470252cf226b68be43284a52489de59a2abb0105259f0b8858b399570780c836f31751cc2566ba5935c50b2db952c1020abb0", + "0x091623ed516b763c3dd7bd75be87d3bda3bc50b9909eb6f832c706e2f973246c131bb859e26b23e5d0474d863af33c2a1163103f5881396448cd8ef9cfe18f9b92", + "0x0812bc2e9bd37f44093eb71c7af67706fd9be1a51a828a3d321b792b5490c6ad560e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200", + "0x07290cb26e75385afbd8fce76271781f49ca9f5737fe573f7a121642a43bdba61a04c601c63ad45f2c8c8c8cbe20c788ef63e574ce0e800153c8b0c855dca3c0be", + "0x0702bdcd1f95c7883b7b633e040eb8263e1fb0ab97a3fa5e590f4ba82b29ee3e5a2284968786ddc52459cd3e8be14da7533c8470c63575eaccae28bd65169074f9", + "0x07000000000000000000000000000000000000000000000000000000000000000028bcb7656960130b704e5cd2afdc5bf933752cc290e10ce8de9ff4eeff23fa71", + "0x060bf27252e269c88af00daf8e309f853351131ba9cb56aa8ffdc008546b4eefc9236d89b8a52ce6f920048f57605af94c276903d51b48d2a9549a2d4ce38af1e2", + "0x042115c9b0a0938aa1ce2e8c01581e5aa931288249a453588de70cf2c5dae26a7b0101000072fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc200000000000000000000000000000000000000000000000000000000000000065", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": { + "0x5e0d7e1282e184ffe8b3e85959d9b377240ad76929ea1bf70a645248a2e47043": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x06146c35e7e025806e909bff59b6f979ce70a0361f4c21927654525e61e6fe94642c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc5", + "0x041881e4ad6efc3d1cf315c4dd6e133caea84c182c647660bf44502594ad2c1f3801010000000000000000000000000000000000000000000000000000000000000000004120a7f7d1323a52987879f36312c5073aaaebefb56b07868f38dc16e0fe5a6e3cea", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5e0d7e1282e184ffe8b3e85959d9b377240ad76929ea1bf70a645248a2e47044": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x070c950c18bab1185522696011ed57fca69e01b541828d5ff534cbed1938b21ee4016ac634917fc6d3a0f6b79757daec61907b7aedc5f29eda70e92c3d3cca19a4", + "0x081613caa951fc2fafa0087eb7d5a1dfed09a02098063b3343e49c612e7d43d91b0000000000000000000000000000000000000000000000000000000000000000", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc455607e59ad0e17aa550b4c22f624e2c71133b519b7a5b569851816790a6c2ee462e", + "0x0416764599b883ebb0c07ee4fd75fbc009e25a6f4a634518187c7e7239cb960fd501010000000000000000000000000000000000000000000000000000000000000000000120411092aa40253bc3a57548e804d0118e38225673267c809e7a24d0ef673c1e36", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xfcc98b12550ae02fe8768b2c7e4ee02016650acc9dc59756f6a48349bed8da79": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x040dd2f85e38f58c771c9b9036984d6312d27727ef2654d8c714a0a8360ab4cc0301010000000000000000000000000000000000000000000000000000000000000000004120c6479b83e9785430eb70698cda89562fbf6f1b9f865d224c7be856acc8ff7ae5", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xfdf805a20de3539f66c85b821fef45baff42d32f45a92a9e0b4aa2476c33ec6d": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x06146c35e7e025806e909bff59b6f979ce70a0361f4c21927654525e61e6fe94642c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc5", + "0x0402ff3d98d60879a35a5db7d2391babef2157d459d0d3fe39288673e1d095e872010100000000000000000000000000000000000000000000000000000000000000000001209b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + }, + "codes": [ + { + "codeSize": 0, + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "code": "0x" + }, + { + "codeSize": 7677, + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "hash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "code": "0x608060405234801561000f575f80fd5b506004361061009c575f3560e01c8063637bd16411610064578063637bd1641461019057806365207521146101c05780638a59e100146101f05780638f527e9414610220578063dbd81bc71461023e5761009c565b80630c8f3129146100a057806321ceca81146100d0578063447a4c62146101005780635e109b571461013057806363138d4f14610160575b5f80fd5b6100ba60048036038101906100b59190611296565b61026e565b6040516100c791906112f7565b60405180910390f35b6100ea60048036038101906100e591906113ae565b6103ad565b6040516100f79190611455565b60405180910390f35b61011a600480360381019061011591906114a8565b610460565b60405161012791906112f7565b60405180910390f35b61014a600480360381019061014591906113ae565b61075f565b60405161015791906112f7565b60405180910390f35b61017a60048036038101906101759190611296565b610770565b60405161018791906112f7565b60405180910390f35b6101aa60048036038101906101a591906113ae565b6108af565b6040516101b791906112f7565b60405180910390f35b6101da60048036038101906101d59190611296565b6108c0565b6040516101e791906112f7565b60405180910390f35b61020a600480360381019061020591906114d3565b610a50565b60405161021791906112f7565b60405180910390f35b610228610d94565b6040516102359190611455565b60405180910390f35b610258600480360381019061025391906113ae565b610fbc565b60405161026591906112f7565b60405180910390f35b5f8061027a8351610ff0565b60405160200161028a91906115b1565b60405160208183030381529060405290505f80600373ffffffffffffffffffffffffffffffffffffffff16856040516102c3919061160c565b5f60405180830381855afa9150503d805f81146102fb576040519150601f19603f3d011682016040523d82523d5f602084013e610300565b606091505b5091509150815f846040516103159190611622565b90815260200160405180910390205f6101000a81548160ff0219169083151502179055508060018460405161034a9190611622565b908152602001604051809103902090816103649190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018383834260405161039a9493929190611958565b60405180910390a1819350505050919050565b6001818051602081018201805184825260208301602085012081835280955050505050505f9150905080546103e190611665565b80601f016020809104026020016040519081016040528092919081815260200182805461040d90611665565b80156104585780601f1061042f57610100808354040283529160200191610458565b820191905f5260205f20905b81548152906001019060200180831161043b57829003601f168201915b505050505081565b5f8061046b83610ff0565b60405160200161047b91906119f3565b60405160208183030381529060405290505f60c08461049a9190611a41565b67ffffffffffffffff8111156104b3576104b2611172565b5b6040519080825280601f01601f1916602001820160405280156104e55781602001600182028036833780820191505090505b5090505f5b8481101561064b575f60c0826105009190611a41565b905060018261050f9190611a82565b60f81b83601f836105209190611a82565b8151811061053157610530611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a90535060028261056c9190611a82565b60f81b836040601f8461057f9190611a82565b6105899190611a82565b8151811061059a57610599611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053506003826105d59190611a82565b60f81b8360206040601f856105ea9190611a82565b6105f49190611a82565b6105fe9190611a82565b8151811061060f5761060e611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505080806001019150506104ea565b505f80600873ffffffffffffffffffffffffffffffffffffffff1683604051610674919061160c565b5f60405180830381855afa9150503d805f81146106ac576040519150601f19603f3d011682016040523d82523d5f602084013e6106b1565b606091505b5091509150815f856040516106c69190611622565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001856040516106fb9190611622565b908152602001604051809103902090816107159190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018483834260405161074b9493929190611958565b60405180910390a181945050505050919050565b5f61076982610770565b9050919050565b5f8061077c8351610ff0565b60405160200161078c9190611b2c565b60405160208183030381529060405290505f80600273ffffffffffffffffffffffffffffffffffffffff16856040516107c5919061160c565b5f60405180830381855afa9150503d805f81146107fd576040519150601f19603f3d011682016040523d82523d5f602084013e610802565b606091505b5091509150815f846040516108179190611622565b90815260200160405180910390205f6101000a81548160ff0219169083151502179055508060018460405161084c9190611622565b908152602001604051809103902090816108669190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018383834260405161089c9493929190611958565b60405180910390a1819350505050919050565b5f6108b98261026e565b9050919050565b5f60d5825114610905576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fc90611bbd565b60405180910390fd5b5f6040518060400160405280600781526020017f426c616b6532460000000000000000000000000000000000000000000000000081525090505f80600973ffffffffffffffffffffffffffffffffffffffff1685604051610966919061160c565b5f60405180830381855afa9150503d805f811461099e576040519150601f19603f3d011682016040523d82523d5f602084013e6109a3565b606091505b5091509150815f846040516109b89190611622565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001846040516109ed9190611622565b90815260200160405180910390209081610a079190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00183838342604051610a3d9493929190611958565b60405180910390a1819350505050919050565b5f80610a5b85610ff0565b610a6485610ff0565b610a6d85610ff0565b604051602001610a7f93929190611c6f565b60405160208183030381529060405290505f8385876060610aa09190611a82565b610aaa9190611a82565b610ab49190611a82565b67ffffffffffffffff811115610acd57610acc611172565b5b6040519080825280601f01601f191660200182016040528015610aff5781602001600182028036833780820191505090505b5090505f865f1b90505f865f1b90505f865f1b90508260208501528160408501528060608501525f891115610b8d57600760f81b8460018b6060610b439190611a82565b610b4d9190611cc0565b81518110610b5e57610b5d611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f881115610bff57600360f81b8460018a8c6060610bab9190611a82565b610bb59190611a82565b610bbf9190611cc0565b81518110610bd057610bcf611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f871115610c7c57601160f81b846001898b8d6060610c1e9190611a82565b610c289190611a82565b610c329190611a82565b610c3c9190611cc0565b81518110610c4d57610c4c611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f80600573ffffffffffffffffffffffffffffffffffffffff1686604051610ca4919061160c565b5f60405180830381855afa9150503d805f8114610cdc576040519150601f19603f3d011682016040523d82523d5f602084013e610ce1565b606091505b5091509150815f88604051610cf69190611622565b90815260200160405180910390205f6101000a81548160ff02191690831515021790555080600188604051610d2b9190611622565b90815260200160405180910390209081610d459190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00187838342604051610d7b9493929190611958565b60405180910390a1819750505050505050509392505050565b60605f60d567ffffffffffffffff811115610db257610db1611172565b5b6040519080825280601f01601f191660200182016040528015610de45781602001600182028036833780820191505090505b5090505f60f81b815f81518110610dfe57610dfd611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600181518110610e4457610e43611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600281518110610e8a57610e89611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600c60f81b81600381518110610ed157610ed0611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f600490505b60d4811015610f6d5761010081610f1c9190611d20565b60f81b828281518110610f3257610f31611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508080600101915050610f05565b50600160f81b8160d481518110610f8757610f86611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508091505090565b5f818051602081018201805184825260208301602085012081835280955050505050505f915054906101000a900460ff1681565b60605f8203611036576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611144565b5f8290505f5b5f821461106557808061104e90611d50565b915050600a8261105e9190611d97565b915061103c565b5f8167ffffffffffffffff8111156110805761107f611172565b5b6040519080825280601f01601f1916602001820160405280156110b25781602001600182028036833780820191505090505b5090505b5f851461113d576001826110ca9190611cc0565b9150600a856110d99190611d20565b60306110e59190611a82565b60f81b8183815181106110fb576110fa611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600a856111369190611d97565b94506110b6565b8093505050505b919050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6111a882611162565b810181811067ffffffffffffffff821117156111c7576111c6611172565b5b80604052505050565b5f6111d9611149565b90506111e5828261119f565b919050565b5f67ffffffffffffffff82111561120457611203611172565b5b61120d82611162565b9050602081019050919050565b828183375f83830152505050565b5f61123a611235846111ea565b6111d0565b9050828152602081018484840111156112565761125561115e565b5b61126184828561121a565b509392505050565b5f82601f83011261127d5761127c61115a565b5b813561128d848260208601611228565b91505092915050565b5f602082840312156112ab576112aa611152565b5b5f82013567ffffffffffffffff8111156112c8576112c7611156565b5b6112d484828501611269565b91505092915050565b5f8115159050919050565b6112f1816112dd565b82525050565b5f60208201905061130a5f8301846112e8565b92915050565b5f67ffffffffffffffff82111561132a57611329611172565b5b61133382611162565b9050602081019050919050565b5f61135261134d84611310565b6111d0565b90508281526020810184848401111561136e5761136d61115e565b5b61137984828561121a565b509392505050565b5f82601f8301126113955761139461115a565b5b81356113a5848260208601611340565b91505092915050565b5f602082840312156113c3576113c2611152565b5b5f82013567ffffffffffffffff8111156113e0576113df611156565b5b6113ec84828501611381565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f611427826113f5565b61143181856113ff565b935061144181856020860161140f565b61144a81611162565b840191505092915050565b5f6020820190508181035f83015261146d818461141d565b905092915050565b5f819050919050565b61148781611475565b8114611491575f80fd5b50565b5f813590506114a28161147e565b92915050565b5f602082840312156114bd576114bc611152565b5b5f6114ca84828501611494565b91505092915050565b5f805f606084860312156114ea576114e9611152565b5b5f6114f786828701611494565b935050602061150886828701611494565b925050604061151986828701611494565b9150509250925092565b5f81905092915050565b7f524950454d443136305f000000000000000000000000000000000000000000005f82015250565b5f611561600a83611523565b915061156c8261152d565b600a82019050919050565b5f81519050919050565b5f61158b82611577565b6115958185611523565b93506115a581856020860161140f565b80840191505092915050565b5f6115bb82611555565b91506115c78284611581565b915081905092915050565b5f81905092915050565b5f6115e6826113f5565b6115f081856115d2565b935061160081856020860161140f565b80840191505092915050565b5f61161782846115dc565b915081905092915050565b5f61162d8284611581565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061167c57607f821691505b60208210810361168f5761168e611638565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026116f17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826116b6565b6116fb86836116b6565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61173661173161172c84611475565b611713565b611475565b9050919050565b5f819050919050565b61174f8361171c565b61176361175b8261173d565b8484546116c2565b825550505050565b5f90565b61177761176b565b611782818484611746565b505050565b5b818110156117a55761179a5f8261176f565b600181019050611788565b5050565b601f8211156117ea576117bb81611695565b6117c4846116a7565b810160208510156117d3578190505b6117e76117df856116a7565b830182611787565b50505b505050565b5f82821c905092915050565b5f61180a5f19846008026117ef565b1980831691505092915050565b5f61182283836117fb565b9150826002028217905092915050565b61183b826113f5565b67ffffffffffffffff81111561185457611853611172565b5b61185e8254611665565b6118698282856117a9565b5f60209050601f83116001811461189a575f8415611888578287015190505b6118928582611817565b8655506118f9565b601f1984166118a886611695565b5f5b828110156118cf578489015182556001820191506020850194506020810190506118aa565b868310156118ec57848901516118e8601f8916826117fb565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b5f61191b82611577565b6119258185611901565b935061193581856020860161140f565b61193e81611162565b840191505092915050565b61195281611475565b82525050565b5f6080820190508181035f8301526119708187611911565b905061197f60208301866112e8565b8181036040830152611991818561141d565b90506119a06060830184611949565b95945050505050565b7f50616972696e675f0000000000000000000000000000000000000000000000005f82015250565b5f6119dd600883611523565b91506119e8826119a9565b600882019050919050565b5f6119fd826119d1565b9150611a098284611581565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611a4b82611475565b9150611a5683611475565b9250828202611a6481611475565b91508282048414831517611a7b57611a7a611a14565b5b5092915050565b5f611a8c82611475565b9150611a9783611475565b9250828201905080821115611aaf57611aae611a14565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f5348413235365f000000000000000000000000000000000000000000000000005f82015250565b5f611b16600783611523565b9150611b2182611ae2565b600782019050919050565b5f611b3682611b0a565b9150611b428284611581565b915081905092915050565b7f426c616b6532662072657175697265732065786163746c7920323133206279745f8201527f657320696e707574000000000000000000000000000000000000000000000000602082015250565b5f611ba7602883611901565b9150611bb282611b4d565b604082019050919050565b5f6020820190508181035f830152611bd481611b9b565b9050919050565b7f4d6f644578705f000000000000000000000000000000000000000000000000005f82015250565b5f611c0f600783611523565b9150611c1a82611bdb565b600782019050919050565b7f5f000000000000000000000000000000000000000000000000000000000000005f82015250565b5f611c59600183611523565b9150611c6482611c25565b600182019050919050565b5f611c7982611c03565b9150611c858286611581565b9150611c9082611c4d565b9150611c9c8285611581565b9150611ca782611c4d565b9150611cb38284611581565b9150819050949350505050565b5f611cca82611475565b9150611cd583611475565b9250828203905081811115611ced57611cec611a14565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611d2a82611475565b9150611d3583611475565b925082611d4557611d44611cf3565b5b828206905092915050565b5f611d5a82611475565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611d8c57611d8b611a14565b5b600182019050919050565b5f611da182611475565b9150611dac83611475565b925082611dbc57611dbb611cf3565b5b82820490509291505056fea264697066735822122005118c223c12b158349613416fd6342abd507776ce6306cce1e9a99fa8e7b9bb64736f6c634300081a0033" + } + ], + "txStorageTraces": [ + { + "rootBefore": "0x2ae6666bcca6b4e72819d44bba819a3f37f015d6e1df579f84847e3ee7c55f3e", + "rootAfter": "0x2e3a128bf02f699263d560a2dea15c40daeb046e981f89576b9b7ba0fc98238f", + "proofs": { + "0x0000000000000000000000000000000000000009": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01f40d7cbd6801e32eea2e73ae37a3e6a9c612c17eacd5ee7f9e54e3064af68ed", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x0921db0def816c47288e31e114f2d320d1bef10a2ce0ed76f2333bfbaf4c9665df164af8117b30ef75c3a4e008ea19aceaa6e63940ecf5e5a545aab0906e772f19", + "0x090bdf939207e635077a89f39556cd58b57a5b91f7dd98c575665e30da373293ab236ab274f709263510668e66c2e8aec6dd013ed3aa1f7c3c188942b60cbaa671", + "0x090a9b9eb0eaf92b6a5a4eaff4b1191ae18e79672e5faab8e28bc34463f1da8827087e533a51344d20f09abcff595055b7ffd063e9f2513dd6fb7d2b48743d5932", + "0x09155c6820bbd72e6d877fb66c92c324f732982dbcd484cb746afd208a49ee2ef216fd2ec563dc9c533f9e8f40d08d2c6e1c80cfacc72bff908d529eaa3aed14af", + "0x062419360621da4f6d65940dc43995755d1b17b08f311067fc2e47614ed451b0970fb518201f9a11f33d4128782669aefb52a0d29954cdcbf190c597f1b0a1a88f", + "0x04105403da6918e91208c94938cb8af9bcab94ef192f175bbd5a4759e4e46a0d700508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008c621c5d486a08000000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420cae036ce53831e56043108b3ef9444d95464cfde000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01f40d7cbd6801e32eea2e73ae37a3e6a9c612c17eacd5ee7f9e54e3064af68ed", + "0x0901ae383d775a5593e8a9c58ec5e32d5b37296baa0363f05956ce31e20bf28f360aafacd4fa6a4af2e76345dcd258001d8525e1f0b15de72aa184708588a2e35a", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e2ab45becdac9b9922102afd7064f345952b290760a3f989808dca99c2d06130d", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa2d78b77cb674d0a4807418dde4894fe02131f6b5cd6e55564ee31e6fd152366f", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed92916c1f547c1b4befd140ad0df5148954ea9b8d316a3f30ac487b9828137d575e5", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e11368c01d16ad1cc931152eed082219375b88fbc1954e7d02321f331b2cc73035", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a23387b834374c9e0fd3988025e271787762722d7377318a033a72c1262e73f07", + "0x0700000000000000000000000000000000000000000000000000000000000000002132a384e0b749578e04b225ddc5fe7993e9ad939472707b779b39316ef5101b", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d2ec37a3eaab5531f679ae7b47970a9db6180c2464b5007f79d01c3ba1af7abf1", + "0x0603352201e9677453b2cfc7b12ba1f3e0cf320de57c0beb28e671d437e336fbbb04f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc76c41ecba6eb0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x0915588127e13317eac2a90561a4bbce9529db0b5fcfb87d1aa7364994db6f638d007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09128aa2ec49bb12c10c7ee13d60415e9433d9b779a2a5c7d6ab9d49dd320d434127b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada24be1a9aa08adbc8ba1e71b30f38c299058e853fbe93cee09c566afe37c96d12", + "0x092c5da8e3201d802213ef792f56e2215c4ec5dddeeca3994478c4dfe0a630aa962c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9021436af3496f9659fecbe04997c9f3f424bd376d5194fef20e1679b4d55f3ea4", + "0x0928dfb159dc353f8078c4363538a58a9fa9d7752e3fcf7d8ceddc08c11b51d15e19d66853551b5572832ff2b8fb72db53abe9fd30f56d6234918b51b1a50d3e75", + "0x0705f62a2631030f319cc83d3aed31907f893959137f58b48b7b3e8c22d877ea3716ef7145a610c21838e72d9d113e968ad41ab9c59e0a35633ddc5352d1867bd4", + "0x0802c74dd49b7efb1838742c4bd723baf03c7213fd6451541830a55b1a8a4b97f80000000000000000000000000000000000000000000000000000000000000000", + "0x08200b133820811eae273851524cd4b4286bfe2c1952baf7add3cea76fd28f55c30000000000000000000000000000000000000000000000000000000000000000", + "0x062dedb44952879016a484230de4935598f46859023d2b5c59b5839a54694766630e8e9abd7780da5da2ef86496348acf63857300969c2e704a31e7ea401be45f7", + "0x040dc14d1e73c0c578e5be438abfab5d1a47a0eef96e1d759f6997244869c1011205080000000000000000000000000000000000000000000000001dfd000000000000000100000000000000000000000000000000000000000000000000000000000000000f98ed2e0091c1dcd5e8881666d11fc23b8d3bff6db63078ff41db71965f5b6d04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd520f78ce1e2f0de8fd15ce6ac4ddec6982413fda499000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x091d6fc08d1b0ca1c242ea9feb4922cccacd60d303b5ee492db8f32a0568f2a8742d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090da7e7e9bae076de85c6a3fda89a4ffbc236691d421cab3ce955f6fdd66cca9721ce6c2b4fc04e5bbc357f842c54e831f0b05dcd1f6227ab01b2c1a66727e0f8", + "0x0915588127e13317eac2a90561a4bbce9529db0b5fcfb87d1aa7364994db6f638d007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09128aa2ec49bb12c10c7ee13d60415e9433d9b779a2a5c7d6ab9d49dd320d434127b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada24be1a9aa08adbc8ba1e71b30f38c299058e853fbe93cee09c566afe37c96d12", + "0x092c5da8e3201d802213ef792f56e2215c4ec5dddeeca3994478c4dfe0a630aa962c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9021436af3496f9659fecbe04997c9f3f424bd376d5194fef20e1679b4d55f3ea4", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf296a1e25050d195d3b4699a0da27135a9fc8e49ec8f4dfa98038b7d6ae774826", + "0x080bb10865c33ea20a22c7941fc0a096301c98873d56148c6e8fea9b6e70fc3d2409b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x0811f12781b367fe7f10a9080a169e9419d7e19a5e8372ec4ed7e4d100f772054d0000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000b07218665f37f37b6d95bd589c908f68d992080a49912641ace09e8b78b85bc", + "0x062febdf23bcdd8a95c606e8e55c203c581bd01d6346d31d231a225babe5b3fa061dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d205080000000000000000000000000000000000000000000000000000000000000000087c000000000000000000000000000000000000000000000655cea7342d120ce11d0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": { + "0x5e0d7e1282e184ffe8b3e85959d9b377240ad76929ea1bf70a645248a2e47043": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x06146c35e7e025806e909bff59b6f979ce70a0361f4c21927654525e61e6fe94642c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc5", + "0x041881e4ad6efc3d1cf315c4dd6e133caea84c182c647660bf44502594ad2c1f3801010000000000000000000000000000000000000000000000000000000000000000004120a7f7d1323a52987879f36312c5073aaaebefb56b07868f38dc16e0fe5a6e3cea", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5e0d7e1282e184ffe8b3e85959d9b377240ad76929ea1bf70a645248a2e47044": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x070c950c18bab1185522696011ed57fca69e01b541828d5ff534cbed1938b21ee4016ac634917fc6d3a0f6b79757daec61907b7aedc5f29eda70e92c3d3cca19a4", + "0x081613caa951fc2fafa0087eb7d5a1dfed09a02098063b3343e49c612e7d43d91b0000000000000000000000000000000000000000000000000000000000000000", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc455607e59ad0e17aa550b4c22f624e2c71133b519b7a5b569851816790a6c2ee462e", + "0x0416764599b883ebb0c07ee4fd75fbc009e25a6f4a634518187c7e7239cb960fd501010000000000000000000000000000000000000000000000000000000000000000000120411092aa40253bc3a57548e804d0118e38225673267c809e7a24d0ef673c1e36", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xfcc98b12550ae02fe8768b2c7e4ee02016650acc9dc59756f6a48349bed8da79": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x040dd2f85e38f58c771c9b9036984d6312d27727ef2654d8c714a0a8360ab4cc0301010000000000000000000000000000000000000000000000000000000000000000004120c6479b83e9785430eb70698cda89562fbf6f1b9f865d224c7be856acc8ff7ae5", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xfdf805a20de3539f66c85b821fef45baff42d32f45a92a9e0b4aa2476c33ec6d": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x06146c35e7e025806e909bff59b6f979ce70a0361f4c21927654525e61e6fe94642c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc5", + "0x0402ff3d98d60879a35a5db7d2391babef2157d459d0d3fe39288673e1d095e872010100000000000000000000000000000000000000000000000000000000000000000001209b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + } + ], + "executionResults": [ + { + "l1DataFee": "0x11ecafbb16b", + "gas": 120644, + "failed": false, + "returnValue": "0000000000000000000000000000000000000000000000000000000000000001", + "from": { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2172, + "balance": "0x655cea7342d120ce11d", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "to": { + "address": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "poseidonCodeHash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "codeSize": 7677 + }, + "accountAfter": [ + { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2173, + "balance": "0x655cea732f2301fd6b2", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + { + "address": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "poseidonCodeHash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "codeSize": 7677 + }, + { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc77ff00b8b156", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + } + ], + "structLogs": [ + { + "pc": 0, + "op": "PUSH1", + "gas": 95884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2, + "op": "PUSH1", + "gas": 95881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4, + "op": "MSTORE", + "gas": 95878, + "gasCost": 12, + "depth": 1 + }, + { + "pc": 5, + "op": "CALLVALUE", + "gas": 95866, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6, + "op": "DUP1", + "gas": 95864, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7, + "op": "ISZERO", + "gas": 95861, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 8, + "op": "PUSH2", + "gas": 95858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 11, + "op": "JUMPI", + "gas": 95855, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 15, + "op": "JUMPDEST", + "gas": 95845, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 16, + "op": "POP", + "gas": 95844, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 17, + "op": "PUSH1", + "gas": 95842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 19, + "op": "CALLDATASIZE", + "gas": 95839, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 20, + "op": "LT", + "gas": 95837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 21, + "op": "PUSH2", + "gas": 95834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 24, + "op": "JUMPI", + "gas": 95831, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 25, + "op": "PUSH0", + "gas": 95821, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 26, + "op": "CALLDATALOAD", + "gas": 95819, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 27, + "op": "PUSH1", + "gas": 95816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 29, + "op": "SHR", + "gas": 95813, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 30, + "op": "DUP1", + "gas": 95810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 31, + "op": "PUSH4", + "gas": 95807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 36, + "op": "GT", + "gas": 95804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 37, + "op": "PUSH2", + "gas": 95801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 40, + "op": "JUMPI", + "gas": 95798, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 41, + "op": "DUP1", + "gas": 95788, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 42, + "op": "PUSH4", + "gas": 95785, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 47, + "op": "EQ", + "gas": 95782, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 48, + "op": "PUSH2", + "gas": 95779, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 51, + "op": "JUMPI", + "gas": 95776, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 52, + "op": "DUP1", + "gas": 95766, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 53, + "op": "PUSH4", + "gas": 95763, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 58, + "op": "EQ", + "gas": 95760, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 59, + "op": "PUSH2", + "gas": 95757, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 62, + "op": "JUMPI", + "gas": 95754, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 448, + "op": "JUMPDEST", + "gas": 95744, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 449, + "op": "PUSH2", + "gas": 95743, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 452, + "op": "PUSH1", + "gas": 95740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 454, + "op": "DUP1", + "gas": 95737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 455, + "op": "CALLDATASIZE", + "gas": 95734, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 456, + "op": "SUB", + "gas": 95732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 457, + "op": "DUP2", + "gas": 95729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 458, + "op": "ADD", + "gas": 95726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 459, + "op": "SWAP1", + "gas": 95723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 460, + "op": "PUSH2", + "gas": 95720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 463, + "op": "SWAP2", + "gas": 95717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 464, + "op": "SWAP1", + "gas": 95714, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 465, + "op": "PUSH2", + "gas": 95711, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 468, + "op": "JUMP", + "gas": 95708, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4758, + "op": "JUMPDEST", + "gas": 95700, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4759, + "op": "PUSH0", + "gas": 95699, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4760, + "op": "PUSH1", + "gas": 95697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4762, + "op": "DUP3", + "gas": 95694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4763, + "op": "DUP5", + "gas": 95691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4764, + "op": "SUB", + "gas": 95688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4765, + "op": "SLT", + "gas": 95685, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4766, + "op": "ISZERO", + "gas": 95682, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4767, + "op": "PUSH2", + "gas": 95679, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4770, + "op": "JUMPI", + "gas": 95676, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4779, + "op": "JUMPDEST", + "gas": 95666, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4780, + "op": "PUSH0", + "gas": 95665, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4781, + "op": "DUP3", + "gas": 95663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4782, + "op": "ADD", + "gas": 95660, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4783, + "op": "CALLDATALOAD", + "gas": 95657, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4784, + "op": "PUSH8", + "gas": 95654, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4793, + "op": "DUP2", + "gas": 95651, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4794, + "op": "GT", + "gas": 95648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4795, + "op": "ISZERO", + "gas": 95645, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4796, + "op": "PUSH2", + "gas": 95642, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4799, + "op": "JUMPI", + "gas": 95639, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4808, + "op": "JUMPDEST", + "gas": 95629, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4809, + "op": "PUSH2", + "gas": 95628, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4812, + "op": "DUP5", + "gas": 95625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4813, + "op": "DUP3", + "gas": 95622, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4814, + "op": "DUP6", + "gas": 95619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4815, + "op": "ADD", + "gas": 95616, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4816, + "op": "PUSH2", + "gas": 95613, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4819, + "op": "JUMP", + "gas": 95610, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4713, + "op": "JUMPDEST", + "gas": 95602, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4714, + "op": "PUSH0", + "gas": 95601, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4715, + "op": "DUP3", + "gas": 95599, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4716, + "op": "PUSH1", + "gas": 95596, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4718, + "op": "DUP4", + "gas": 95593, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4719, + "op": "ADD", + "gas": 95590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4720, + "op": "SLT", + "gas": 95587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4721, + "op": "PUSH2", + "gas": 95584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4724, + "op": "JUMPI", + "gas": 95581, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4733, + "op": "JUMPDEST", + "gas": 95571, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4734, + "op": "DUP2", + "gas": 95570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4735, + "op": "CALLDATALOAD", + "gas": 95567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4736, + "op": "PUSH2", + "gas": 95564, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4739, + "op": "DUP5", + "gas": 95561, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4740, + "op": "DUP3", + "gas": 95558, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4741, + "op": "PUSH1", + "gas": 95555, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4743, + "op": "DUP7", + "gas": 95552, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4744, + "op": "ADD", + "gas": 95549, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4745, + "op": "PUSH2", + "gas": 95546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4748, + "op": "JUMP", + "gas": 95543, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4648, + "op": "JUMPDEST", + "gas": 95535, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4649, + "op": "PUSH0", + "gas": 95534, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4650, + "op": "PUSH2", + "gas": 95532, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4653, + "op": "PUSH2", + "gas": 95529, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4656, + "op": "DUP5", + "gas": 95526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4657, + "op": "PUSH2", + "gas": 95523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4660, + "op": "JUMP", + "gas": 95520, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4586, + "op": "JUMPDEST", + "gas": 95512, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4587, + "op": "PUSH0", + "gas": 95511, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4588, + "op": "PUSH8", + "gas": 95509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4597, + "op": "DUP3", + "gas": 95506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4598, + "op": "GT", + "gas": 95503, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4599, + "op": "ISZERO", + "gas": 95500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4600, + "op": "PUSH2", + "gas": 95497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4603, + "op": "JUMPI", + "gas": 95494, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4612, + "op": "JUMPDEST", + "gas": 95484, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4613, + "op": "PUSH2", + "gas": 95483, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4616, + "op": "DUP3", + "gas": 95480, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4617, + "op": "PUSH2", + "gas": 95477, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4620, + "op": "JUMP", + "gas": 95474, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 95466, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 95465, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 95463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 95460, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 95457, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 95454, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 95451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 95448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 95445, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 95442, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 95440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 95437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 95434, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 95432, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4621, + "op": "JUMPDEST", + "gas": 95424, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4622, + "op": "SWAP1", + "gas": 95423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4623, + "op": "POP", + "gas": 95420, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4624, + "op": "PUSH1", + "gas": 95418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4626, + "op": "DUP2", + "gas": 95415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4627, + "op": "ADD", + "gas": 95412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4628, + "op": "SWAP1", + "gas": 95409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4629, + "op": "POP", + "gas": 95406, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4630, + "op": "SWAP2", + "gas": 95404, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4631, + "op": "SWAP1", + "gas": 95401, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4632, + "op": "POP", + "gas": 95398, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4633, + "op": "JUMP", + "gas": 95396, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4661, + "op": "JUMPDEST", + "gas": 95388, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4662, + "op": "PUSH2", + "gas": 95387, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4665, + "op": "JUMP", + "gas": 95384, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4560, + "op": "JUMPDEST", + "gas": 95376, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4561, + "op": "PUSH0", + "gas": 95375, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4562, + "op": "PUSH2", + "gas": 95373, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4565, + "op": "PUSH2", + "gas": 95370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4568, + "op": "JUMP", + "gas": 95367, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4425, + "op": "JUMPDEST", + "gas": 95359, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4426, + "op": "PUSH0", + "gas": 95358, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4427, + "op": "PUSH1", + "gas": 95356, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4429, + "op": "MLOAD", + "gas": 95353, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4430, + "op": "SWAP1", + "gas": 95350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4431, + "op": "POP", + "gas": 95347, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4432, + "op": "SWAP1", + "gas": 95345, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4433, + "op": "JUMP", + "gas": 95342, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4569, + "op": "JUMPDEST", + "gas": 95334, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4570, + "op": "SWAP1", + "gas": 95333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4571, + "op": "POP", + "gas": 95330, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4572, + "op": "PUSH2", + "gas": 95328, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4575, + "op": "DUP3", + "gas": 95325, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4576, + "op": "DUP3", + "gas": 95322, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4577, + "op": "PUSH2", + "gas": 95319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4580, + "op": "JUMP", + "gas": 95316, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4511, + "op": "JUMPDEST", + "gas": 95308, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4512, + "op": "PUSH2", + "gas": 95307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4515, + "op": "DUP3", + "gas": 95304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4516, + "op": "PUSH2", + "gas": 95301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4519, + "op": "JUMP", + "gas": 95298, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 95290, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 95289, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 95287, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 95284, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 95281, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 95278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 95275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 95272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 95269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 95266, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 95264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 95261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 95258, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 95256, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4520, + "op": "JUMPDEST", + "gas": 95248, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4521, + "op": "DUP2", + "gas": 95247, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4522, + "op": "ADD", + "gas": 95244, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4523, + "op": "DUP2", + "gas": 95241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4524, + "op": "DUP2", + "gas": 95238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4525, + "op": "LT", + "gas": 95235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4526, + "op": "PUSH8", + "gas": 95232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4535, + "op": "DUP3", + "gas": 95229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4536, + "op": "GT", + "gas": 95226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4537, + "op": "OR", + "gas": 95223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4538, + "op": "ISZERO", + "gas": 95220, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4539, + "op": "PUSH2", + "gas": 95217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4542, + "op": "JUMPI", + "gas": 95214, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4551, + "op": "JUMPDEST", + "gas": 95204, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4552, + "op": "DUP1", + "gas": 95203, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4553, + "op": "PUSH1", + "gas": 95200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4555, + "op": "MSTORE", + "gas": 95197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4556, + "op": "POP", + "gas": 95194, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4557, + "op": "POP", + "gas": 95192, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4558, + "op": "POP", + "gas": 95190, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4559, + "op": "JUMP", + "gas": 95188, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4581, + "op": "JUMPDEST", + "gas": 95180, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4582, + "op": "SWAP2", + "gas": 95179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4583, + "op": "SWAP1", + "gas": 95176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4584, + "op": "POP", + "gas": 95173, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4585, + "op": "JUMP", + "gas": 95171, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4666, + "op": "JUMPDEST", + "gas": 95163, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4667, + "op": "SWAP1", + "gas": 95162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4668, + "op": "POP", + "gas": 95159, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4669, + "op": "DUP3", + "gas": 95157, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4670, + "op": "DUP2", + "gas": 95154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4671, + "op": "MSTORE", + "gas": 95151, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4672, + "op": "PUSH1", + "gas": 95142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4674, + "op": "DUP2", + "gas": 95139, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4675, + "op": "ADD", + "gas": 95136, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4676, + "op": "DUP5", + "gas": 95133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4677, + "op": "DUP5", + "gas": 95130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4678, + "op": "DUP5", + "gas": 95127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4679, + "op": "ADD", + "gas": 95124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4680, + "op": "GT", + "gas": 95121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4681, + "op": "ISZERO", + "gas": 95118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4682, + "op": "PUSH2", + "gas": 95115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4685, + "op": "JUMPI", + "gas": 95112, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4694, + "op": "JUMPDEST", + "gas": 95102, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4695, + "op": "PUSH2", + "gas": 95101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4698, + "op": "DUP5", + "gas": 95098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4699, + "op": "DUP3", + "gas": 95095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4700, + "op": "DUP6", + "gas": 95092, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4701, + "op": "PUSH2", + "gas": 95089, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4704, + "op": "JUMP", + "gas": 95086, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4634, + "op": "JUMPDEST", + "gas": 95078, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4635, + "op": "DUP3", + "gas": 95077, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4636, + "op": "DUP2", + "gas": 95074, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4637, + "op": "DUP4", + "gas": 95071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4638, + "op": "CALLDATACOPY", + "gas": 95068, + "gasCost": 45, + "depth": 1 + }, + { + "pc": 4639, + "op": "PUSH0", + "gas": 95023, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4640, + "op": "DUP4", + "gas": 95021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4641, + "op": "DUP4", + "gas": 95018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4642, + "op": "ADD", + "gas": 95015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4643, + "op": "MSTORE", + "gas": 95012, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 4644, + "op": "POP", + "gas": 95006, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4645, + "op": "POP", + "gas": 95004, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4646, + "op": "POP", + "gas": 95002, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4647, + "op": "JUMP", + "gas": 95000, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4705, + "op": "JUMPDEST", + "gas": 94992, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4706, + "op": "POP", + "gas": 94991, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4707, + "op": "SWAP4", + "gas": 94989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4708, + "op": "SWAP3", + "gas": 94986, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4709, + "op": "POP", + "gas": 94983, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4710, + "op": "POP", + "gas": 94981, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4711, + "op": "POP", + "gas": 94979, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4712, + "op": "JUMP", + "gas": 94977, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4749, + "op": "JUMPDEST", + "gas": 94969, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4750, + "op": "SWAP2", + "gas": 94968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4751, + "op": "POP", + "gas": 94965, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4752, + "op": "POP", + "gas": 94963, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4753, + "op": "SWAP3", + "gas": 94961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4754, + "op": "SWAP2", + "gas": 94958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4755, + "op": "POP", + "gas": 94955, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4756, + "op": "POP", + "gas": 94953, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4757, + "op": "JUMP", + "gas": 94951, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4820, + "op": "JUMPDEST", + "gas": 94943, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4821, + "op": "SWAP2", + "gas": 94942, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4822, + "op": "POP", + "gas": 94939, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4823, + "op": "POP", + "gas": 94937, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4824, + "op": "SWAP3", + "gas": 94935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4825, + "op": "SWAP2", + "gas": 94932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4826, + "op": "POP", + "gas": 94929, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4827, + "op": "POP", + "gas": 94927, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4828, + "op": "JUMP", + "gas": 94925, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 469, + "op": "JUMPDEST", + "gas": 94917, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 470, + "op": "PUSH2", + "gas": 94916, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 473, + "op": "JUMP", + "gas": 94913, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2240, + "op": "JUMPDEST", + "gas": 94905, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2241, + "op": "PUSH0", + "gas": 94904, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2242, + "op": "PUSH1", + "gas": 94902, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2244, + "op": "DUP3", + "gas": 94899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2245, + "op": "MLOAD", + "gas": 94896, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2246, + "op": "EQ", + "gas": 94893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2247, + "op": "PUSH2", + "gas": 94890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2250, + "op": "JUMPI", + "gas": 94887, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2309, + "op": "JUMPDEST", + "gas": 94877, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2310, + "op": "PUSH0", + "gas": 94876, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2311, + "op": "PUSH1", + "gas": 94874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2313, + "op": "MLOAD", + "gas": 94871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2314, + "op": "DUP1", + "gas": 94868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2315, + "op": "PUSH1", + "gas": 94865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2317, + "op": "ADD", + "gas": 94862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2318, + "op": "PUSH1", + "gas": 94859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2320, + "op": "MSTORE", + "gas": 94856, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2321, + "op": "DUP1", + "gas": 94853, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2322, + "op": "PUSH1", + "gas": 94850, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2324, + "op": "DUP2", + "gas": 94847, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2325, + "op": "MSTORE", + "gas": 94844, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2326, + "op": "PUSH1", + "gas": 94841, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2328, + "op": "ADD", + "gas": 94838, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2329, + "op": "PUSH32", + "gas": 94835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2362, + "op": "DUP2", + "gas": 94832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2363, + "op": "MSTORE", + "gas": 94829, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 2364, + "op": "POP", + "gas": 94823, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2365, + "op": "SWAP1", + "gas": 94821, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2366, + "op": "POP", + "gas": 94818, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2367, + "op": "PUSH0", + "gas": 94816, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2368, + "op": "DUP1", + "gas": 94814, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2369, + "op": "PUSH1", + "gas": 94811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2371, + "op": "PUSH20", + "gas": 94808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2392, + "op": "AND", + "gas": 94805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2393, + "op": "DUP6", + "gas": 94802, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2394, + "op": "PUSH1", + "gas": 94799, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2396, + "op": "MLOAD", + "gas": 94796, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2397, + "op": "PUSH2", + "gas": 94793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2400, + "op": "SWAP2", + "gas": 94790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2401, + "op": "SWAP1", + "gas": 94787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2402, + "op": "PUSH2", + "gas": 94784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2405, + "op": "JUMP", + "gas": 94781, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5644, + "op": "JUMPDEST", + "gas": 94773, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5645, + "op": "PUSH0", + "gas": 94772, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5646, + "op": "PUSH2", + "gas": 94770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5649, + "op": "DUP3", + "gas": 94767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5650, + "op": "DUP5", + "gas": 94764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5651, + "op": "PUSH2", + "gas": 94761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5654, + "op": "JUMP", + "gas": 94758, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5596, + "op": "JUMPDEST", + "gas": 94750, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5597, + "op": "PUSH0", + "gas": 94749, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5598, + "op": "PUSH2", + "gas": 94747, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5601, + "op": "DUP3", + "gas": 94744, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5602, + "op": "PUSH2", + "gas": 94741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5605, + "op": "JUMP", + "gas": 94738, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 94730, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 94729, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 94727, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 94724, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 94721, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 94718, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 94716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 94713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 94710, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 94708, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5606, + "op": "JUMPDEST", + "gas": 94700, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5607, + "op": "PUSH2", + "gas": 94699, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5610, + "op": "DUP2", + "gas": 94696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5611, + "op": "DUP6", + "gas": 94693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5612, + "op": "PUSH2", + "gas": 94690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5615, + "op": "JUMP", + "gas": 94687, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5586, + "op": "JUMPDEST", + "gas": 94679, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5587, + "op": "PUSH0", + "gas": 94678, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5588, + "op": "DUP2", + "gas": 94676, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5589, + "op": "SWAP1", + "gas": 94673, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5590, + "op": "POP", + "gas": 94670, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5591, + "op": "SWAP3", + "gas": 94668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5592, + "op": "SWAP2", + "gas": 94665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5593, + "op": "POP", + "gas": 94662, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5594, + "op": "POP", + "gas": 94660, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5595, + "op": "JUMP", + "gas": 94658, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5616, + "op": "JUMPDEST", + "gas": 94650, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5617, + "op": "SWAP4", + "gas": 94649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5618, + "op": "POP", + "gas": 94646, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5619, + "op": "PUSH2", + "gas": 94644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5622, + "op": "DUP2", + "gas": 94641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5623, + "op": "DUP6", + "gas": 94638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5624, + "op": "PUSH1", + "gas": 94635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5626, + "op": "DUP7", + "gas": 94632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5627, + "op": "ADD", + "gas": 94629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5628, + "op": "PUSH2", + "gas": 94626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5631, + "op": "JUMP", + "gas": 94623, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 94615, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 94614, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 94611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 94608, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 94605, + "gasCost": 45, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 94560, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 94558, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 94555, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 94552, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 94549, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 94543, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 94541, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 94539, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 94537, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5632, + "op": "JUMPDEST", + "gas": 94529, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5633, + "op": "DUP1", + "gas": 94528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5634, + "op": "DUP5", + "gas": 94525, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5635, + "op": "ADD", + "gas": 94522, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5636, + "op": "SWAP2", + "gas": 94519, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5637, + "op": "POP", + "gas": 94516, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5638, + "op": "POP", + "gas": 94514, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5639, + "op": "SWAP3", + "gas": 94512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5640, + "op": "SWAP2", + "gas": 94509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5641, + "op": "POP", + "gas": 94506, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5642, + "op": "POP", + "gas": 94504, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5643, + "op": "JUMP", + "gas": 94502, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5655, + "op": "JUMPDEST", + "gas": 94494, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5656, + "op": "SWAP2", + "gas": 94493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5657, + "op": "POP", + "gas": 94490, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5658, + "op": "DUP2", + "gas": 94488, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5659, + "op": "SWAP1", + "gas": 94485, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5660, + "op": "POP", + "gas": 94482, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5661, + "op": "SWAP3", + "gas": 94480, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5662, + "op": "SWAP2", + "gas": 94477, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5663, + "op": "POP", + "gas": 94474, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5664, + "op": "POP", + "gas": 94472, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5665, + "op": "JUMP", + "gas": 94470, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2406, + "op": "JUMPDEST", + "gas": 94462, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2407, + "op": "PUSH0", + "gas": 94461, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2408, + "op": "PUSH1", + "gas": 94459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2410, + "op": "MLOAD", + "gas": 94456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2411, + "op": "DUP1", + "gas": 94453, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2412, + "op": "DUP4", + "gas": 94450, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2413, + "op": "SUB", + "gas": 94447, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2414, + "op": "DUP2", + "gas": 94444, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2415, + "op": "DUP6", + "gas": 94441, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2416, + "op": "GAS", + "gas": 94438, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2417, + "op": "STATICCALL", + "gas": 94436, + "gasCost": 92962, + "depth": 1 + }, + { + "pc": 2418, + "op": "SWAP2", + "gas": 94324, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2419, + "op": "POP", + "gas": 94321, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2420, + "op": "POP", + "gas": 94319, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2421, + "op": "RETURNDATASIZE", + "gas": 94317, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2422, + "op": "DUP1", + "gas": 94315, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2423, + "op": "PUSH0", + "gas": 94312, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2424, + "op": "DUP2", + "gas": 94310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2425, + "op": "EQ", + "gas": 94307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2426, + "op": "PUSH2", + "gas": 94304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2429, + "op": "JUMPI", + "gas": 94301, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2430, + "op": "PUSH1", + "gas": 94291, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2432, + "op": "MLOAD", + "gas": 94288, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2433, + "op": "SWAP2", + "gas": 94285, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2434, + "op": "POP", + "gas": 94282, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2435, + "op": "PUSH1", + "gas": 94280, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2437, + "op": "NOT", + "gas": 94277, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2438, + "op": "PUSH1", + "gas": 94274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2440, + "op": "RETURNDATASIZE", + "gas": 94271, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2441, + "op": "ADD", + "gas": 94269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2442, + "op": "AND", + "gas": 94266, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2443, + "op": "DUP3", + "gas": 94263, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2444, + "op": "ADD", + "gas": 94260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2445, + "op": "PUSH1", + "gas": 94257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2447, + "op": "MSTORE", + "gas": 94254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2448, + "op": "RETURNDATASIZE", + "gas": 94251, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2449, + "op": "DUP3", + "gas": 94249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2450, + "op": "MSTORE", + "gas": 94246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2451, + "op": "RETURNDATASIZE", + "gas": 94243, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2452, + "op": "PUSH0", + "gas": 94241, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2453, + "op": "PUSH1", + "gas": 94239, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2455, + "op": "DUP5", + "gas": 94236, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2456, + "op": "ADD", + "gas": 94233, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2457, + "op": "RETURNDATACOPY", + "gas": 94230, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 2458, + "op": "PUSH2", + "gas": 94221, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2461, + "op": "JUMP", + "gas": 94218, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2467, + "op": "JUMPDEST", + "gas": 94210, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2468, + "op": "POP", + "gas": 94209, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2469, + "op": "SWAP2", + "gas": 94207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2470, + "op": "POP", + "gas": 94204, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2471, + "op": "SWAP2", + "gas": 94202, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2472, + "op": "POP", + "gas": 94199, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2473, + "op": "DUP2", + "gas": 94197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2474, + "op": "PUSH0", + "gas": 94194, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2475, + "op": "DUP5", + "gas": 94192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2476, + "op": "PUSH1", + "gas": 94189, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2478, + "op": "MLOAD", + "gas": 94186, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2479, + "op": "PUSH2", + "gas": 94183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2482, + "op": "SWAP2", + "gas": 94180, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2483, + "op": "SWAP1", + "gas": 94177, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2484, + "op": "PUSH2", + "gas": 94174, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2487, + "op": "JUMP", + "gas": 94171, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5666, + "op": "JUMPDEST", + "gas": 94163, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5667, + "op": "PUSH0", + "gas": 94162, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5668, + "op": "PUSH2", + "gas": 94160, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5671, + "op": "DUP3", + "gas": 94157, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5672, + "op": "DUP5", + "gas": 94154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5673, + "op": "PUSH2", + "gas": 94151, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5676, + "op": "JUMP", + "gas": 94148, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 94140, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 94139, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 94137, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 94134, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 94131, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 94128, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 94120, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 94119, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 94117, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 94114, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 94111, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 94108, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 94106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 94103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 94100, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 94098, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 94090, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 94089, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 94086, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 94083, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 94080, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 94077, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 94069, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 94068, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 94066, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 94063, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 94060, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 94058, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 94055, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 94052, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 94050, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 94048, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 94040, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 94039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 94036, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 94034, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 94031, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 94028, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 94025, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 94022, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 94019, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 94016, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 94013, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 94005, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 94004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 94001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 93998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 93995, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 93989, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 93987, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 93984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 93981, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 93978, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 93975, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 93973, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 93971, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 93969, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 93961, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 93960, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 93957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 93954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 93951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 93948, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 93946, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 93944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 93941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 93938, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 93936, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 93934, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5677, + "op": "JUMPDEST", + "gas": 93926, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5678, + "op": "SWAP2", + "gas": 93925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5679, + "op": "POP", + "gas": 93922, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5680, + "op": "DUP2", + "gas": 93920, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5681, + "op": "SWAP1", + "gas": 93917, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5682, + "op": "POP", + "gas": 93914, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5683, + "op": "SWAP3", + "gas": 93912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5684, + "op": "SWAP2", + "gas": 93909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5685, + "op": "POP", + "gas": 93906, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5686, + "op": "POP", + "gas": 93904, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5687, + "op": "JUMP", + "gas": 93902, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2488, + "op": "JUMPDEST", + "gas": 93894, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2489, + "op": "SWAP1", + "gas": 93893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2490, + "op": "DUP2", + "gas": 93890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2491, + "op": "MSTORE", + "gas": 93887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2492, + "op": "PUSH1", + "gas": 93884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2494, + "op": "ADD", + "gas": 93881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2495, + "op": "PUSH1", + "gas": 93878, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2497, + "op": "MLOAD", + "gas": 93875, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2498, + "op": "DUP1", + "gas": 93872, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2499, + "op": "SWAP2", + "gas": 93869, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2500, + "op": "SUB", + "gas": 93866, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2501, + "op": "SWAP1", + "gas": 93863, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2502, + "op": "SHA3", + "gas": 93860, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 2503, + "op": "PUSH0", + "gas": 93818, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2504, + "op": "PUSH2", + "gas": 93816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2507, + "op": "EXP", + "gas": 93813, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2508, + "op": "DUP2", + "gas": 93803, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2509, + "op": "SLOAD", + "gas": 93800, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 2510, + "op": "DUP2", + "gas": 91700, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2511, + "op": "PUSH1", + "gas": 91697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2513, + "op": "MUL", + "gas": 91694, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 2514, + "op": "NOT", + "gas": 91689, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2515, + "op": "AND", + "gas": 91686, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2516, + "op": "SWAP1", + "gas": 91683, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2517, + "op": "DUP4", + "gas": 91680, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2518, + "op": "ISZERO", + "gas": 91677, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2519, + "op": "ISZERO", + "gas": 91674, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2520, + "op": "MUL", + "gas": 91671, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 2521, + "op": "OR", + "gas": 91666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2522, + "op": "SWAP1", + "gas": 91663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2523, + "op": "SSTORE", + "gas": 91660, + "gasCost": 20000, + "depth": 1 + }, + { + "pc": 2524, + "op": "POP", + "gas": 71660, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2525, + "op": "DUP1", + "gas": 71658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2526, + "op": "PUSH1", + "gas": 71655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2528, + "op": "DUP5", + "gas": 71652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2529, + "op": "PUSH1", + "gas": 71649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2531, + "op": "MLOAD", + "gas": 71646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2532, + "op": "PUSH2", + "gas": 71643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2535, + "op": "SWAP2", + "gas": 71640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2536, + "op": "SWAP1", + "gas": 71637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2537, + "op": "PUSH2", + "gas": 71634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2540, + "op": "JUMP", + "gas": 71631, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5666, + "op": "JUMPDEST", + "gas": 71623, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5667, + "op": "PUSH0", + "gas": 71622, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5668, + "op": "PUSH2", + "gas": 71620, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5671, + "op": "DUP3", + "gas": 71617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5672, + "op": "DUP5", + "gas": 71614, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5673, + "op": "PUSH2", + "gas": 71611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5676, + "op": "JUMP", + "gas": 71608, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 71600, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 71599, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 71597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 71594, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 71591, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 71588, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 71580, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 71579, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 71577, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 71574, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 71571, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 71568, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 71566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 71563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 71560, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 71558, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 71550, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 71549, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 71546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 71543, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 71540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 71537, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 71529, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 71528, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 71526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 71523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 71520, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 71518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 71515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 71512, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 71510, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 71508, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 71500, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 71499, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 71496, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 71494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 71491, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 71488, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 71485, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 71482, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 71479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 71476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 71473, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 71465, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 71464, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 71461, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 71458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 71455, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 71449, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 71447, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 71444, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 71441, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 71438, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 71435, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 71433, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 71431, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 71429, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 71421, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 71420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 71417, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 71414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 71411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 71408, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 71406, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 71404, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 71401, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 71398, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 71396, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 71394, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5677, + "op": "JUMPDEST", + "gas": 71386, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5678, + "op": "SWAP2", + "gas": 71385, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5679, + "op": "POP", + "gas": 71382, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5680, + "op": "DUP2", + "gas": 71380, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5681, + "op": "SWAP1", + "gas": 71377, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5682, + "op": "POP", + "gas": 71374, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5683, + "op": "SWAP3", + "gas": 71372, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5684, + "op": "SWAP2", + "gas": 71369, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5685, + "op": "POP", + "gas": 71366, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5686, + "op": "POP", + "gas": 71364, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5687, + "op": "JUMP", + "gas": 71362, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2541, + "op": "JUMPDEST", + "gas": 71354, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2542, + "op": "SWAP1", + "gas": 71353, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2543, + "op": "DUP2", + "gas": 71350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2544, + "op": "MSTORE", + "gas": 71347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2545, + "op": "PUSH1", + "gas": 71344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2547, + "op": "ADD", + "gas": 71341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2548, + "op": "PUSH1", + "gas": 71338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2550, + "op": "MLOAD", + "gas": 71335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2551, + "op": "DUP1", + "gas": 71332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2552, + "op": "SWAP2", + "gas": 71329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2553, + "op": "SUB", + "gas": 71326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2554, + "op": "SWAP1", + "gas": 71323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2555, + "op": "SHA3", + "gas": 71320, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 2556, + "op": "SWAP1", + "gas": 71278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2557, + "op": "DUP2", + "gas": 71275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2558, + "op": "PUSH2", + "gas": 71272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2561, + "op": "SWAP2", + "gas": 71269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2562, + "op": "SWAP1", + "gas": 71266, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2563, + "op": "PUSH2", + "gas": 71263, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2566, + "op": "JUMP", + "gas": 71260, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6194, + "op": "JUMPDEST", + "gas": 71252, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6195, + "op": "PUSH2", + "gas": 71251, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6198, + "op": "DUP3", + "gas": 71248, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6199, + "op": "PUSH2", + "gas": 71245, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6202, + "op": "JUMP", + "gas": 71242, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 71234, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 71233, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 71231, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 71228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 71225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 71222, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 71220, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 71217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 71214, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 71212, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6203, + "op": "JUMPDEST", + "gas": 71204, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6204, + "op": "PUSH8", + "gas": 71203, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6213, + "op": "DUP2", + "gas": 71200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6214, + "op": "GT", + "gas": 71197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6215, + "op": "ISZERO", + "gas": 71194, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6216, + "op": "PUSH2", + "gas": 71191, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6219, + "op": "JUMPI", + "gas": 71188, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6228, + "op": "JUMPDEST", + "gas": 71178, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6229, + "op": "PUSH2", + "gas": 71177, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6232, + "op": "DUP3", + "gas": 71174, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6233, + "op": "SLOAD", + "gas": 71171, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 6234, + "op": "PUSH2", + "gas": 69071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6237, + "op": "JUMP", + "gas": 69068, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5733, + "op": "JUMPDEST", + "gas": 69060, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5734, + "op": "PUSH0", + "gas": 69059, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5735, + "op": "PUSH1", + "gas": 69057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5737, + "op": "DUP3", + "gas": 69054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5738, + "op": "DIV", + "gas": 69051, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 5739, + "op": "SWAP1", + "gas": 69046, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5740, + "op": "POP", + "gas": 69043, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5741, + "op": "PUSH1", + "gas": 69041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5743, + "op": "DUP3", + "gas": 69038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5744, + "op": "AND", + "gas": 69035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5745, + "op": "DUP1", + "gas": 69032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5746, + "op": "PUSH2", + "gas": 69029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5749, + "op": "JUMPI", + "gas": 69026, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5750, + "op": "PUSH1", + "gas": 69016, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5752, + "op": "DUP3", + "gas": 69013, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5753, + "op": "AND", + "gas": 69010, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5754, + "op": "SWAP2", + "gas": 69007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5755, + "op": "POP", + "gas": 69004, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5756, + "op": "JUMPDEST", + "gas": 69002, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5757, + "op": "PUSH1", + "gas": 69001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5759, + "op": "DUP3", + "gas": 68998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5760, + "op": "LT", + "gas": 68995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5761, + "op": "DUP2", + "gas": 68992, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5762, + "op": "SUB", + "gas": 68989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5763, + "op": "PUSH2", + "gas": 68986, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5766, + "op": "JUMPI", + "gas": 68983, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5775, + "op": "JUMPDEST", + "gas": 68973, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5776, + "op": "POP", + "gas": 68972, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5777, + "op": "SWAP2", + "gas": 68970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5778, + "op": "SWAP1", + "gas": 68967, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5779, + "op": "POP", + "gas": 68964, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5780, + "op": "JUMP", + "gas": 68962, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6238, + "op": "JUMPDEST", + "gas": 68954, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6239, + "op": "PUSH2", + "gas": 68953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6242, + "op": "DUP3", + "gas": 68950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6243, + "op": "DUP3", + "gas": 68947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6244, + "op": "DUP6", + "gas": 68944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6245, + "op": "PUSH2", + "gas": 68941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6248, + "op": "JUMP", + "gas": 68938, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6057, + "op": "JUMPDEST", + "gas": 68930, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6058, + "op": "PUSH1", + "gas": 68929, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6060, + "op": "DUP3", + "gas": 68926, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6061, + "op": "GT", + "gas": 68923, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6062, + "op": "ISZERO", + "gas": 68920, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6063, + "op": "PUSH2", + "gas": 68917, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6066, + "op": "JUMPI", + "gas": 68914, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6122, + "op": "JUMPDEST", + "gas": 68904, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6123, + "op": "POP", + "gas": 68903, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6124, + "op": "POP", + "gas": 68901, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6125, + "op": "POP", + "gas": 68899, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6126, + "op": "JUMP", + "gas": 68897, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6249, + "op": "JUMPDEST", + "gas": 68889, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6250, + "op": "PUSH0", + "gas": 68888, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6251, + "op": "PUSH1", + "gas": 68886, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6253, + "op": "SWAP1", + "gas": 68883, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6254, + "op": "POP", + "gas": 68880, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6255, + "op": "PUSH1", + "gas": 68878, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6257, + "op": "DUP4", + "gas": 68875, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6258, + "op": "GT", + "gas": 68872, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6259, + "op": "PUSH1", + "gas": 68869, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6261, + "op": "DUP2", + "gas": 68866, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6262, + "op": "EQ", + "gas": 68863, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6263, + "op": "PUSH2", + "gas": 68860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6266, + "op": "JUMPI", + "gas": 68857, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6298, + "op": "JUMPDEST", + "gas": 68847, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6299, + "op": "PUSH1", + "gas": 68846, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6301, + "op": "NOT", + "gas": 68843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6302, + "op": "DUP5", + "gas": 68840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6303, + "op": "AND", + "gas": 68837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6304, + "op": "PUSH2", + "gas": 68834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6307, + "op": "DUP7", + "gas": 68831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6308, + "op": "PUSH2", + "gas": 68828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6311, + "op": "JUMP", + "gas": 68825, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5781, + "op": "JUMPDEST", + "gas": 68817, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5782, + "op": "PUSH0", + "gas": 68816, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5783, + "op": "DUP2", + "gas": 68814, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5784, + "op": "SWAP1", + "gas": 68811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5785, + "op": "POP", + "gas": 68808, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5786, + "op": "DUP2", + "gas": 68806, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5787, + "op": "PUSH0", + "gas": 68803, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5788, + "op": "MSTORE", + "gas": 68801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5789, + "op": "PUSH1", + "gas": 68798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5791, + "op": "PUSH0", + "gas": 68795, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5792, + "op": "SHA3", + "gas": 68793, + "gasCost": 36, + "depth": 1 + }, + { + "pc": 5793, + "op": "SWAP1", + "gas": 68757, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5794, + "op": "POP", + "gas": 68754, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5795, + "op": "SWAP2", + "gas": 68752, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5796, + "op": "SWAP1", + "gas": 68749, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5797, + "op": "POP", + "gas": 68746, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5798, + "op": "JUMP", + "gas": 68744, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6312, + "op": "JUMPDEST", + "gas": 68736, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6313, + "op": "PUSH0", + "gas": 68735, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6314, + "op": "JUMPDEST", + "gas": 68733, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6315, + "op": "DUP3", + "gas": 68732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 68729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "LT", + "gas": 68726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "ISZERO", + "gas": 68723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "PUSH2", + "gas": 68720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6322, + "op": "JUMPI", + "gas": 68717, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6323, + "op": "DUP5", + "gas": 68707, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6324, + "op": "DUP10", + "gas": 68704, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6325, + "op": "ADD", + "gas": 68701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6326, + "op": "MLOAD", + "gas": 68698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6327, + "op": "DUP3", + "gas": 68695, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6328, + "op": "SSTORE", + "gas": 68692, + "gasCost": 22100, + "depth": 1 + }, + { + "pc": 6329, + "op": "PUSH1", + "gas": 46592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6331, + "op": "DUP3", + "gas": 46589, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6332, + "op": "ADD", + "gas": 46586, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6333, + "op": "SWAP2", + "gas": 46583, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6334, + "op": "POP", + "gas": 46580, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6335, + "op": "PUSH1", + "gas": 46578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6337, + "op": "DUP6", + "gas": 46575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6338, + "op": "ADD", + "gas": 46572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6339, + "op": "SWAP5", + "gas": 46569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6340, + "op": "POP", + "gas": 46566, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6341, + "op": "PUSH1", + "gas": 46564, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6343, + "op": "DUP2", + "gas": 46561, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6344, + "op": "ADD", + "gas": 46558, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6345, + "op": "SWAP1", + "gas": 46555, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6346, + "op": "POP", + "gas": 46552, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6347, + "op": "PUSH2", + "gas": 46550, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6350, + "op": "JUMP", + "gas": 46547, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6314, + "op": "JUMPDEST", + "gas": 46539, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6315, + "op": "DUP3", + "gas": 46538, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 46535, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "LT", + "gas": 46532, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "ISZERO", + "gas": 46529, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "PUSH2", + "gas": 46526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6322, + "op": "JUMPI", + "gas": 46523, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6323, + "op": "DUP5", + "gas": 46513, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6324, + "op": "DUP10", + "gas": 46510, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6325, + "op": "ADD", + "gas": 46507, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6326, + "op": "MLOAD", + "gas": 46504, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6327, + "op": "DUP3", + "gas": 46501, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6328, + "op": "SSTORE", + "gas": 46498, + "gasCost": 22100, + "depth": 1 + }, + { + "pc": 6329, + "op": "PUSH1", + "gas": 24398, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6331, + "op": "DUP3", + "gas": 24395, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6332, + "op": "ADD", + "gas": 24392, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6333, + "op": "SWAP2", + "gas": 24389, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6334, + "op": "POP", + "gas": 24386, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6335, + "op": "PUSH1", + "gas": 24384, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6337, + "op": "DUP6", + "gas": 24381, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6338, + "op": "ADD", + "gas": 24378, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6339, + "op": "SWAP5", + "gas": 24375, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6340, + "op": "POP", + "gas": 24372, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6341, + "op": "PUSH1", + "gas": 24370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6343, + "op": "DUP2", + "gas": 24367, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6344, + "op": "ADD", + "gas": 24364, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6345, + "op": "SWAP1", + "gas": 24361, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6346, + "op": "POP", + "gas": 24358, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6347, + "op": "PUSH2", + "gas": 24356, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6350, + "op": "JUMP", + "gas": 24353, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6314, + "op": "JUMPDEST", + "gas": 24345, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6315, + "op": "DUP3", + "gas": 24344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 24341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "LT", + "gas": 24338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "ISZERO", + "gas": 24335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "PUSH2", + "gas": 24332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6322, + "op": "JUMPI", + "gas": 24329, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6351, + "op": "JUMPDEST", + "gas": 24319, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6352, + "op": "DUP7", + "gas": 24318, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6353, + "op": "DUP4", + "gas": 24315, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6354, + "op": "LT", + "gas": 24312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6355, + "op": "ISZERO", + "gas": 24309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6356, + "op": "PUSH2", + "gas": 24306, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6359, + "op": "JUMPI", + "gas": 24303, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6380, + "op": "JUMPDEST", + "gas": 24293, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6381, + "op": "PUSH1", + "gas": 24292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6383, + "op": "PUSH1", + "gas": 24289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6385, + "op": "DUP9", + "gas": 24286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6386, + "op": "MUL", + "gas": 24283, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6387, + "op": "ADD", + "gas": 24278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6388, + "op": "DUP9", + "gas": 24275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6389, + "op": "SSTORE", + "gas": 24272, + "gasCost": 20000, + "depth": 1 + }, + { + "pc": 6390, + "op": "POP", + "gas": 4272, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6391, + "op": "POP", + "gas": 4270, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6392, + "op": "POP", + "gas": 4268, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6393, + "op": "JUMPDEST", + "gas": 4266, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6394, + "op": "POP", + "gas": 4265, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6395, + "op": "POP", + "gas": 4263, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6396, + "op": "POP", + "gas": 4261, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6397, + "op": "POP", + "gas": 4259, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6398, + "op": "POP", + "gas": 4257, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6399, + "op": "POP", + "gas": 4255, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6400, + "op": "JUMP", + "gas": 4253, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2567, + "op": "JUMPDEST", + "gas": 4245, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2568, + "op": "POP", + "gas": 4244, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2569, + "op": "PUSH32", + "gas": 4242, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2602, + "op": "DUP4", + "gas": 4239, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2603, + "op": "DUP4", + "gas": 4236, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2604, + "op": "DUP4", + "gas": 4233, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2605, + "op": "TIMESTAMP", + "gas": 4230, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2606, + "op": "PUSH1", + "gas": 4228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2608, + "op": "MLOAD", + "gas": 4225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2609, + "op": "PUSH2", + "gas": 4222, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2612, + "op": "SWAP5", + "gas": 4219, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2613, + "op": "SWAP4", + "gas": 4216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2614, + "op": "SWAP3", + "gas": 4213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2615, + "op": "SWAP2", + "gas": 4210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2616, + "op": "SWAP1", + "gas": 4207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2617, + "op": "PUSH2", + "gas": 4204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2620, + "op": "JUMP", + "gas": 4201, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6488, + "op": "JUMPDEST", + "gas": 4193, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6489, + "op": "PUSH0", + "gas": 4192, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6490, + "op": "PUSH1", + "gas": 4190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6492, + "op": "DUP3", + "gas": 4187, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6493, + "op": "ADD", + "gas": 4184, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6494, + "op": "SWAP1", + "gas": 4181, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6495, + "op": "POP", + "gas": 4178, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6496, + "op": "DUP2", + "gas": 4176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6497, + "op": "DUP2", + "gas": 4173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6498, + "op": "SUB", + "gas": 4170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6499, + "op": "PUSH0", + "gas": 4167, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6500, + "op": "DUP4", + "gas": 4165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6501, + "op": "ADD", + "gas": 4162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6502, + "op": "MSTORE", + "gas": 4159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6503, + "op": "PUSH2", + "gas": 4156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6506, + "op": "DUP2", + "gas": 4153, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6507, + "op": "DUP8", + "gas": 4150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6508, + "op": "PUSH2", + "gas": 4147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6511, + "op": "JUMP", + "gas": 4144, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6417, + "op": "JUMPDEST", + "gas": 4136, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6418, + "op": "PUSH0", + "gas": 4135, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6419, + "op": "PUSH2", + "gas": 4133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6422, + "op": "DUP3", + "gas": 4130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6423, + "op": "PUSH2", + "gas": 4127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6426, + "op": "JUMP", + "gas": 4124, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 4116, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 4115, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 4113, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 4110, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 4107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 4104, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 4102, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 4099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 4096, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 4094, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6427, + "op": "JUMPDEST", + "gas": 4086, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6428, + "op": "PUSH2", + "gas": 4085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6431, + "op": "DUP2", + "gas": 4082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6432, + "op": "DUP6", + "gas": 4079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6433, + "op": "PUSH2", + "gas": 4076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6436, + "op": "JUMP", + "gas": 4073, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6401, + "op": "JUMPDEST", + "gas": 4065, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6402, + "op": "PUSH0", + "gas": 4064, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6403, + "op": "DUP3", + "gas": 4062, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6404, + "op": "DUP3", + "gas": 4059, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6405, + "op": "MSTORE", + "gas": 4056, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6406, + "op": "PUSH1", + "gas": 4053, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6408, + "op": "DUP3", + "gas": 4050, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6409, + "op": "ADD", + "gas": 4047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6410, + "op": "SWAP1", + "gas": 4044, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6411, + "op": "POP", + "gas": 4041, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6412, + "op": "SWAP3", + "gas": 4039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6413, + "op": "SWAP2", + "gas": 4036, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6414, + "op": "POP", + "gas": 4033, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6415, + "op": "POP", + "gas": 4031, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6416, + "op": "JUMP", + "gas": 4029, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6437, + "op": "JUMPDEST", + "gas": 4021, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6438, + "op": "SWAP4", + "gas": 4020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6439, + "op": "POP", + "gas": 4017, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6440, + "op": "PUSH2", + "gas": 4015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6443, + "op": "DUP2", + "gas": 4012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6444, + "op": "DUP6", + "gas": 4009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6445, + "op": "PUSH1", + "gas": 4006, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6447, + "op": "DUP7", + "gas": 4003, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6448, + "op": "ADD", + "gas": 4000, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6449, + "op": "PUSH2", + "gas": 3997, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6452, + "op": "JUMP", + "gas": 3994, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 3986, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 3985, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 3982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 3979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 3976, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 3966, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 3964, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 3961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 3958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 3955, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 3949, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 3947, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 3945, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 3943, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6453, + "op": "JUMPDEST", + "gas": 3935, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6454, + "op": "PUSH2", + "gas": 3934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6457, + "op": "DUP2", + "gas": 3931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6458, + "op": "PUSH2", + "gas": 3928, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6461, + "op": "JUMP", + "gas": 3925, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 3917, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 3916, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 3914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 3911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 3908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 3905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 3902, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 3899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 3896, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 3893, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 3891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 3888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 3885, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 3883, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6462, + "op": "JUMPDEST", + "gas": 3875, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6463, + "op": "DUP5", + "gas": 3874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6464, + "op": "ADD", + "gas": 3871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6465, + "op": "SWAP2", + "gas": 3868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6466, + "op": "POP", + "gas": 3865, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6467, + "op": "POP", + "gas": 3863, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6468, + "op": "SWAP3", + "gas": 3861, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6469, + "op": "SWAP2", + "gas": 3858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6470, + "op": "POP", + "gas": 3855, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6471, + "op": "POP", + "gas": 3853, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6472, + "op": "JUMP", + "gas": 3851, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6512, + "op": "JUMPDEST", + "gas": 3843, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6513, + "op": "SWAP1", + "gas": 3842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6514, + "op": "POP", + "gas": 3839, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6515, + "op": "PUSH2", + "gas": 3837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6518, + "op": "PUSH1", + "gas": 3834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6520, + "op": "DUP4", + "gas": 3831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6521, + "op": "ADD", + "gas": 3828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6522, + "op": "DUP7", + "gas": 3825, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6523, + "op": "PUSH2", + "gas": 3822, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6526, + "op": "JUMP", + "gas": 3819, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4840, + "op": "JUMPDEST", + "gas": 3811, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4841, + "op": "PUSH2", + "gas": 3810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4844, + "op": "DUP2", + "gas": 3807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4845, + "op": "PUSH2", + "gas": 3804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4848, + "op": "JUMP", + "gas": 3801, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4829, + "op": "JUMPDEST", + "gas": 3793, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4830, + "op": "PUSH0", + "gas": 3792, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4831, + "op": "DUP2", + "gas": 3790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4832, + "op": "ISZERO", + "gas": 3787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4833, + "op": "ISZERO", + "gas": 3784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4834, + "op": "SWAP1", + "gas": 3781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4835, + "op": "POP", + "gas": 3778, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4836, + "op": "SWAP2", + "gas": 3776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4837, + "op": "SWAP1", + "gas": 3773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4838, + "op": "POP", + "gas": 3770, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4839, + "op": "JUMP", + "gas": 3768, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4849, + "op": "JUMPDEST", + "gas": 3760, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4850, + "op": "DUP3", + "gas": 3759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4851, + "op": "MSTORE", + "gas": 3756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4852, + "op": "POP", + "gas": 3753, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4853, + "op": "POP", + "gas": 3751, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4854, + "op": "JUMP", + "gas": 3749, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6527, + "op": "JUMPDEST", + "gas": 3741, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6528, + "op": "DUP2", + "gas": 3740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6529, + "op": "DUP2", + "gas": 3737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6530, + "op": "SUB", + "gas": 3734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6531, + "op": "PUSH1", + "gas": 3731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6533, + "op": "DUP4", + "gas": 3728, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6534, + "op": "ADD", + "gas": 3725, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6535, + "op": "MSTORE", + "gas": 3722, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6536, + "op": "PUSH2", + "gas": 3719, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6539, + "op": "DUP2", + "gas": 3716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6540, + "op": "DUP6", + "gas": 3713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6541, + "op": "PUSH2", + "gas": 3710, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6544, + "op": "JUMP", + "gas": 3707, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5149, + "op": "JUMPDEST", + "gas": 3699, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5150, + "op": "PUSH0", + "gas": 3698, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5151, + "op": "PUSH2", + "gas": 3696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5154, + "op": "DUP3", + "gas": 3693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5155, + "op": "PUSH2", + "gas": 3690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5158, + "op": "JUMP", + "gas": 3687, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 3679, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 3678, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 3676, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 3673, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 3670, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 3667, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 3665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 3662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 3659, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 3657, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5159, + "op": "JUMPDEST", + "gas": 3649, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5160, + "op": "PUSH2", + "gas": 3648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5163, + "op": "DUP2", + "gas": 3645, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5164, + "op": "DUP6", + "gas": 3642, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5165, + "op": "PUSH2", + "gas": 3639, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5168, + "op": "JUMP", + "gas": 3636, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5119, + "op": "JUMPDEST", + "gas": 3628, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5120, + "op": "PUSH0", + "gas": 3627, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "DUP3", + "gas": 3625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5122, + "op": "DUP3", + "gas": 3622, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5123, + "op": "MSTORE", + "gas": 3619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5124, + "op": "PUSH1", + "gas": 3616, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5126, + "op": "DUP3", + "gas": 3613, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5127, + "op": "ADD", + "gas": 3610, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5128, + "op": "SWAP1", + "gas": 3607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5129, + "op": "POP", + "gas": 3604, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5130, + "op": "SWAP3", + "gas": 3602, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5131, + "op": "SWAP2", + "gas": 3599, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5132, + "op": "POP", + "gas": 3596, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5133, + "op": "POP", + "gas": 3594, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5134, + "op": "JUMP", + "gas": 3592, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5169, + "op": "JUMPDEST", + "gas": 3584, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5170, + "op": "SWAP4", + "gas": 3583, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5171, + "op": "POP", + "gas": 3580, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5172, + "op": "PUSH2", + "gas": 3578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5175, + "op": "DUP2", + "gas": 3575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5176, + "op": "DUP6", + "gas": 3572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5177, + "op": "PUSH1", + "gas": 3569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5179, + "op": "DUP7", + "gas": 3566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5180, + "op": "ADD", + "gas": 3563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5181, + "op": "PUSH2", + "gas": 3560, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5184, + "op": "JUMP", + "gas": 3557, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 3549, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 3548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 3545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 3542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 3539, + "gasCost": 15, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 3524, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 3522, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 3519, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 3516, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 3513, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 3507, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 3505, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 3503, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 3501, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5185, + "op": "JUMPDEST", + "gas": 3493, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5186, + "op": "PUSH2", + "gas": 3492, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5189, + "op": "DUP2", + "gas": 3489, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5190, + "op": "PUSH2", + "gas": 3486, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5193, + "op": "JUMP", + "gas": 3483, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 3475, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 3474, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 3472, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 3469, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 3466, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 3463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 3460, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 3457, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 3454, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 3451, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 3449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 3446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 3443, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 3441, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5194, + "op": "JUMPDEST", + "gas": 3433, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5195, + "op": "DUP5", + "gas": 3432, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5196, + "op": "ADD", + "gas": 3429, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5197, + "op": "SWAP2", + "gas": 3426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5198, + "op": "POP", + "gas": 3423, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5199, + "op": "POP", + "gas": 3421, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5200, + "op": "SWAP3", + "gas": 3419, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5201, + "op": "SWAP2", + "gas": 3416, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5202, + "op": "POP", + "gas": 3413, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5203, + "op": "POP", + "gas": 3411, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5204, + "op": "JUMP", + "gas": 3409, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6545, + "op": "JUMPDEST", + "gas": 3401, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6546, + "op": "SWAP1", + "gas": 3400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6547, + "op": "POP", + "gas": 3397, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6548, + "op": "PUSH2", + "gas": 3395, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6551, + "op": "PUSH1", + "gas": 3392, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6553, + "op": "DUP4", + "gas": 3389, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6554, + "op": "ADD", + "gas": 3386, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6555, + "op": "DUP5", + "gas": 3383, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6556, + "op": "PUSH2", + "gas": 3380, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6559, + "op": "JUMP", + "gas": 3377, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6473, + "op": "JUMPDEST", + "gas": 3369, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6474, + "op": "PUSH2", + "gas": 3368, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6477, + "op": "DUP2", + "gas": 3365, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6478, + "op": "PUSH2", + "gas": 3362, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6481, + "op": "JUMP", + "gas": 3359, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 3351, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 3350, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 3348, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 3345, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 3342, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 3340, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 3337, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 3334, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 3332, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6482, + "op": "JUMPDEST", + "gas": 3324, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6483, + "op": "DUP3", + "gas": 3323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6484, + "op": "MSTORE", + "gas": 3320, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6485, + "op": "POP", + "gas": 3317, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6486, + "op": "POP", + "gas": 3315, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6487, + "op": "JUMP", + "gas": 3313, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6560, + "op": "JUMPDEST", + "gas": 3305, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6561, + "op": "SWAP6", + "gas": 3304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6562, + "op": "SWAP5", + "gas": 3301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6563, + "op": "POP", + "gas": 3298, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6564, + "op": "POP", + "gas": 3296, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6565, + "op": "POP", + "gas": 3294, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6566, + "op": "POP", + "gas": 3292, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6567, + "op": "POP", + "gas": 3290, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6568, + "op": "JUMP", + "gas": 3288, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2621, + "op": "JUMPDEST", + "gas": 3280, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2622, + "op": "PUSH1", + "gas": 3279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2624, + "op": "MLOAD", + "gas": 3276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2625, + "op": "DUP1", + "gas": 3273, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2626, + "op": "SWAP2", + "gas": 3270, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2627, + "op": "SUB", + "gas": 3267, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2628, + "op": "SWAP1", + "gas": 3264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2629, + "op": "LOG1", + "gas": 3261, + "gasCost": 3054, + "depth": 1 + }, + { + "pc": 2630, + "op": "DUP2", + "gas": 207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2631, + "op": "SWAP4", + "gas": 204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2632, + "op": "POP", + "gas": 201, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2633, + "op": "POP", + "gas": 199, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2634, + "op": "POP", + "gas": 197, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2635, + "op": "POP", + "gas": 195, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2636, + "op": "SWAP2", + "gas": 193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2637, + "op": "SWAP1", + "gas": 190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2638, + "op": "POP", + "gas": 187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2639, + "op": "JUMP", + "gas": 185, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 474, + "op": "JUMPDEST", + "gas": 177, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 475, + "op": "PUSH1", + "gas": 176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 477, + "op": "MLOAD", + "gas": 173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 478, + "op": "PUSH2", + "gas": 170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 481, + "op": "SWAP2", + "gas": 167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 482, + "op": "SWAP1", + "gas": 164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 483, + "op": "PUSH2", + "gas": 161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 486, + "op": "JUMP", + "gas": 158, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4855, + "op": "JUMPDEST", + "gas": 150, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4856, + "op": "PUSH0", + "gas": 149, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4857, + "op": "PUSH1", + "gas": 147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4859, + "op": "DUP3", + "gas": 144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4860, + "op": "ADD", + "gas": 141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4861, + "op": "SWAP1", + "gas": 138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4862, + "op": "POP", + "gas": 135, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4863, + "op": "PUSH2", + "gas": 133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4866, + "op": "PUSH0", + "gas": 130, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4867, + "op": "DUP4", + "gas": 128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4868, + "op": "ADD", + "gas": 125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4869, + "op": "DUP5", + "gas": 122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4870, + "op": "PUSH2", + "gas": 119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4873, + "op": "JUMP", + "gas": 116, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4840, + "op": "JUMPDEST", + "gas": 108, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4841, + "op": "PUSH2", + "gas": 107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4844, + "op": "DUP2", + "gas": 104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4845, + "op": "PUSH2", + "gas": 101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4848, + "op": "JUMP", + "gas": 98, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4829, + "op": "JUMPDEST", + "gas": 90, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4830, + "op": "PUSH0", + "gas": 89, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4831, + "op": "DUP2", + "gas": 87, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4832, + "op": "ISZERO", + "gas": 84, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4833, + "op": "ISZERO", + "gas": 81, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4834, + "op": "SWAP1", + "gas": 78, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4835, + "op": "POP", + "gas": 75, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4836, + "op": "SWAP2", + "gas": 73, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4837, + "op": "SWAP1", + "gas": 70, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4838, + "op": "POP", + "gas": 67, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4839, + "op": "JUMP", + "gas": 65, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4849, + "op": "JUMPDEST", + "gas": 57, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4850, + "op": "DUP3", + "gas": 56, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4851, + "op": "MSTORE", + "gas": 53, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4852, + "op": "POP", + "gas": 50, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4853, + "op": "POP", + "gas": 48, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4854, + "op": "JUMP", + "gas": 46, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4874, + "op": "JUMPDEST", + "gas": 38, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4875, + "op": "SWAP3", + "gas": 37, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4876, + "op": "SWAP2", + "gas": 34, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4877, + "op": "POP", + "gas": 31, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4878, + "op": "POP", + "gas": 29, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4879, + "op": "JUMP", + "gas": 27, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 487, + "op": "JUMPDEST", + "gas": 19, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 488, + "op": "PUSH1", + "gas": 18, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 490, + "op": "MLOAD", + "gas": 15, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 491, + "op": "DUP1", + "gas": 12, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 492, + "op": "SWAP2", + "gas": 9, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 493, + "op": "SUB", + "gas": 6, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 494, + "op": "SWAP1", + "gas": 3, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 495, + "op": "RETURN", + "gas": 0, + "gasCost": 0, + "depth": 1 + } + ], + "callTrace": { + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "gas": "0x1d744", + "gasUsed": "0x1d744", + "to": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "input": "0x65207521000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000d50000000c0405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3010000000000000000000000", + "output": "0x0000000000000000000000000000000000000000000000000000000000000001", + "calls": [ + { + "from": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "gas": "0x16abe", + "gasUsed": "0xc", + "to": "0x0000000000000000000000000000000000000009", + "input": "0x0000000c0405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d301", + "output": "0x8d375849032957ad25d0f248e26a1bcf131913acc77570f1497082f8eff4db38a76e2d7f70cfcea3ad3c7a1a6f6c359c9c30269c55871b99e36ad0fa92d38ea4", + "type": "STATICCALL" + } + ], + "value": "0x0", + "type": "CALL" + } + } + ], + "withdraw_trie_root": "0xf15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67", + "sequencer_set_verify_hash": "0x72fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc", + "startL1QueueIndex": 1321206 + } + ] +] \ No newline at end of file diff --git a/prover/testdata/morph203/morph203_2_traces.json b/prover/testdata/morph203/morph203_2_traces.json new file mode 100644 index 000000000..2defeb832 --- /dev/null +++ b/prover/testdata/morph203/morph203_2_traces.json @@ -0,0 +1,36264 @@ +[ + [ + { + "chainID": 53077, + "version": "2.0.3-mainnet-0295a3d4", + "coinbase": { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc76c41ecba6eb", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "header": { + "parentHash": "0xa257a57e5627954ea6c30fbdea3e3e123f0a583117bc6b7b266d7bb50688c789", + "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", + "miner": "0x0000000000000000000000000000000000000000", + "stateRoot": "0x2ae6666bcca6b4e72819d44bba819a3f37f015d6e1df579f84847e3ee7c55f3e", + "transactionsRoot": "0xdc66dec828b8a3647eff0dd9bac69e1d49fd6b82e873bede14cf4746139d1d39", + "receiptsRoot": "0x8600a9c894480cc315dd955b184f88519b896d965047d9c57df37ca7d504f65d", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000004000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000", + "difficulty": "0x0", + "number": "0x7835e", + "gasLimit": "0x3b9aca00", + "gasUsed": "0xba75", + "timestamp": "0x67d39d1d", + "extraData": "0x", + "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce": "0x0000000000000000", + "nextL1MsgIndex": "0x1428f6", + "batchHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "baseFeePerGas": "0xf4240", + "withdrawalsRoot": null, + "blobGasUsed": null, + "excessBlobGas": null, + "parentBeaconBlockRoot": null, + "hash": "0xe79a40e93102c99e9ebbc1039287ea22cb961d206ca0e6a24e37b48db5a1b382" + }, + "transactions": [ + { + "type": 2, + "nonce": 2171, + "txHash": "0x611368a80e09e1757c3a0a83ff0fd4d1ee8d334d2b057a6dcde3818104ece991", + "gas": 47733, + "gasPrice": "0xf4240", + "gasTipCap": "0xf4240", + "gasFeeCap": "0xf4240", + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "to": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "chainId": "0xcf55", + "value": "0x0", + "data": "0x8a59e100000000000000000000000000000000000000000000000000000000000000002100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020", + "isCreate": false, + "accessList": [], + "v": "0x1", + "r": "0x38791437aaf398221dc1805ae0c1b0732b9b5c3e71bc12fc89478ff124b9c5b8", + "s": "0x23b651a5322d6a5b3bcc2bbff1182aa654c012d7db07c670a3d4d6d38ef3fa0c" + } + ], + "storageTrace": { + "rootBefore": "0x06282a9b276c3b80d658aca386f03e479d9379af169e73801488632461d86525", + "rootAfter": "0x2ae6666bcca6b4e72819d44bba819a3f37f015d6e1df579f84847e3ee7c55f3e", + "proofs": { + "0x0000000000000000000000000000000000000005": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x0913cda6990546bcfe657e6f672956af068da6968bb4b975b80be9ac7aeef1b5d4007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09166895fcb5d82b47166f169982c40ac0c1bee1419414f177d98f4512a9c1c33c27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada1c7272d5697c434772d0bd6d9049ae4ba2620b4b42c63ae354808d2424fea4d7", + "0x0927d8ff4b09dc5ad7a414888c9ee68196a82828caa585707a5e972df330b5bb052c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x09190cfd6ea7912a16ed2ad99711340a70adffb2bd8842804138ec723c9fe438e418d5d391b7f2efb7557005c87fef37214582276122cbd0af1070133de664cb3e", + "0x091694b71fe07c993ef52852b27e094f9d56011b834f924e927dcc3f5aa51e7209084d4051e708b7919b98df81b7696968b7a28fbda77437d1b1a12e7c14fb177e", + "0x070afaf06e78a0a851d39eaa8e78f751ef8c68e516fc3a49ec7718a27c79854e740ade78eb779a9b20cf13f1b3a14efcbbee188e0633ffe39b6200c71bea481e9e", + "0x070569a1a2a826ec12c94f8ab0b6e5df82c8e67e8656ab6cd3d4ec9e83378723f23063ca84d841dd2c50e7964a3bb0c59dddda1e6b48b01bc3f7c383fcbb78f47a", + "0x042460a40650996bacb71ac4198e8557b70b24b601a028ba8c0a51f90c530655f20508000000000000000000000000000000000000000000000000000000000000000000270000000000000000000000000000000000000000000000008c5a8729c8d2c5160000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420af826c8406ad443d3bd24bfa680ba5c8c434e727000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000001": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x0913cda6990546bcfe657e6f672956af068da6968bb4b975b80be9ac7aeef1b5d4007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09166895fcb5d82b47166f169982c40ac0c1bee1419414f177d98f4512a9c1c33c27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada1c7272d5697c434772d0bd6d9049ae4ba2620b4b42c63ae354808d2424fea4d7", + "0x092cc07548fafc69a4dc7cfa2a483453f9f9819d104ccc8452b044584316b2918a0b1550511655ecc100037fab01d02dc8afb8b117bedad7f9ff3900d0747d44a6", + "0x091e5bd0832fb5a9827c679c75db95f1a559a07972a60b9c51ec435ea0633394390febfd3ab5fff6718b8ec4122a449fb8320d7a813240d702a4fda781e0a9bdce", + "0x092b96c11dcd9903dd8dfbca4f5acaf64c98f7aa8d1908e90d22682169ff2ba88c1aba44333a24240b0ba627dceff3778abc51012b698672802aea6c8c26bbfe18", + "0x090df918b89bd13e0c0a0745ccee3ac8ba25569fa5ba386d501311f0bf98a643331a327742a33e16c8ac782d9cef4cb06d98b731e6ca13b0c5450951b020f9b0c6", + "0x0820f409300cb23fffe97841b4b70f4c160f90393f7d29ecb5d2dc25f15c89fb550000000000000000000000000000000000000000000000000000000000000000", + "0x061276876f7f3ac122c96a402a706e93a7da84ad82496958bf8cf8d2baefa8c02a20abfaf6bc20fadf9a7609c0562a0ff138977845b052cf9e5d4c52cb2adedbe3", + "0x0427cfcbd2fe87474008e199ef5bff09273803bbf38032c75a36a7726b3c88f8a205080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002b2d37d04a6c2068ba19a08e79f3eeabfc6d2d1d516fcd700d4c377b23f9fc3f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000001000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x530000000000000000000000000000000000000f": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01ad581a1042b4922b02ce33d3b31138e15619e8d8e8313634b1ca65ce05c09c5", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x092acea573988b3a33584f55cee3da7527b7ec93c39ee431d6a00e9e1c0908c32907d5d2c7ba73004c814f367fcfa9bbed0636535570c02819442719331f977f69", + "0x090e9d499bfcd7a95f27f1232e8299d71b9e312b56a5c2f96de6ba2114ce6427600bffa1d771c4f6eb4bbdc666b4ee82f7ea04a51f7c036d38e88ce7e9f7deb0d2", + "0x092e0e76440cf40d49e6a6441452c7ff3db1c5530a007c6d11b54c655302baa6a12719c9e93c1c4ab00f37d68d1fbde1ad2c4c0f540add6fc908b56c496d140ff6", + "0x082596dc85315e1b7b634ed1b19fd101397a8aaee2a296aca23e1f154d83bf2ca81d502de1ce7abdbf1e224e458bcbde4742e517dfc7ff124fca95bc7d6916a573", + "0x0418a86f98026d1a55f6fee616f04d51be16c033651ffaafb0514287ec067d04e805080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002d56fafe62ab5b6fed6b2a6cd3e6eaff4b96665a12fda3cb3fcd69f5e7bee95f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f8420530000000000000000000000000000000000000f000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000017": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01ad581a1042b4922b02ce33d3b31138e15619e8d8e8313634b1ca65ce05c09c5", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x0921db0def816c47288e31e114f2d320d1bef10a2ce0ed76f2333bfbaf4c9665df164af8117b30ef75c3a4e008ea19aceaa6e63940ecf5e5a545aab0906e772f19", + "0x09243159bed6b5236c01d76e3c7ce8656377ede3215a267875ebd69ecb83609c2f1d430d8e77abbe31d81de9fd34eb7963320d07e618379663173532df9fd64a45", + "0x0901b9f43d7930c744b2f5c270fc55ebc1dad912c53348dc7fc91c254d4f65dc731935412eb3f2d483f1fad4cda432ea52bf9a2fcc83bb4998daae1e3fcb942d70", + "0x090e532e6013b5c675cdd7dd5dbca734c748a7f04cbd659dd2ae0bc5eafa5970c91e3d73de759429994c0b1ca675ad7693042bdd444939eb4adbf7098f3863b137", + "0x091cf7b52fea8453a4ca0b91aa9982cfa67d70de187ba25db4a8f248026ca3e530001cfc254334d3a06381cc5cee1769ae6912ce781377cc01b9c6917605338915", + "0x07092aee158cd2b81331e1ce9909492eb4317b6c5bc4794d546b62069798d0b24428cd8e8880db728741786b4fa7256d94a30e266ca07390acd342670e53ccb6b9", + "0x060e3bf5a186646517ca6d50e9d232f03b095fcceb727e719819a496973c2a8cf81102b8f2eac7af07547b293c5389e362fced543befbe69dc6fa5ec89b7df96e3", + "0x041918c47a133f759975cc95c0dba82051d9b5cd65407e76ef1366a9deaa14f28005080000000000000000000000000000000000000000000000000aec00000000000000000000000000000000000000000000000000000000000000000000000000000000047815c1b6b86b3270e62056fbc5c2f5e6d06a5d3255217e122006dece0bb56544107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000017000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01ad581a1042b4922b02ce33d3b31138e15619e8d8e8313634b1ca65ce05c09c5", + "0x0901ae383d775a5593e8a9c58ec5e32d5b37296baa0363f05956ce31e20bf28f36268112f883b403649460fcc83503df9145f323a6488d8b711971175dce2cc736", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e262e14e3f0056e19b107589193778727daeb0d5d9c8b10a29357f63c6c7dfea7", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa149da17138d45d82642ef2f19d7e322443edf8f1f7f1d24a5fe1f91245f34b8c", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed92903528d5a66b9dd442a2cfcbc4535e8d308cb95fabc4e76cd70524c9c6962bd97", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e130284800c267d4af686a299278325b4273d027f79aca6ad797ebabd5344140af", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a018ddb987c4cb90005742aad2a4b732d585e30955c5e0fc624d61833ade15789", + "0x0700000000000000000000000000000000000000000000000000000000000000000501fdd23acb18cb7f4ec083ea002049715d1ad9c18a034d34699ff16dd72ffb", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d148fb17132574588883c9d57685157548d43848b8cf77a66e280936067de4cd8", + "0x062a1195cd1a7a66ccecf8f43d6f564b78a7ae943e8caa7c4f363558f4c8833d5104f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc759a36b47a6c0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x0913cda6990546bcfe657e6f672956af068da6968bb4b975b80be9ac7aeef1b5d4007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09166895fcb5d82b47166f169982c40ac0c1bee1419414f177d98f4512a9c1c33c27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada1c7272d5697c434772d0bd6d9049ae4ba2620b4b42c63ae354808d2424fea4d7", + "0x0927d8ff4b09dc5ad7a414888c9ee68196a82828caa585707a5e972df330b5bb052c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9018795bec0c9981dbbc5a6a61955f73bc49e9d9786d3b23f217eb2b98650857a0", + "0x0928dfb159dc353f8078c4363538a58a9fa9d7752e3fcf7d8ceddc08c11b51d15e19d66853551b5572832ff2b8fb72db53abe9fd30f56d6234918b51b1a50d3e75", + "0x0705f62a2631030f319cc83d3aed31907f893959137f58b48b7b3e8c22d877ea3716ef7145a610c21838e72d9d113e968ad41ab9c59e0a35633ddc5352d1867bd4", + "0x0802c74dd49b7efb1838742c4bd723baf03c7213fd6451541830a55b1a8a4b97f80000000000000000000000000000000000000000000000000000000000000000", + "0x08200b133820811eae273851524cd4b4286bfe2c1952baf7add3cea76fd28f55c30000000000000000000000000000000000000000000000000000000000000000", + "0x062dedb44952879016a484230de4935598f46859023d2b5c59b5839a54694766630e8e9abd7780da5da2ef86496348acf63857300969c2e704a31e7ea401be45f7", + "0x040dc14d1e73c0c578e5be438abfab5d1a47a0eef96e1d759f6997244869c1011205080000000000000000000000000000000000000000000000001dfd000000000000000100000000000000000000000000000000000000000000000000000000000000000f98ed2e0091c1dcd5e8881666d11fc23b8d3bff6db63078ff41db71965f5b6d04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd520f78ce1e2f0de8fd15ce6ac4ddec6982413fda499000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x0913cda6990546bcfe657e6f672956af068da6968bb4b975b80be9ac7aeef1b5d4007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09166895fcb5d82b47166f169982c40ac0c1bee1419414f177d98f4512a9c1c33c27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada1c7272d5697c434772d0bd6d9049ae4ba2620b4b42c63ae354808d2424fea4d7", + "0x0927d8ff4b09dc5ad7a414888c9ee68196a82828caa585707a5e972df330b5bb052c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9018795bec0c9981dbbc5a6a61955f73bc49e9d9786d3b23f217eb2b98650857a0", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf2a484c3cc96118da404c4bdacd6e54885004bf1e0f2e843a0906bd7746eb28fe", + "0x08072450f3306a3ade52423c5f81c5d642059471e88bf34e216db9a85674fcca4709b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x081b6f545a56732a0020ec7d063ae5badc0ef623d3c193d216617f7e00c54a23f90000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000abf9d55edf227f5c49532981f6e65d4f16006060d37ddad2c2e431f1abef30b", + "0x0600899d662ee64d410fa88a307586eac52cc30391b62752fd997423c122cf0c181dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d205080000000000000000000000000000000000000000000000000000000000000000087b000000000000000000000000000000000000000000000655cea73556fa240d9c0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0x5300000000000000000000000000000000000001": { + "0x0000000000000000000000000000000000000000000000000000000000000021": [ + "0x09185c96062cbc2b564296e9e1bce3354dbcbf9f5879fd062d5b50bb358f81517e2a2dbce5edb6723342643101ac68123f3790ae822b572ec8bbd69da035c7b935", + "0x092d047e244b411ce9155f14462cfb81958ef4b4c2a08fc3fd4189484a8b7711a40462e3566daed4615c6e51a0e598dfb9a7ed84c831bfc516151e9f5ffb8110ca", + "0x09261fe911b00d2fd329c6b0e4b6d4c3a810b95a82ff32e6946a3244614feb91d205b63b9955f3a8244688b1a6cb053a7559f79129086239b473999e85be4c4282", + "0x07251841563b13c8aa1784b2d917584c358e1607710c0e0b41e5b1c45a07ceac601daf38969872c436599f595013a03f6c004d1f072aa7c8347f6ead35212900a8", + "0x08249e00f5aae6d513fc492c019a4e4de721a60764cada3866244a95db0d4e38bf0000000000000000000000000000000000000000000000000000000000000000", + "0x0818749973fd91f5be3859e8cfa68caee44893779b104075dd793bf4c486475b5b0000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000017d7d830e47e7f6da4ddbf680cf2eb1f9b538cec3240c26711d780f22f093f9a", + "0x0700000000000000000000000000000000000000000000000000000000000000000abb47e0d1f63a2287426a57ee22892129c848adcfadb74266fee6b726c86ede", + "0x07000000000000000000000000000000000000000000000000000000000000000021e13181b559aa6ad86c239a49008b70447de95cb59caa3242701b556ff6d030", + "0x0609a3a225fccec46d81cb0f42943e252523157488c3f7712cc9528ec8eceeee2d0736af2262ac152f39d5da51e394c65d8ab9f3223c051e5be4c43e508a8766cf", + "0x042f683d080c393f5fb2ade2190fd56e8a5e8fa26533acdea8cce25caa236027cc01010000f15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67200000000000000000000000000000000000000000000000000000000000000021", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x530000000000000000000000000000000000000f": { + "0x0000000000000000000000000000000000000000000000000000000000000001": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x0826741766ba756a60481cdbfbf1385b2e19410e0b174723be76ccce90749c19b71721b818bb25fdc0627fbd0f0ced2d5f58f1065a3e11d06073b58139aa144311", + "0x0700000000000000000000000000000000000000000000000000000000000000002aa3eec54733e8552173f9294865bf49cf8b2c952706e74cee743186ad4cd928", + "0x080ccb96bae7a65349544b73c51e1c17e905afa52b470cd3d12f5068df70ae80380000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000001982d84b59e872b109cb1b01bc1d03406977eb16aeef0ca94449c0e4dbde6426", + "0x08148058fb1d8433119f2f078417d61bd03610293c07a22079d8add13751806be00000000000000000000000000000000000000000000000000000000000000000", + "0x080b933363c8e146ca259ddce0026a7cda36a75da17137370243f5452dad2e2bd10000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000029d862e775a17f6a182820b3ef22a94850f73238972142e77c423a5ccda02739", + "0x0607f1a71dd97c713b6e6f0e0429b179a7f7a5d1a95605340f87f7b3b5c6571655156a0960a84fa4287f66d18b9c39ab9d403fa6b6dddd126f47758aadcb82e122", + "0x0426049ba6de63003492eb078a01a8aa4f4a0e67f28f0955c2eba9101d5d2eea50010100000000000000000000000000000000000000000000000000000000000005f5e108200000000000000000000000000000000000000000000000000000000000000001", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000002": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04020953ad52de135367a1ba2629636216ed5174cce5629d11b5d97fe733f07dcc0101000000000000000000000000000000000000000000000000000000000000000009c4200000000000000000000000000000000000000000000000000000000000000002", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000003": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x0406c50541f08911ad149aa545dd3d606f86ee63c751a795c7d57f0d3f85e6bdeb01010000000000000000000000000000000000000000000000000000000000003b9aca00200000000000000000000000000000000000000000000000000000000000000003", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000006": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04064ef33f6d7044a6aa1458b710bb24a531e379030cf6ca490d84fff1d8e79c94010100000000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000006", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000007": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x082b571cbf4c65b2bf5a694234230c0bb2e95c55920e0c050a73027dea6f5535ab0000000000000000000000000000000000000000000000000000000000000000", + "0x082119746c2afd71d1574bea80b47eab52d70db3990cd1c9f6d4df98eaed5c3ff01555b1ad85223923b16c0129d117eb56e12b2c4310ff3014c28b40684e3ea69d", + "0x040d1e80106f23933567a7c4881177b5d6c45a3f319feafe560a28df75769db9ba0101000000000000000000000000000000000000000000000000000000000b33edbfaf14200000000000000000000000000000000000000000000000000000000000000007", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000008": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x060e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200302bd20972a48695c1c418461cc2124f0c246ad1bb41e1d8d05cd9527784228a", + "0x0412c0c59f64422dd5b7ce259c4aa62e9bf4e2bcc4f0da068e332b9f4e502ba38f01010000000000000000000000000000000000000000000000000000000000174876e800200000000000000000000000000000000000000000000000000000000000000008", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000009": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x05", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x5300000000000000000000000000000000000017": { + "0x0000000000000000000000000000000000000000000000000000000000000065": [ + "0x091e6f7e3b2102387b1b88b997f51470252cf226b68be43284a52489de59a2abb0105259f0b8858b399570780c836f31751cc2566ba5935c50b2db952c1020abb0", + "0x091623ed516b763c3dd7bd75be87d3bda3bc50b9909eb6f832c706e2f973246c131bb859e26b23e5d0474d863af33c2a1163103f5881396448cd8ef9cfe18f9b92", + "0x0812bc2e9bd37f44093eb71c7af67706fd9be1a51a828a3d321b792b5490c6ad560e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200", + "0x07290cb26e75385afbd8fce76271781f49ca9f5737fe573f7a121642a43bdba61a04c601c63ad45f2c8c8c8cbe20c788ef63e574ce0e800153c8b0c855dca3c0be", + "0x0702bdcd1f95c7883b7b633e040eb8263e1fb0ab97a3fa5e590f4ba82b29ee3e5a2284968786ddc52459cd3e8be14da7533c8470c63575eaccae28bd65169074f9", + "0x07000000000000000000000000000000000000000000000000000000000000000028bcb7656960130b704e5cd2afdc5bf933752cc290e10ce8de9ff4eeff23fa71", + "0x060bf27252e269c88af00daf8e309f853351131ba9cb56aa8ffdc008546b4eefc9236d89b8a52ce6f920048f57605af94c276903d51b48d2a9549a2d4ce38af1e2", + "0x042115c9b0a0938aa1ce2e8c01581e5aa931288249a453588de70cf2c5dae26a7b0101000072fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc200000000000000000000000000000000000000000000000000000000000000065", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": { + "0x9b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x06146c35e7e025806e909bff59b6f979ce70a0361f4c21927654525e61e6fe94642c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc5", + "0x0402ff3d98d60879a35a5db7d2391babef2157d459d0d3fe39288673e1d095e872010100000000000000000000000000000000000000000000000000000000000000000001209b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xa4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x070c950c18bab1185522696011ed57fca69e01b541828d5ff534cbed1938b21ee4016ac634917fc6d3a0f6b79757daec61907b7aedc5f29eda70e92c3d3cca19a4", + "0x081613caa951fc2fafa0087eb7d5a1dfed09a02098063b3343e49c612e7d43d91b0000000000000000000000000000000000000000000000000000000000000000", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc455607e59ad0e17aa550b4c22f624e2c71133b519b7a5b569851816790a6c2ee462e", + "0x041e8c398d459c37919cfeed406cdf7ae1f710c7cfc105ed6a51d296d7efed716501010000000000000000000000000000000000000000000000000000000000000000000320a4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xc6479b83e9785430eb70698cda89562fbf6f1b9f865d224c7be856acc8ff7ae5": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x040dd2f85e38f58c771c9b9036984d6312d27727ef2654d8c714a0a8360ab4cc0301010000000000000000000000000000000000000000000000000000000000000000004120c6479b83e9785430eb70698cda89562fbf6f1b9f865d224c7be856acc8ff7ae5", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + }, + "codes": [ + { + "codeSize": 0, + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "code": "0x" + }, + { + "codeSize": 7677, + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "hash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "code": "0x608060405234801561000f575f80fd5b506004361061009c575f3560e01c8063637bd16411610064578063637bd1641461019057806365207521146101c05780638a59e100146101f05780638f527e9414610220578063dbd81bc71461023e5761009c565b80630c8f3129146100a057806321ceca81146100d0578063447a4c62146101005780635e109b571461013057806363138d4f14610160575b5f80fd5b6100ba60048036038101906100b59190611296565b61026e565b6040516100c791906112f7565b60405180910390f35b6100ea60048036038101906100e591906113ae565b6103ad565b6040516100f79190611455565b60405180910390f35b61011a600480360381019061011591906114a8565b610460565b60405161012791906112f7565b60405180910390f35b61014a600480360381019061014591906113ae565b61075f565b60405161015791906112f7565b60405180910390f35b61017a60048036038101906101759190611296565b610770565b60405161018791906112f7565b60405180910390f35b6101aa60048036038101906101a591906113ae565b6108af565b6040516101b791906112f7565b60405180910390f35b6101da60048036038101906101d59190611296565b6108c0565b6040516101e791906112f7565b60405180910390f35b61020a600480360381019061020591906114d3565b610a50565b60405161021791906112f7565b60405180910390f35b610228610d94565b6040516102359190611455565b60405180910390f35b610258600480360381019061025391906113ae565b610fbc565b60405161026591906112f7565b60405180910390f35b5f8061027a8351610ff0565b60405160200161028a91906115b1565b60405160208183030381529060405290505f80600373ffffffffffffffffffffffffffffffffffffffff16856040516102c3919061160c565b5f60405180830381855afa9150503d805f81146102fb576040519150601f19603f3d011682016040523d82523d5f602084013e610300565b606091505b5091509150815f846040516103159190611622565b90815260200160405180910390205f6101000a81548160ff0219169083151502179055508060018460405161034a9190611622565b908152602001604051809103902090816103649190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018383834260405161039a9493929190611958565b60405180910390a1819350505050919050565b6001818051602081018201805184825260208301602085012081835280955050505050505f9150905080546103e190611665565b80601f016020809104026020016040519081016040528092919081815260200182805461040d90611665565b80156104585780601f1061042f57610100808354040283529160200191610458565b820191905f5260205f20905b81548152906001019060200180831161043b57829003601f168201915b505050505081565b5f8061046b83610ff0565b60405160200161047b91906119f3565b60405160208183030381529060405290505f60c08461049a9190611a41565b67ffffffffffffffff8111156104b3576104b2611172565b5b6040519080825280601f01601f1916602001820160405280156104e55781602001600182028036833780820191505090505b5090505f5b8481101561064b575f60c0826105009190611a41565b905060018261050f9190611a82565b60f81b83601f836105209190611a82565b8151811061053157610530611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a90535060028261056c9190611a82565b60f81b836040601f8461057f9190611a82565b6105899190611a82565b8151811061059a57610599611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053506003826105d59190611a82565b60f81b8360206040601f856105ea9190611a82565b6105f49190611a82565b6105fe9190611a82565b8151811061060f5761060e611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505080806001019150506104ea565b505f80600873ffffffffffffffffffffffffffffffffffffffff1683604051610674919061160c565b5f60405180830381855afa9150503d805f81146106ac576040519150601f19603f3d011682016040523d82523d5f602084013e6106b1565b606091505b5091509150815f856040516106c69190611622565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001856040516106fb9190611622565b908152602001604051809103902090816107159190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018483834260405161074b9493929190611958565b60405180910390a181945050505050919050565b5f61076982610770565b9050919050565b5f8061077c8351610ff0565b60405160200161078c9190611b2c565b60405160208183030381529060405290505f80600273ffffffffffffffffffffffffffffffffffffffff16856040516107c5919061160c565b5f60405180830381855afa9150503d805f81146107fd576040519150601f19603f3d011682016040523d82523d5f602084013e610802565b606091505b5091509150815f846040516108179190611622565b90815260200160405180910390205f6101000a81548160ff0219169083151502179055508060018460405161084c9190611622565b908152602001604051809103902090816108669190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018383834260405161089c9493929190611958565b60405180910390a1819350505050919050565b5f6108b98261026e565b9050919050565b5f60d5825114610905576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fc90611bbd565b60405180910390fd5b5f6040518060400160405280600781526020017f426c616b6532460000000000000000000000000000000000000000000000000081525090505f80600973ffffffffffffffffffffffffffffffffffffffff1685604051610966919061160c565b5f60405180830381855afa9150503d805f811461099e576040519150601f19603f3d011682016040523d82523d5f602084013e6109a3565b606091505b5091509150815f846040516109b89190611622565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001846040516109ed9190611622565b90815260200160405180910390209081610a079190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00183838342604051610a3d9493929190611958565b60405180910390a1819350505050919050565b5f80610a5b85610ff0565b610a6485610ff0565b610a6d85610ff0565b604051602001610a7f93929190611c6f565b60405160208183030381529060405290505f8385876060610aa09190611a82565b610aaa9190611a82565b610ab49190611a82565b67ffffffffffffffff811115610acd57610acc611172565b5b6040519080825280601f01601f191660200182016040528015610aff5781602001600182028036833780820191505090505b5090505f865f1b90505f865f1b90505f865f1b90508260208501528160408501528060608501525f891115610b8d57600760f81b8460018b6060610b439190611a82565b610b4d9190611cc0565b81518110610b5e57610b5d611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f881115610bff57600360f81b8460018a8c6060610bab9190611a82565b610bb59190611a82565b610bbf9190611cc0565b81518110610bd057610bcf611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f871115610c7c57601160f81b846001898b8d6060610c1e9190611a82565b610c289190611a82565b610c329190611a82565b610c3c9190611cc0565b81518110610c4d57610c4c611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f80600573ffffffffffffffffffffffffffffffffffffffff1686604051610ca4919061160c565b5f60405180830381855afa9150503d805f8114610cdc576040519150601f19603f3d011682016040523d82523d5f602084013e610ce1565b606091505b5091509150815f88604051610cf69190611622565b90815260200160405180910390205f6101000a81548160ff02191690831515021790555080600188604051610d2b9190611622565b90815260200160405180910390209081610d459190611832565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00187838342604051610d7b9493929190611958565b60405180910390a1819750505050505050509392505050565b60605f60d567ffffffffffffffff811115610db257610db1611172565b5b6040519080825280601f01601f191660200182016040528015610de45781602001600182028036833780820191505090505b5090505f60f81b815f81518110610dfe57610dfd611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600181518110610e4457610e43611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600281518110610e8a57610e89611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600c60f81b81600381518110610ed157610ed0611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f600490505b60d4811015610f6d5761010081610f1c9190611d20565b60f81b828281518110610f3257610f31611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508080600101915050610f05565b50600160f81b8160d481518110610f8757610f86611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508091505090565b5f818051602081018201805184825260208301602085012081835280955050505050505f915054906101000a900460ff1681565b60605f8203611036576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611144565b5f8290505f5b5f821461106557808061104e90611d50565b915050600a8261105e9190611d97565b915061103c565b5f8167ffffffffffffffff8111156110805761107f611172565b5b6040519080825280601f01601f1916602001820160405280156110b25781602001600182028036833780820191505090505b5090505b5f851461113d576001826110ca9190611cc0565b9150600a856110d99190611d20565b60306110e59190611a82565b60f81b8183815181106110fb576110fa611ab5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600a856111369190611d97565b94506110b6565b8093505050505b919050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6111a882611162565b810181811067ffffffffffffffff821117156111c7576111c6611172565b5b80604052505050565b5f6111d9611149565b90506111e5828261119f565b919050565b5f67ffffffffffffffff82111561120457611203611172565b5b61120d82611162565b9050602081019050919050565b828183375f83830152505050565b5f61123a611235846111ea565b6111d0565b9050828152602081018484840111156112565761125561115e565b5b61126184828561121a565b509392505050565b5f82601f83011261127d5761127c61115a565b5b813561128d848260208601611228565b91505092915050565b5f602082840312156112ab576112aa611152565b5b5f82013567ffffffffffffffff8111156112c8576112c7611156565b5b6112d484828501611269565b91505092915050565b5f8115159050919050565b6112f1816112dd565b82525050565b5f60208201905061130a5f8301846112e8565b92915050565b5f67ffffffffffffffff82111561132a57611329611172565b5b61133382611162565b9050602081019050919050565b5f61135261134d84611310565b6111d0565b90508281526020810184848401111561136e5761136d61115e565b5b61137984828561121a565b509392505050565b5f82601f8301126113955761139461115a565b5b81356113a5848260208601611340565b91505092915050565b5f602082840312156113c3576113c2611152565b5b5f82013567ffffffffffffffff8111156113e0576113df611156565b5b6113ec84828501611381565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f611427826113f5565b61143181856113ff565b935061144181856020860161140f565b61144a81611162565b840191505092915050565b5f6020820190508181035f83015261146d818461141d565b905092915050565b5f819050919050565b61148781611475565b8114611491575f80fd5b50565b5f813590506114a28161147e565b92915050565b5f602082840312156114bd576114bc611152565b5b5f6114ca84828501611494565b91505092915050565b5f805f606084860312156114ea576114e9611152565b5b5f6114f786828701611494565b935050602061150886828701611494565b925050604061151986828701611494565b9150509250925092565b5f81905092915050565b7f524950454d443136305f000000000000000000000000000000000000000000005f82015250565b5f611561600a83611523565b915061156c8261152d565b600a82019050919050565b5f81519050919050565b5f61158b82611577565b6115958185611523565b93506115a581856020860161140f565b80840191505092915050565b5f6115bb82611555565b91506115c78284611581565b915081905092915050565b5f81905092915050565b5f6115e6826113f5565b6115f081856115d2565b935061160081856020860161140f565b80840191505092915050565b5f61161782846115dc565b915081905092915050565b5f61162d8284611581565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061167c57607f821691505b60208210810361168f5761168e611638565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026116f17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826116b6565b6116fb86836116b6565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61173661173161172c84611475565b611713565b611475565b9050919050565b5f819050919050565b61174f8361171c565b61176361175b8261173d565b8484546116c2565b825550505050565b5f90565b61177761176b565b611782818484611746565b505050565b5b818110156117a55761179a5f8261176f565b600181019050611788565b5050565b601f8211156117ea576117bb81611695565b6117c4846116a7565b810160208510156117d3578190505b6117e76117df856116a7565b830182611787565b50505b505050565b5f82821c905092915050565b5f61180a5f19846008026117ef565b1980831691505092915050565b5f61182283836117fb565b9150826002028217905092915050565b61183b826113f5565b67ffffffffffffffff81111561185457611853611172565b5b61185e8254611665565b6118698282856117a9565b5f60209050601f83116001811461189a575f8415611888578287015190505b6118928582611817565b8655506118f9565b601f1984166118a886611695565b5f5b828110156118cf578489015182556001820191506020850194506020810190506118aa565b868310156118ec57848901516118e8601f8916826117fb565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b5f61191b82611577565b6119258185611901565b935061193581856020860161140f565b61193e81611162565b840191505092915050565b61195281611475565b82525050565b5f6080820190508181035f8301526119708187611911565b905061197f60208301866112e8565b8181036040830152611991818561141d565b90506119a06060830184611949565b95945050505050565b7f50616972696e675f0000000000000000000000000000000000000000000000005f82015250565b5f6119dd600883611523565b91506119e8826119a9565b600882019050919050565b5f6119fd826119d1565b9150611a098284611581565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611a4b82611475565b9150611a5683611475565b9250828202611a6481611475565b91508282048414831517611a7b57611a7a611a14565b5b5092915050565b5f611a8c82611475565b9150611a9783611475565b9250828201905080821115611aaf57611aae611a14565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f5348413235365f000000000000000000000000000000000000000000000000005f82015250565b5f611b16600783611523565b9150611b2182611ae2565b600782019050919050565b5f611b3682611b0a565b9150611b428284611581565b915081905092915050565b7f426c616b6532662072657175697265732065786163746c7920323133206279745f8201527f657320696e707574000000000000000000000000000000000000000000000000602082015250565b5f611ba7602883611901565b9150611bb282611b4d565b604082019050919050565b5f6020820190508181035f830152611bd481611b9b565b9050919050565b7f4d6f644578705f000000000000000000000000000000000000000000000000005f82015250565b5f611c0f600783611523565b9150611c1a82611bdb565b600782019050919050565b7f5f000000000000000000000000000000000000000000000000000000000000005f82015250565b5f611c59600183611523565b9150611c6482611c25565b600182019050919050565b5f611c7982611c03565b9150611c858286611581565b9150611c9082611c4d565b9150611c9c8285611581565b9150611ca782611c4d565b9150611cb38284611581565b9150819050949350505050565b5f611cca82611475565b9150611cd583611475565b9250828203905081811115611ced57611cec611a14565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611d2a82611475565b9150611d3583611475565b925082611d4557611d44611cf3565b5b828206905092915050565b5f611d5a82611475565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611d8c57611d8b611a14565b5b600182019050919050565b5f611da182611475565b9150611dac83611475565b925082611dbc57611dbb611cf3565b5b82820490509291505056fea264697066735822122005118c223c12b158349613416fd6342abd507776ce6306cce1e9a99fa8e7b9bb64736f6c634300081a0033" + } + ], + "txStorageTraces": [ + { + "rootBefore": "0x06282a9b276c3b80d658aca386f03e479d9379af169e73801488632461d86525", + "rootAfter": "0x2ae6666bcca6b4e72819d44bba819a3f37f015d6e1df579f84847e3ee7c55f3e", + "proofs": { + "0x0000000000000000000000000000000000000005": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x0913cda6990546bcfe657e6f672956af068da6968bb4b975b80be9ac7aeef1b5d4007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09166895fcb5d82b47166f169982c40ac0c1bee1419414f177d98f4512a9c1c33c27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada1c7272d5697c434772d0bd6d9049ae4ba2620b4b42c63ae354808d2424fea4d7", + "0x0927d8ff4b09dc5ad7a414888c9ee68196a82828caa585707a5e972df330b5bb052c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x09190cfd6ea7912a16ed2ad99711340a70adffb2bd8842804138ec723c9fe438e418d5d391b7f2efb7557005c87fef37214582276122cbd0af1070133de664cb3e", + "0x091694b71fe07c993ef52852b27e094f9d56011b834f924e927dcc3f5aa51e7209084d4051e708b7919b98df81b7696968b7a28fbda77437d1b1a12e7c14fb177e", + "0x070afaf06e78a0a851d39eaa8e78f751ef8c68e516fc3a49ec7718a27c79854e740ade78eb779a9b20cf13f1b3a14efcbbee188e0633ffe39b6200c71bea481e9e", + "0x070569a1a2a826ec12c94f8ab0b6e5df82c8e67e8656ab6cd3d4ec9e83378723f23063ca84d841dd2c50e7964a3bb0c59dddda1e6b48b01bc3f7c383fcbb78f47a", + "0x042460a40650996bacb71ac4198e8557b70b24b601a028ba8c0a51f90c530655f20508000000000000000000000000000000000000000000000000000000000000000000270000000000000000000000000000000000000000000000008c5a8729c8d2c5160000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420af826c8406ad443d3bd24bfa680ba5c8c434e727000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af01ad581a1042b4922b02ce33d3b31138e15619e8d8e8313634b1ca65ce05c09c5", + "0x0901ae383d775a5593e8a9c58ec5e32d5b37296baa0363f05956ce31e20bf28f36268112f883b403649460fcc83503df9145f323a6488d8b711971175dce2cc736", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e262e14e3f0056e19b107589193778727daeb0d5d9c8b10a29357f63c6c7dfea7", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa149da17138d45d82642ef2f19d7e322443edf8f1f7f1d24a5fe1f91245f34b8c", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed92903528d5a66b9dd442a2cfcbc4535e8d308cb95fabc4e76cd70524c9c6962bd97", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e130284800c267d4af686a299278325b4273d027f79aca6ad797ebabd5344140af", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a018ddb987c4cb90005742aad2a4b732d585e30955c5e0fc624d61833ade15789", + "0x0700000000000000000000000000000000000000000000000000000000000000000501fdd23acb18cb7f4ec083ea002049715d1ad9c18a034d34699ff16dd72ffb", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d148fb17132574588883c9d57685157548d43848b8cf77a66e280936067de4cd8", + "0x062a1195cd1a7a66ccecf8f43d6f564b78a7ae943e8caa7c4f363558f4c8833d5104f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc759a36b47a6c0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x0913cda6990546bcfe657e6f672956af068da6968bb4b975b80be9ac7aeef1b5d4007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09166895fcb5d82b47166f169982c40ac0c1bee1419414f177d98f4512a9c1c33c27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada1c7272d5697c434772d0bd6d9049ae4ba2620b4b42c63ae354808d2424fea4d7", + "0x0927d8ff4b09dc5ad7a414888c9ee68196a82828caa585707a5e972df330b5bb052c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9018795bec0c9981dbbc5a6a61955f73bc49e9d9786d3b23f217eb2b98650857a0", + "0x0928dfb159dc353f8078c4363538a58a9fa9d7752e3fcf7d8ceddc08c11b51d15e19d66853551b5572832ff2b8fb72db53abe9fd30f56d6234918b51b1a50d3e75", + "0x0705f62a2631030f319cc83d3aed31907f893959137f58b48b7b3e8c22d877ea3716ef7145a610c21838e72d9d113e968ad41ab9c59e0a35633ddc5352d1867bd4", + "0x0802c74dd49b7efb1838742c4bd723baf03c7213fd6451541830a55b1a8a4b97f80000000000000000000000000000000000000000000000000000000000000000", + "0x08200b133820811eae273851524cd4b4286bfe2c1952baf7add3cea76fd28f55c30000000000000000000000000000000000000000000000000000000000000000", + "0x062dedb44952879016a484230de4935598f46859023d2b5c59b5839a54694766630e8e9abd7780da5da2ef86496348acf63857300969c2e704a31e7ea401be45f7", + "0x040dc14d1e73c0c578e5be438abfab5d1a47a0eef96e1d759f6997244869c1011205080000000000000000000000000000000000000000000000001dfd000000000000000100000000000000000000000000000000000000000000000000000000000000000f98ed2e0091c1dcd5e8881666d11fc23b8d3bff6db63078ff41db71965f5b6d04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd520f78ce1e2f0de8fd15ce6ac4ddec6982413fda499000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x09209e47729632e77eb87f7bea15e93472850854dfbe20e4341f8a848ffe6684692d77f0dd9bbdc44acce00f7ab1067709208957504f8664b75b5a2fa79d88b04f", + "0x090f0a1e82586324cee880dbc126f90c3c5668c9d8f53a255a673729bf067b350f19d49b6ebd9183d49d7c9a3fa1e06880604566637b7f5f6c9f86cfef0bf52362", + "0x0913cda6990546bcfe657e6f672956af068da6968bb4b975b80be9ac7aeef1b5d4007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x09166895fcb5d82b47166f169982c40ac0c1bee1419414f177d98f4512a9c1c33c27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada1c7272d5697c434772d0bd6d9049ae4ba2620b4b42c63ae354808d2424fea4d7", + "0x0927d8ff4b09dc5ad7a414888c9ee68196a82828caa585707a5e972df330b5bb052c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092b2b83d6a3c43e9d5d74c102989fc1a6e8919c861f1f883358c726154395ab9018795bec0c9981dbbc5a6a61955f73bc49e9d9786d3b23f217eb2b98650857a0", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf2a484c3cc96118da404c4bdacd6e54885004bf1e0f2e843a0906bd7746eb28fe", + "0x08072450f3306a3ade52423c5f81c5d642059471e88bf34e216db9a85674fcca4709b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x081b6f545a56732a0020ec7d063ae5badc0ef623d3c193d216617f7e00c54a23f90000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000abf9d55edf227f5c49532981f6e65d4f16006060d37ddad2c2e431f1abef30b", + "0x0600899d662ee64d410fa88a307586eac52cc30391b62752fd997423c122cf0c181dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d205080000000000000000000000000000000000000000000000000000000000000000087b000000000000000000000000000000000000000000000655cea73556fa240d9c0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0xF78ce1E2f0De8FD15cE6aC4DdeC6982413fda499": { + "0x9b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x06146c35e7e025806e909bff59b6f979ce70a0361f4c21927654525e61e6fe94642c5531fcb1f5d89ebf48434141bed498aa7fcbda8b8fdaf05553e80047967cc5", + "0x0402ff3d98d60879a35a5db7d2391babef2157d459d0d3fe39288673e1d095e872010100000000000000000000000000000000000000000000000000000000000000000001209b9b887057e67f014dddce475a6d1228ae8479d9c0a14dc111f4e71032020c24", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xa4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x070c950c18bab1185522696011ed57fca69e01b541828d5ff534cbed1938b21ee4016ac634917fc6d3a0f6b79757daec61907b7aedc5f29eda70e92c3d3cca19a4", + "0x081613caa951fc2fafa0087eb7d5a1dfed09a02098063b3343e49c612e7d43d91b0000000000000000000000000000000000000000000000000000000000000000", + "0x060393b6637f65dba38e4cc22851199d78b393b9f21f66654a30897d2189fc455607e59ad0e17aa550b4c22f624e2c71133b519b7a5b569851816790a6c2ee462e", + "0x041e8c398d459c37919cfeed406cdf7ae1f710c7cfc105ed6a51d296d7efed716501010000000000000000000000000000000000000000000000000000000000000000000320a4aae6489168c8521ffa6667018748a8c49347b927c24ead8028d9a8d58f66af", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xc6479b83e9785430eb70698cda89562fbf6f1b9f865d224c7be856acc8ff7ae5": [ + "0x0926c0c84d66a0e0131b13135e6ae801ea348c1ee60e89aec73b86e4fc5df34baa1534e5b9e352dcf3db1724551984a990f107c436bd4d80a3726946328b1db61e", + "0x081a94fa31765ffcdf181fbcf86bf15c3b189250f676f68143aaf9d587dfecdb960ff058d1013c8ee7b5a512e60ee9552e15d9781db2966fa03bf6cfbec6b70d6e", + "0x040dd2f85e38f58c771c9b9036984d6312d27727ef2654d8c714a0a8360ab4cc0301010000000000000000000000000000000000000000000000000000000000000000004120c6479b83e9785430eb70698cda89562fbf6f1b9f865d224c7be856acc8ff7ae5", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + } + ], + "executionResults": [ + { + "l1DataFee": "0x11ecafb653f", + "gas": 47733, + "failed": false, + "returnValue": "0000000000000000000000000000000000000000000000000000000000000001", + "from": { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2171, + "balance": "0x655cea73556fa240d9c", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "to": { + "address": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "poseidonCodeHash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "codeSize": 7677 + }, + "accountAfter": [ + { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2172, + "balance": "0x655cea7342d120ce11d", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + { + "address": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0x04ebeb19827e292abcff3ed0df7e0643f284c1a3a1be79552f95e2d68f273404", + "poseidonCodeHash": "0x290a6dffbef8eab27533357244828872617f855e589938736a13aa522e946bd5", + "codeSize": 7677 + }, + { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc76c41ecba6eb", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + } + ], + "structLogs": [ + { + "pc": 0, + "op": "PUSH1", + "gas": 26261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2, + "op": "PUSH1", + "gas": 26258, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4, + "op": "MSTORE", + "gas": 26255, + "gasCost": 12, + "depth": 1 + }, + { + "pc": 5, + "op": "CALLVALUE", + "gas": 26243, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6, + "op": "DUP1", + "gas": 26241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7, + "op": "ISZERO", + "gas": 26238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 8, + "op": "PUSH2", + "gas": 26235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 11, + "op": "JUMPI", + "gas": 26232, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 15, + "op": "JUMPDEST", + "gas": 26222, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 16, + "op": "POP", + "gas": 26221, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 17, + "op": "PUSH1", + "gas": 26219, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 19, + "op": "CALLDATASIZE", + "gas": 26216, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 20, + "op": "LT", + "gas": 26214, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 21, + "op": "PUSH2", + "gas": 26211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 24, + "op": "JUMPI", + "gas": 26208, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 25, + "op": "PUSH0", + "gas": 26198, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 26, + "op": "CALLDATALOAD", + "gas": 26196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 27, + "op": "PUSH1", + "gas": 26193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 29, + "op": "SHR", + "gas": 26190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 30, + "op": "DUP1", + "gas": 26187, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 31, + "op": "PUSH4", + "gas": 26184, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 36, + "op": "GT", + "gas": 26181, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 37, + "op": "PUSH2", + "gas": 26178, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 40, + "op": "JUMPI", + "gas": 26175, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 41, + "op": "DUP1", + "gas": 26165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 42, + "op": "PUSH4", + "gas": 26162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 47, + "op": "EQ", + "gas": 26159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 48, + "op": "PUSH2", + "gas": 26156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 51, + "op": "JUMPI", + "gas": 26153, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 52, + "op": "DUP1", + "gas": 26143, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 53, + "op": "PUSH4", + "gas": 26140, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 58, + "op": "EQ", + "gas": 26137, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 59, + "op": "PUSH2", + "gas": 26134, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 62, + "op": "JUMPI", + "gas": 26131, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 63, + "op": "DUP1", + "gas": 26121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 64, + "op": "PUSH4", + "gas": 26118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 69, + "op": "EQ", + "gas": 26115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 70, + "op": "PUSH2", + "gas": 26112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 73, + "op": "JUMPI", + "gas": 26109, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 496, + "op": "JUMPDEST", + "gas": 26099, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 497, + "op": "PUSH2", + "gas": 26098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 500, + "op": "PUSH1", + "gas": 26095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 502, + "op": "DUP1", + "gas": 26092, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 503, + "op": "CALLDATASIZE", + "gas": 26089, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 504, + "op": "SUB", + "gas": 26087, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 505, + "op": "DUP2", + "gas": 26084, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 506, + "op": "ADD", + "gas": 26081, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 507, + "op": "SWAP1", + "gas": 26078, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 508, + "op": "PUSH2", + "gas": 26075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 511, + "op": "SWAP2", + "gas": 26072, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 512, + "op": "SWAP1", + "gas": 26069, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 513, + "op": "PUSH2", + "gas": 26066, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 516, + "op": "JUMP", + "gas": 26063, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5331, + "op": "JUMPDEST", + "gas": 26055, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5332, + "op": "PUSH0", + "gas": 26054, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5333, + "op": "DUP1", + "gas": 26052, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5334, + "op": "PUSH0", + "gas": 26049, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5335, + "op": "PUSH1", + "gas": 26047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5337, + "op": "DUP5", + "gas": 26044, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5338, + "op": "DUP7", + "gas": 26041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5339, + "op": "SUB", + "gas": 26038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5340, + "op": "SLT", + "gas": 26035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5341, + "op": "ISZERO", + "gas": 26032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5342, + "op": "PUSH2", + "gas": 26029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5345, + "op": "JUMPI", + "gas": 26026, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5354, + "op": "JUMPDEST", + "gas": 26016, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5355, + "op": "PUSH0", + "gas": 26015, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5356, + "op": "PUSH2", + "gas": 26013, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5359, + "op": "DUP7", + "gas": 26010, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5360, + "op": "DUP3", + "gas": 26007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5361, + "op": "DUP8", + "gas": 26004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5362, + "op": "ADD", + "gas": 26001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5363, + "op": "PUSH2", + "gas": 25998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5366, + "op": "JUMP", + "gas": 25995, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5268, + "op": "JUMPDEST", + "gas": 25987, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5269, + "op": "PUSH0", + "gas": 25986, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5270, + "op": "DUP2", + "gas": 25984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5271, + "op": "CALLDATALOAD", + "gas": 25981, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5272, + "op": "SWAP1", + "gas": 25978, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5273, + "op": "POP", + "gas": 25975, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5274, + "op": "PUSH2", + "gas": 25973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5277, + "op": "DUP2", + "gas": 25970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5278, + "op": "PUSH2", + "gas": 25967, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5281, + "op": "JUMP", + "gas": 25964, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5246, + "op": "JUMPDEST", + "gas": 25956, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5247, + "op": "PUSH2", + "gas": 25955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5250, + "op": "DUP2", + "gas": 25952, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5251, + "op": "PUSH2", + "gas": 25949, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5254, + "op": "JUMP", + "gas": 25946, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 25938, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 25937, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 25935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 25932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 25929, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 25927, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 25924, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 25921, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 25919, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5255, + "op": "JUMPDEST", + "gas": 25911, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5256, + "op": "DUP2", + "gas": 25910, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5257, + "op": "EQ", + "gas": 25907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5258, + "op": "PUSH2", + "gas": 25904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5261, + "op": "JUMPI", + "gas": 25901, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5265, + "op": "JUMPDEST", + "gas": 25891, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5266, + "op": "POP", + "gas": 25890, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5267, + "op": "JUMP", + "gas": 25888, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5282, + "op": "JUMPDEST", + "gas": 25880, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5283, + "op": "SWAP3", + "gas": 25879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5284, + "op": "SWAP2", + "gas": 25876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5285, + "op": "POP", + "gas": 25873, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5286, + "op": "POP", + "gas": 25871, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5287, + "op": "JUMP", + "gas": 25869, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5367, + "op": "JUMPDEST", + "gas": 25861, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5368, + "op": "SWAP4", + "gas": 25860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5369, + "op": "POP", + "gas": 25857, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5370, + "op": "POP", + "gas": 25855, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5371, + "op": "PUSH1", + "gas": 25853, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5373, + "op": "PUSH2", + "gas": 25850, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5376, + "op": "DUP7", + "gas": 25847, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5377, + "op": "DUP3", + "gas": 25844, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5378, + "op": "DUP8", + "gas": 25841, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5379, + "op": "ADD", + "gas": 25838, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5380, + "op": "PUSH2", + "gas": 25835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5383, + "op": "JUMP", + "gas": 25832, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5268, + "op": "JUMPDEST", + "gas": 25824, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5269, + "op": "PUSH0", + "gas": 25823, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5270, + "op": "DUP2", + "gas": 25821, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5271, + "op": "CALLDATALOAD", + "gas": 25818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5272, + "op": "SWAP1", + "gas": 25815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5273, + "op": "POP", + "gas": 25812, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5274, + "op": "PUSH2", + "gas": 25810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5277, + "op": "DUP2", + "gas": 25807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5278, + "op": "PUSH2", + "gas": 25804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5281, + "op": "JUMP", + "gas": 25801, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5246, + "op": "JUMPDEST", + "gas": 25793, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5247, + "op": "PUSH2", + "gas": 25792, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5250, + "op": "DUP2", + "gas": 25789, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5251, + "op": "PUSH2", + "gas": 25786, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5254, + "op": "JUMP", + "gas": 25783, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 25775, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 25774, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 25772, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 25769, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 25766, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 25764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 25761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 25758, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 25756, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5255, + "op": "JUMPDEST", + "gas": 25748, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5256, + "op": "DUP2", + "gas": 25747, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5257, + "op": "EQ", + "gas": 25744, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5258, + "op": "PUSH2", + "gas": 25741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5261, + "op": "JUMPI", + "gas": 25738, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5265, + "op": "JUMPDEST", + "gas": 25728, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5266, + "op": "POP", + "gas": 25727, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5267, + "op": "JUMP", + "gas": 25725, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5282, + "op": "JUMPDEST", + "gas": 25717, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5283, + "op": "SWAP3", + "gas": 25716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5284, + "op": "SWAP2", + "gas": 25713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5285, + "op": "POP", + "gas": 25710, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5286, + "op": "POP", + "gas": 25708, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5287, + "op": "JUMP", + "gas": 25706, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5384, + "op": "JUMPDEST", + "gas": 25698, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5385, + "op": "SWAP3", + "gas": 25697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5386, + "op": "POP", + "gas": 25694, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5387, + "op": "POP", + "gas": 25692, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5388, + "op": "PUSH1", + "gas": 25690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5390, + "op": "PUSH2", + "gas": 25687, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5393, + "op": "DUP7", + "gas": 25684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5394, + "op": "DUP3", + "gas": 25681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5395, + "op": "DUP8", + "gas": 25678, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5396, + "op": "ADD", + "gas": 25675, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5397, + "op": "PUSH2", + "gas": 25672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5400, + "op": "JUMP", + "gas": 25669, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5268, + "op": "JUMPDEST", + "gas": 25661, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5269, + "op": "PUSH0", + "gas": 25660, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5270, + "op": "DUP2", + "gas": 25658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5271, + "op": "CALLDATALOAD", + "gas": 25655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5272, + "op": "SWAP1", + "gas": 25652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5273, + "op": "POP", + "gas": 25649, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5274, + "op": "PUSH2", + "gas": 25647, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5277, + "op": "DUP2", + "gas": 25644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5278, + "op": "PUSH2", + "gas": 25641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5281, + "op": "JUMP", + "gas": 25638, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5246, + "op": "JUMPDEST", + "gas": 25630, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5247, + "op": "PUSH2", + "gas": 25629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5250, + "op": "DUP2", + "gas": 25626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5251, + "op": "PUSH2", + "gas": 25623, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5254, + "op": "JUMP", + "gas": 25620, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 25612, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 25611, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 25609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 25606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 25603, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 25601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 25598, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 25595, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 25593, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5255, + "op": "JUMPDEST", + "gas": 25585, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5256, + "op": "DUP2", + "gas": 25584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5257, + "op": "EQ", + "gas": 25581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5258, + "op": "PUSH2", + "gas": 25578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5261, + "op": "JUMPI", + "gas": 25575, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5265, + "op": "JUMPDEST", + "gas": 25565, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5266, + "op": "POP", + "gas": 25564, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5267, + "op": "JUMP", + "gas": 25562, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5282, + "op": "JUMPDEST", + "gas": 25554, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5283, + "op": "SWAP3", + "gas": 25553, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5284, + "op": "SWAP2", + "gas": 25550, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5285, + "op": "POP", + "gas": 25547, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5286, + "op": "POP", + "gas": 25545, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5287, + "op": "JUMP", + "gas": 25543, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5401, + "op": "JUMPDEST", + "gas": 25535, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5402, + "op": "SWAP2", + "gas": 25534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5403, + "op": "POP", + "gas": 25531, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5404, + "op": "POP", + "gas": 25529, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5405, + "op": "SWAP3", + "gas": 25527, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5406, + "op": "POP", + "gas": 25524, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5407, + "op": "SWAP3", + "gas": 25522, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5408, + "op": "POP", + "gas": 25519, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5409, + "op": "SWAP3", + "gas": 25517, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5410, + "op": "JUMP", + "gas": 25514, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 517, + "op": "JUMPDEST", + "gas": 25506, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 518, + "op": "PUSH2", + "gas": 25505, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 521, + "op": "JUMP", + "gas": 25502, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2640, + "op": "JUMPDEST", + "gas": 25494, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2641, + "op": "PUSH0", + "gas": 25493, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2642, + "op": "DUP1", + "gas": 25491, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2643, + "op": "PUSH2", + "gas": 25488, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2646, + "op": "DUP6", + "gas": 25485, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2647, + "op": "PUSH2", + "gas": 25482, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2650, + "op": "JUMP", + "gas": 25479, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4080, + "op": "JUMPDEST", + "gas": 25471, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4081, + "op": "PUSH1", + "gas": 25470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4083, + "op": "PUSH0", + "gas": 25467, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4084, + "op": "DUP3", + "gas": 25465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4085, + "op": "SUB", + "gas": 25462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4086, + "op": "PUSH2", + "gas": 25459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4089, + "op": "JUMPI", + "gas": 25456, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4150, + "op": "JUMPDEST", + "gas": 25446, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4151, + "op": "PUSH0", + "gas": 25445, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4152, + "op": "DUP3", + "gas": 25443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4153, + "op": "SWAP1", + "gas": 25440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4154, + "op": "POP", + "gas": 25437, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4155, + "op": "PUSH0", + "gas": 25435, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 25433, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 25432, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 25430, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 25427, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 25424, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 25421, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4164, + "op": "DUP1", + "gas": 25411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "DUP1", + "gas": 25408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 25405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "SWAP1", + "gas": 25402, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4170, + "op": "PUSH2", + "gas": 25399, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "JUMP", + "gas": 25396, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7504, + "op": "JUMPDEST", + "gas": 25388, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7505, + "op": "PUSH0", + "gas": 25387, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7506, + "op": "PUSH2", + "gas": 25385, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7509, + "op": "DUP3", + "gas": 25382, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7510, + "op": "PUSH2", + "gas": 25379, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7513, + "op": "JUMP", + "gas": 25376, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 25368, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 25367, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 25365, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 25362, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 25359, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 25357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 25354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 25351, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 25349, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7514, + "op": "JUMPDEST", + "gas": 25341, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7515, + "op": "SWAP2", + "gas": 25340, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7516, + "op": "POP", + "gas": 25337, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7517, + "op": "PUSH32", + "gas": 25335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7550, + "op": "DUP3", + "gas": 25332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7551, + "op": "SUB", + "gas": 25329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7552, + "op": "PUSH2", + "gas": 25326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7555, + "op": "JUMPI", + "gas": 25323, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7564, + "op": "JUMPDEST", + "gas": 25313, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH1", + "gas": 25312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7567, + "op": "DUP3", + "gas": 25309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "ADD", + "gas": 25306, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7569, + "op": "SWAP1", + "gas": 25303, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7570, + "op": "POP", + "gas": 25300, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7571, + "op": "SWAP2", + "gas": 25298, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7572, + "op": "SWAP1", + "gas": 25295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "POP", + "gas": 25292, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7574, + "op": "JUMP", + "gas": 25290, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4174, + "op": "JUMPDEST", + "gas": 25282, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4175, + "op": "SWAP2", + "gas": 25281, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4176, + "op": "POP", + "gas": 25278, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4177, + "op": "POP", + "gas": 25276, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4178, + "op": "PUSH1", + "gas": 25274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4180, + "op": "DUP3", + "gas": 25271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4181, + "op": "PUSH2", + "gas": 25268, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "SWAP2", + "gas": 25265, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "SWAP1", + "gas": 25262, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4186, + "op": "PUSH2", + "gas": 25259, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4189, + "op": "JUMP", + "gas": 25256, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 25248, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 25247, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 25245, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 25242, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 25239, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 25236, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 25228, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 25227, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 25225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 25222, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 25219, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 25217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 25214, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 25211, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 25209, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 25201, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 25200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 25197, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 25195, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 25192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 25189, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 25186, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 25178, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 25177, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 25175, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 25172, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 25169, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 25167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 25164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 25161, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 25159, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 25151, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 25150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 25147, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 25145, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 25142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 25139, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 25129, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 25128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 25125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 25122, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 25117, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 25114, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 25112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 25109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 25106, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 25104, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 25102, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4190, + "op": "JUMPDEST", + "gas": 25094, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4191, + "op": "SWAP2", + "gas": 25093, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4192, + "op": "POP", + "gas": 25090, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4193, + "op": "PUSH2", + "gas": 25088, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4196, + "op": "JUMP", + "gas": 25085, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 25077, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 25076, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 25074, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 25071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 25068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 25065, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4164, + "op": "DUP1", + "gas": 25055, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "DUP1", + "gas": 25052, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 25049, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "SWAP1", + "gas": 25046, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4170, + "op": "PUSH2", + "gas": 25043, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "JUMP", + "gas": 25040, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7504, + "op": "JUMPDEST", + "gas": 25032, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7505, + "op": "PUSH0", + "gas": 25031, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7506, + "op": "PUSH2", + "gas": 25029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7509, + "op": "DUP3", + "gas": 25026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7510, + "op": "PUSH2", + "gas": 25023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7513, + "op": "JUMP", + "gas": 25020, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 25012, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 25011, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 25009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 25006, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 25003, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 25001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24995, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24993, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7514, + "op": "JUMPDEST", + "gas": 24985, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7515, + "op": "SWAP2", + "gas": 24984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7516, + "op": "POP", + "gas": 24981, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7517, + "op": "PUSH32", + "gas": 24979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7550, + "op": "DUP3", + "gas": 24976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7551, + "op": "SUB", + "gas": 24973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7552, + "op": "PUSH2", + "gas": 24970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7555, + "op": "JUMPI", + "gas": 24967, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7564, + "op": "JUMPDEST", + "gas": 24957, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH1", + "gas": 24956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7567, + "op": "DUP3", + "gas": 24953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "ADD", + "gas": 24950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7569, + "op": "SWAP1", + "gas": 24947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7570, + "op": "POP", + "gas": 24944, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7571, + "op": "SWAP2", + "gas": 24942, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7572, + "op": "SWAP1", + "gas": 24939, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "POP", + "gas": 24936, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7574, + "op": "JUMP", + "gas": 24934, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4174, + "op": "JUMPDEST", + "gas": 24926, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4175, + "op": "SWAP2", + "gas": 24925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4176, + "op": "POP", + "gas": 24922, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4177, + "op": "POP", + "gas": 24920, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4178, + "op": "PUSH1", + "gas": 24918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4180, + "op": "DUP3", + "gas": 24915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4181, + "op": "PUSH2", + "gas": 24912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "SWAP2", + "gas": 24909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "SWAP1", + "gas": 24906, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4186, + "op": "PUSH2", + "gas": 24903, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4189, + "op": "JUMP", + "gas": 24900, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 24892, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 24891, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 24889, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 24886, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 24883, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 24880, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24872, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24871, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24869, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24866, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24863, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24861, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24855, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24853, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 24845, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 24844, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 24841, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 24839, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 24836, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 24833, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 24830, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24822, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24821, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24819, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24813, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24805, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24803, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 24795, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 24794, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 24791, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 24789, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 24786, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 24783, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 24773, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 24772, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 24769, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 24766, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 24761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 24758, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 24756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 24753, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 24750, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 24748, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 24746, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4190, + "op": "JUMPDEST", + "gas": 24738, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4191, + "op": "SWAP2", + "gas": 24737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4192, + "op": "POP", + "gas": 24734, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4193, + "op": "PUSH2", + "gas": 24732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4196, + "op": "JUMP", + "gas": 24729, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 24721, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 24720, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 24718, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 24715, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 24712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 24709, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4197, + "op": "JUMPDEST", + "gas": 24699, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4198, + "op": "PUSH0", + "gas": 24698, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4199, + "op": "DUP2", + "gas": 24696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4200, + "op": "PUSH8", + "gas": 24693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4209, + "op": "DUP2", + "gas": 24690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4210, + "op": "GT", + "gas": 24687, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4211, + "op": "ISZERO", + "gas": 24684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4212, + "op": "PUSH2", + "gas": 24681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4215, + "op": "JUMPI", + "gas": 24678, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4224, + "op": "JUMPDEST", + "gas": 24668, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4225, + "op": "PUSH1", + "gas": 24667, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4227, + "op": "MLOAD", + "gas": 24664, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4228, + "op": "SWAP1", + "gas": 24661, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4229, + "op": "DUP1", + "gas": 24658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4230, + "op": "DUP3", + "gas": 24655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4231, + "op": "MSTORE", + "gas": 24652, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4232, + "op": "DUP1", + "gas": 24643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4233, + "op": "PUSH1", + "gas": 24640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4235, + "op": "ADD", + "gas": 24637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4236, + "op": "PUSH1", + "gas": 24634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4238, + "op": "NOT", + "gas": 24631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4239, + "op": "AND", + "gas": 24628, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4240, + "op": "PUSH1", + "gas": 24625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4242, + "op": "ADD", + "gas": 24622, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4243, + "op": "DUP3", + "gas": 24619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4244, + "op": "ADD", + "gas": 24616, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4245, + "op": "PUSH1", + "gas": 24613, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4247, + "op": "MSTORE", + "gas": 24610, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4248, + "op": "DUP1", + "gas": 24607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4249, + "op": "ISZERO", + "gas": 24604, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4250, + "op": "PUSH2", + "gas": 24601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4253, + "op": "JUMPI", + "gas": 24598, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4254, + "op": "DUP2", + "gas": 24588, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4255, + "op": "PUSH1", + "gas": 24585, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4257, + "op": "ADD", + "gas": 24582, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4258, + "op": "PUSH1", + "gas": 24579, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4260, + "op": "DUP3", + "gas": 24576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4261, + "op": "MUL", + "gas": 24573, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 4262, + "op": "DUP1", + "gas": 24568, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4263, + "op": "CALLDATASIZE", + "gas": 24565, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4264, + "op": "DUP4", + "gas": 24563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4265, + "op": "CALLDATACOPY", + "gas": 24560, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4266, + "op": "DUP1", + "gas": 24551, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4267, + "op": "DUP3", + "gas": 24548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4268, + "op": "ADD", + "gas": 24545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4269, + "op": "SWAP2", + "gas": 24542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4270, + "op": "POP", + "gas": 24539, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4271, + "op": "POP", + "gas": 24537, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4272, + "op": "SWAP1", + "gas": 24535, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4273, + "op": "POP", + "gas": 24532, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4274, + "op": "JUMPDEST", + "gas": 24530, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4275, + "op": "POP", + "gas": 24529, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4276, + "op": "SWAP1", + "gas": 24527, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4277, + "op": "POP", + "gas": 24524, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 24522, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 24521, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 24519, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 24516, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 24513, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 24510, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4286, + "op": "PUSH1", + "gas": 24500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4288, + "op": "DUP3", + "gas": 24497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 24494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 24491, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 24488, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 24485, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 24482, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 24474, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 24473, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 24471, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 24468, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 24465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 24462, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24454, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24453, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24445, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24437, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24435, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 24427, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 24426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 24423, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 24421, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 24418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 24415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 24412, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24404, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24403, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24401, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24398, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24395, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24393, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24390, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24387, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24385, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 24377, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 24376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 24373, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 24371, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 24368, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 24365, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 24362, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 24359, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 24357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 24354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 24351, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 24348, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 24345, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 24342, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 24332, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 24331, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 24328, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 24325, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 24323, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 24321, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 24313, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "SWAP2", + "gas": 24312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4300, + "op": "POP", + "gas": 24309, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4301, + "op": "PUSH1", + "gas": 24307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP6", + "gas": 24304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "PUSH2", + "gas": 24301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "SWAP2", + "gas": 24298, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "SWAP1", + "gas": 24295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4309, + "op": "PUSH2", + "gas": 24292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4312, + "op": "JUMP", + "gas": 24289, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7456, + "op": "JUMPDEST", + "gas": 24281, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7457, + "op": "PUSH0", + "gas": 24280, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7458, + "op": "PUSH2", + "gas": 24278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7461, + "op": "DUP3", + "gas": 24275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7462, + "op": "PUSH2", + "gas": 24272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7465, + "op": "JUMP", + "gas": 24269, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24261, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24260, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24258, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24252, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24250, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24247, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24244, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24242, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 24234, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "SWAP2", + "gas": 24233, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "POP", + "gas": 24230, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7469, + "op": "PUSH2", + "gas": 24228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7472, + "op": "DUP4", + "gas": 24225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "PUSH2", + "gas": 24222, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 24219, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24211, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24210, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24208, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24205, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24202, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24194, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24192, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 24184, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "SWAP3", + "gas": 24183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7479, + "op": "POP", + "gas": 24180, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7480, + "op": "DUP3", + "gas": 24178, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7481, + "op": "PUSH2", + "gas": 24175, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7484, + "op": "JUMPI", + "gas": 24172, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7493, + "op": "JUMPDEST", + "gas": 24162, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7494, + "op": "DUP3", + "gas": 24161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7495, + "op": "DUP3", + "gas": 24158, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7496, + "op": "MOD", + "gas": 24155, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7497, + "op": "SWAP1", + "gas": 24150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7498, + "op": "POP", + "gas": 24147, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7499, + "op": "SWAP3", + "gas": 24145, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7500, + "op": "SWAP2", + "gas": 24142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7501, + "op": "POP", + "gas": 24139, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7502, + "op": "POP", + "gas": 24137, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7503, + "op": "JUMP", + "gas": 24135, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4313, + "op": "JUMPDEST", + "gas": 24127, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4314, + "op": "PUSH1", + "gas": 24126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4316, + "op": "PUSH2", + "gas": 24123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4319, + "op": "SWAP2", + "gas": 24120, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4320, + "op": "SWAP1", + "gas": 24117, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH2", + "gas": 24114, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "JUMP", + "gas": 24111, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 24103, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 24102, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 24100, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 24097, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 24094, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 24091, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24083, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24082, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24080, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24077, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24074, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24072, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24069, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24066, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24064, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 24056, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 24055, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 24052, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 24050, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 24047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 24044, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 24041, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 24033, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 24032, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 24030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 24027, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 24024, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 24022, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 24019, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 24016, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 24014, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 24006, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 24005, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 24002, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 24000, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 23997, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 23994, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 23991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 23988, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 23986, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 23983, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 23980, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 23977, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 23974, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 23971, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 23961, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 23960, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 23957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 23954, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 23952, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 23950, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4325, + "op": "JUMPDEST", + "gas": 23942, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH1", + "gas": 23941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4328, + "op": "SHL", + "gas": 23938, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4329, + "op": "DUP2", + "gas": 23935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4330, + "op": "DUP4", + "gas": 23932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4331, + "op": "DUP2", + "gas": 23929, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4332, + "op": "MLOAD", + "gas": 23926, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4333, + "op": "DUP2", + "gas": 23923, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4334, + "op": "LT", + "gas": 23920, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4335, + "op": "PUSH2", + "gas": 23917, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4338, + "op": "JUMPI", + "gas": 23914, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4347, + "op": "JUMPDEST", + "gas": 23904, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4348, + "op": "PUSH1", + "gas": 23903, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4350, + "op": "ADD", + "gas": 23900, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4351, + "op": "ADD", + "gas": 23897, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4352, + "op": "SWAP1", + "gas": 23894, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4353, + "op": "PUSH31", + "gas": 23891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "NOT", + "gas": 23888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4386, + "op": "AND", + "gas": 23885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4387, + "op": "SWAP1", + "gas": 23882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "DUP2", + "gas": 23879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "PUSH0", + "gas": 23876, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "BYTE", + "gas": 23874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4391, + "op": "SWAP1", + "gas": 23871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4392, + "op": "MSTORE8", + "gas": 23868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4393, + "op": "POP", + "gas": 23865, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4394, + "op": "PUSH1", + "gas": 23863, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "DUP6", + "gas": 23860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4397, + "op": "PUSH2", + "gas": 23857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4400, + "op": "SWAP2", + "gas": 23854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4401, + "op": "SWAP1", + "gas": 23851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4402, + "op": "PUSH2", + "gas": 23848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4405, + "op": "JUMP", + "gas": 23845, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 23837, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 23836, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 23834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 23831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 23828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 23825, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23817, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23816, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23814, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23808, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23806, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23803, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23800, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23798, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 23790, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 23789, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 23786, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 23784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 23781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 23778, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 23775, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23767, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23766, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23758, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23753, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23750, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23748, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 23740, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 23739, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 23736, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 23734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 23731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 23728, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 23718, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 23717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 23714, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 23711, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 23706, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 23703, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 23701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 23698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 23695, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 23693, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 23691, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4406, + "op": "JUMPDEST", + "gas": 23683, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4407, + "op": "SWAP5", + "gas": 23682, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4408, + "op": "POP", + "gas": 23679, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4409, + "op": "PUSH2", + "gas": 23677, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4412, + "op": "JUMP", + "gas": 23674, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 23666, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 23665, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 23663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 23660, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 23657, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 23654, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4286, + "op": "PUSH1", + "gas": 23644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4288, + "op": "DUP3", + "gas": 23641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 23638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 23635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 23632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 23629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 23626, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 23618, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 23617, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 23615, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 23612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 23609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 23606, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23598, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23597, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23595, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23589, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23581, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23579, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 23571, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 23570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 23567, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 23565, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 23562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 23559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 23556, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23548, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23547, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23539, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23531, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23529, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 23521, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 23520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 23517, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 23515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 23512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 23509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 23506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 23503, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 23501, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 23498, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 23495, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 23492, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 23489, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 23486, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 23476, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 23475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 23472, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 23469, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 23467, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 23465, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 23457, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "SWAP2", + "gas": 23456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4300, + "op": "POP", + "gas": 23453, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4301, + "op": "PUSH1", + "gas": 23451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP6", + "gas": 23448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "PUSH2", + "gas": 23445, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "SWAP2", + "gas": 23442, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "SWAP1", + "gas": 23439, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4309, + "op": "PUSH2", + "gas": 23436, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4312, + "op": "JUMP", + "gas": 23433, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7456, + "op": "JUMPDEST", + "gas": 23425, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7457, + "op": "PUSH0", + "gas": 23424, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7458, + "op": "PUSH2", + "gas": 23422, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7461, + "op": "DUP3", + "gas": 23419, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7462, + "op": "PUSH2", + "gas": 23416, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7465, + "op": "JUMP", + "gas": 23413, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23405, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23404, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23402, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23399, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23396, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23388, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23386, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 23378, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "SWAP2", + "gas": 23377, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "POP", + "gas": 23374, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7469, + "op": "PUSH2", + "gas": 23372, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7472, + "op": "DUP4", + "gas": 23369, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "PUSH2", + "gas": 23366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 23363, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23355, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23354, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23352, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23349, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23346, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23338, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23336, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 23328, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "SWAP3", + "gas": 23327, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7479, + "op": "POP", + "gas": 23324, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7480, + "op": "DUP3", + "gas": 23322, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7481, + "op": "PUSH2", + "gas": 23319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7484, + "op": "JUMPI", + "gas": 23316, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7493, + "op": "JUMPDEST", + "gas": 23306, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7494, + "op": "DUP3", + "gas": 23305, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7495, + "op": "DUP3", + "gas": 23302, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7496, + "op": "MOD", + "gas": 23299, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7497, + "op": "SWAP1", + "gas": 23294, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7498, + "op": "POP", + "gas": 23291, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7499, + "op": "SWAP3", + "gas": 23289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7500, + "op": "SWAP2", + "gas": 23286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7501, + "op": "POP", + "gas": 23283, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7502, + "op": "POP", + "gas": 23281, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7503, + "op": "JUMP", + "gas": 23279, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4313, + "op": "JUMPDEST", + "gas": 23271, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4314, + "op": "PUSH1", + "gas": 23270, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4316, + "op": "PUSH2", + "gas": 23267, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4319, + "op": "SWAP2", + "gas": 23264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4320, + "op": "SWAP1", + "gas": 23261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH2", + "gas": 23258, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "JUMP", + "gas": 23255, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 23247, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 23246, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 23244, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 23241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 23238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 23235, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23227, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23226, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23224, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23221, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23218, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23210, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23208, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 23200, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 23199, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 23196, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 23194, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 23191, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 23188, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 23185, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 23177, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 23176, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 23174, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 23171, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 23168, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 23166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 23163, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 23160, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 23158, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 23150, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 23149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 23146, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 23144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 23141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 23138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 23135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 23132, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 23130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 23127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 23124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 23121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 23118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 23115, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 23105, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 23104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 23101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 23098, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 23096, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 23094, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4325, + "op": "JUMPDEST", + "gas": 23086, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH1", + "gas": 23085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4328, + "op": "SHL", + "gas": 23082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4329, + "op": "DUP2", + "gas": 23079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4330, + "op": "DUP4", + "gas": 23076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4331, + "op": "DUP2", + "gas": 23073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4332, + "op": "MLOAD", + "gas": 23070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4333, + "op": "DUP2", + "gas": 23067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4334, + "op": "LT", + "gas": 23064, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4335, + "op": "PUSH2", + "gas": 23061, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4338, + "op": "JUMPI", + "gas": 23058, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4347, + "op": "JUMPDEST", + "gas": 23048, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4348, + "op": "PUSH1", + "gas": 23047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4350, + "op": "ADD", + "gas": 23044, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4351, + "op": "ADD", + "gas": 23041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4352, + "op": "SWAP1", + "gas": 23038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4353, + "op": "PUSH31", + "gas": 23035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "NOT", + "gas": 23032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4386, + "op": "AND", + "gas": 23029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4387, + "op": "SWAP1", + "gas": 23026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "DUP2", + "gas": 23023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "PUSH0", + "gas": 23020, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "BYTE", + "gas": 23018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4391, + "op": "SWAP1", + "gas": 23015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4392, + "op": "MSTORE8", + "gas": 23012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4393, + "op": "POP", + "gas": 23009, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4394, + "op": "PUSH1", + "gas": 23007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "DUP6", + "gas": 23004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4397, + "op": "PUSH2", + "gas": 23001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4400, + "op": "SWAP2", + "gas": 22998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4401, + "op": "SWAP1", + "gas": 22995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4402, + "op": "PUSH2", + "gas": 22992, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4405, + "op": "JUMP", + "gas": 22989, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 22981, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 22980, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 22978, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 22975, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 22972, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 22969, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22961, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22960, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22952, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22944, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22942, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 22934, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 22933, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 22930, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 22928, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 22925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 22922, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 22919, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22911, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22910, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22902, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22900, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22897, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22894, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22892, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 22884, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 22883, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 22880, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 22878, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 22875, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 22872, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 22862, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 22861, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 22858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 22855, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 22850, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 22847, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 22845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 22842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 22839, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 22837, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 22835, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4406, + "op": "JUMPDEST", + "gas": 22827, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4407, + "op": "SWAP5", + "gas": 22826, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4408, + "op": "POP", + "gas": 22823, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4409, + "op": "PUSH2", + "gas": 22821, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4412, + "op": "JUMP", + "gas": 22818, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 22810, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 22809, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 22807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 22804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 22801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 22798, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4413, + "op": "JUMPDEST", + "gas": 22788, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4414, + "op": "DUP1", + "gas": 22787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4415, + "op": "SWAP4", + "gas": 22784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4416, + "op": "POP", + "gas": 22781, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4417, + "op": "POP", + "gas": 22779, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4418, + "op": "POP", + "gas": 22777, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4419, + "op": "POP", + "gas": 22775, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4420, + "op": "JUMPDEST", + "gas": 22773, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4421, + "op": "SWAP2", + "gas": 22772, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4422, + "op": "SWAP1", + "gas": 22769, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4423, + "op": "POP", + "gas": 22766, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4424, + "op": "JUMP", + "gas": 22764, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2651, + "op": "JUMPDEST", + "gas": 22756, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2652, + "op": "PUSH2", + "gas": 22755, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2655, + "op": "DUP6", + "gas": 22752, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2656, + "op": "PUSH2", + "gas": 22749, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2659, + "op": "JUMP", + "gas": 22746, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4080, + "op": "JUMPDEST", + "gas": 22738, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4081, + "op": "PUSH1", + "gas": 22737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4083, + "op": "PUSH0", + "gas": 22734, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4084, + "op": "DUP3", + "gas": 22732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4085, + "op": "SUB", + "gas": 22729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4086, + "op": "PUSH2", + "gas": 22726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4089, + "op": "JUMPI", + "gas": 22723, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4150, + "op": "JUMPDEST", + "gas": 22713, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4151, + "op": "PUSH0", + "gas": 22712, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4152, + "op": "DUP3", + "gas": 22710, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4153, + "op": "SWAP1", + "gas": 22707, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4154, + "op": "POP", + "gas": 22704, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4155, + "op": "PUSH0", + "gas": 22702, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 22700, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 22699, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 22697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 22694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 22691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 22688, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4164, + "op": "DUP1", + "gas": 22678, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "DUP1", + "gas": 22675, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 22672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "SWAP1", + "gas": 22669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4170, + "op": "PUSH2", + "gas": 22666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "JUMP", + "gas": 22663, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7504, + "op": "JUMPDEST", + "gas": 22655, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7505, + "op": "PUSH0", + "gas": 22654, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7506, + "op": "PUSH2", + "gas": 22652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7509, + "op": "DUP3", + "gas": 22649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7510, + "op": "PUSH2", + "gas": 22646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7513, + "op": "JUMP", + "gas": 22643, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22635, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22634, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22626, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22621, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22618, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22616, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7514, + "op": "JUMPDEST", + "gas": 22608, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7515, + "op": "SWAP2", + "gas": 22607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7516, + "op": "POP", + "gas": 22604, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7517, + "op": "PUSH32", + "gas": 22602, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7550, + "op": "DUP3", + "gas": 22599, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7551, + "op": "SUB", + "gas": 22596, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7552, + "op": "PUSH2", + "gas": 22593, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7555, + "op": "JUMPI", + "gas": 22590, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7564, + "op": "JUMPDEST", + "gas": 22580, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH1", + "gas": 22579, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7567, + "op": "DUP3", + "gas": 22576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "ADD", + "gas": 22573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7569, + "op": "SWAP1", + "gas": 22570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7570, + "op": "POP", + "gas": 22567, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7571, + "op": "SWAP2", + "gas": 22565, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7572, + "op": "SWAP1", + "gas": 22562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "POP", + "gas": 22559, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7574, + "op": "JUMP", + "gas": 22557, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4174, + "op": "JUMPDEST", + "gas": 22549, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4175, + "op": "SWAP2", + "gas": 22548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4176, + "op": "POP", + "gas": 22545, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4177, + "op": "POP", + "gas": 22543, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4178, + "op": "PUSH1", + "gas": 22541, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4180, + "op": "DUP3", + "gas": 22538, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4181, + "op": "PUSH2", + "gas": 22535, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "SWAP2", + "gas": 22532, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "SWAP1", + "gas": 22529, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4186, + "op": "PUSH2", + "gas": 22526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4189, + "op": "JUMP", + "gas": 22523, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 22515, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 22514, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 22512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 22509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 22506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 22503, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22495, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22494, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22492, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22489, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22486, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22478, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22476, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 22468, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 22467, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 22464, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 22462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 22459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 22456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 22453, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22445, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22444, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22442, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22439, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22436, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22434, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22428, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22426, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 22418, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 22417, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 22414, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 22412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 22409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 22406, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 22396, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 22395, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 22392, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 22389, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 22384, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 22381, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 22379, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 22376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 22373, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 22371, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 22369, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4190, + "op": "JUMPDEST", + "gas": 22361, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4191, + "op": "SWAP2", + "gas": 22360, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4192, + "op": "POP", + "gas": 22357, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4193, + "op": "PUSH2", + "gas": 22355, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4196, + "op": "JUMP", + "gas": 22352, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 22344, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 22343, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 22341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 22338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 22335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 22332, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4164, + "op": "DUP1", + "gas": 22322, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "DUP1", + "gas": 22319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 22316, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "SWAP1", + "gas": 22313, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4170, + "op": "PUSH2", + "gas": 22310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "JUMP", + "gas": 22307, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7504, + "op": "JUMPDEST", + "gas": 22299, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7505, + "op": "PUSH0", + "gas": 22298, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7506, + "op": "PUSH2", + "gas": 22296, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7509, + "op": "DUP3", + "gas": 22293, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7510, + "op": "PUSH2", + "gas": 22290, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7513, + "op": "JUMP", + "gas": 22287, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22279, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22278, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22273, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22270, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22268, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22265, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22262, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22260, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7514, + "op": "JUMPDEST", + "gas": 22252, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7515, + "op": "SWAP2", + "gas": 22251, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7516, + "op": "POP", + "gas": 22248, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7517, + "op": "PUSH32", + "gas": 22246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7550, + "op": "DUP3", + "gas": 22243, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7551, + "op": "SUB", + "gas": 22240, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7552, + "op": "PUSH2", + "gas": 22237, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7555, + "op": "JUMPI", + "gas": 22234, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7564, + "op": "JUMPDEST", + "gas": 22224, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH1", + "gas": 22223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7567, + "op": "DUP3", + "gas": 22220, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "ADD", + "gas": 22217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7569, + "op": "SWAP1", + "gas": 22214, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7570, + "op": "POP", + "gas": 22211, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7571, + "op": "SWAP2", + "gas": 22209, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7572, + "op": "SWAP1", + "gas": 22206, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "POP", + "gas": 22203, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7574, + "op": "JUMP", + "gas": 22201, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4174, + "op": "JUMPDEST", + "gas": 22193, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4175, + "op": "SWAP2", + "gas": 22192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4176, + "op": "POP", + "gas": 22189, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4177, + "op": "POP", + "gas": 22187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4178, + "op": "PUSH1", + "gas": 22185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4180, + "op": "DUP3", + "gas": 22182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4181, + "op": "PUSH2", + "gas": 22179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "SWAP2", + "gas": 22176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "SWAP1", + "gas": 22173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4186, + "op": "PUSH2", + "gas": 22170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4189, + "op": "JUMP", + "gas": 22167, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 22159, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 22158, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 22156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 22153, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 22150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 22147, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22139, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22138, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22136, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22130, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22122, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22120, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 22112, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 22111, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 22108, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 22106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 22103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 22100, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 22097, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 22089, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 22088, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 22086, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 22083, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 22080, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 22078, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 22075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 22072, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 22070, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 22062, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 22061, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 22058, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 22056, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 22053, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 22050, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 22040, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 22039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 22036, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 22033, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 22028, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 22025, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 22023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 22020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 22017, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 22015, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 22013, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4190, + "op": "JUMPDEST", + "gas": 22005, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4191, + "op": "SWAP2", + "gas": 22004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4192, + "op": "POP", + "gas": 22001, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4193, + "op": "PUSH2", + "gas": 21999, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4196, + "op": "JUMP", + "gas": 21996, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 21988, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 21987, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 21985, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 21982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 21979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 21976, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4197, + "op": "JUMPDEST", + "gas": 21966, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4198, + "op": "PUSH0", + "gas": 21965, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4199, + "op": "DUP2", + "gas": 21963, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4200, + "op": "PUSH8", + "gas": 21960, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4209, + "op": "DUP2", + "gas": 21957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4210, + "op": "GT", + "gas": 21954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4211, + "op": "ISZERO", + "gas": 21951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4212, + "op": "PUSH2", + "gas": 21948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4215, + "op": "JUMPI", + "gas": 21945, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4224, + "op": "JUMPDEST", + "gas": 21935, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4225, + "op": "PUSH1", + "gas": 21934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4227, + "op": "MLOAD", + "gas": 21931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4228, + "op": "SWAP1", + "gas": 21928, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4229, + "op": "DUP1", + "gas": 21925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4230, + "op": "DUP3", + "gas": 21922, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4231, + "op": "MSTORE", + "gas": 21919, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 4232, + "op": "DUP1", + "gas": 21913, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4233, + "op": "PUSH1", + "gas": 21910, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4235, + "op": "ADD", + "gas": 21907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4236, + "op": "PUSH1", + "gas": 21904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4238, + "op": "NOT", + "gas": 21901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4239, + "op": "AND", + "gas": 21898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4240, + "op": "PUSH1", + "gas": 21895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4242, + "op": "ADD", + "gas": 21892, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4243, + "op": "DUP3", + "gas": 21889, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4244, + "op": "ADD", + "gas": 21886, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4245, + "op": "PUSH1", + "gas": 21883, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4247, + "op": "MSTORE", + "gas": 21880, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4248, + "op": "DUP1", + "gas": 21877, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4249, + "op": "ISZERO", + "gas": 21874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4250, + "op": "PUSH2", + "gas": 21871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4253, + "op": "JUMPI", + "gas": 21868, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4254, + "op": "DUP2", + "gas": 21858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4255, + "op": "PUSH1", + "gas": 21855, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4257, + "op": "ADD", + "gas": 21852, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4258, + "op": "PUSH1", + "gas": 21849, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4260, + "op": "DUP3", + "gas": 21846, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4261, + "op": "MUL", + "gas": 21843, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 4262, + "op": "DUP1", + "gas": 21838, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4263, + "op": "CALLDATASIZE", + "gas": 21835, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4264, + "op": "DUP4", + "gas": 21833, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4265, + "op": "CALLDATACOPY", + "gas": 21830, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4266, + "op": "DUP1", + "gas": 21821, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4267, + "op": "DUP3", + "gas": 21818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4268, + "op": "ADD", + "gas": 21815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4269, + "op": "SWAP2", + "gas": 21812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4270, + "op": "POP", + "gas": 21809, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4271, + "op": "POP", + "gas": 21807, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4272, + "op": "SWAP1", + "gas": 21805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4273, + "op": "POP", + "gas": 21802, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4274, + "op": "JUMPDEST", + "gas": 21800, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4275, + "op": "POP", + "gas": 21799, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4276, + "op": "SWAP1", + "gas": 21797, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4277, + "op": "POP", + "gas": 21794, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 21792, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 21791, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 21789, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 21786, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 21783, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 21780, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4286, + "op": "PUSH1", + "gas": 21770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4288, + "op": "DUP3", + "gas": 21767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 21764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 21761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 21758, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 21755, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 21752, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 21744, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 21743, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 21741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 21738, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 21735, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 21732, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21724, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21723, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21721, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21718, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21715, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21710, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21707, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21705, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 21697, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 21696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 21693, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 21691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 21688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 21685, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 21682, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21674, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21673, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21671, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21665, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21660, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21657, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21655, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 21647, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 21646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 21643, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 21641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 21638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 21635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 21632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 21629, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 21627, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 21624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 21621, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 21618, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 21615, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 21612, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 21602, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 21601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 21598, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 21595, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 21593, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 21591, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 21583, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "SWAP2", + "gas": 21582, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4300, + "op": "POP", + "gas": 21579, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4301, + "op": "PUSH1", + "gas": 21577, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP6", + "gas": 21574, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "PUSH2", + "gas": 21571, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "SWAP2", + "gas": 21568, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "SWAP1", + "gas": 21565, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4309, + "op": "PUSH2", + "gas": 21562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4312, + "op": "JUMP", + "gas": 21559, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7456, + "op": "JUMPDEST", + "gas": 21551, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7457, + "op": "PUSH0", + "gas": 21550, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7458, + "op": "PUSH2", + "gas": 21548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7461, + "op": "DUP3", + "gas": 21545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7462, + "op": "PUSH2", + "gas": 21542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7465, + "op": "JUMP", + "gas": 21539, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21531, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21530, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21525, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21522, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21517, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21514, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21512, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 21504, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "SWAP2", + "gas": 21503, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "POP", + "gas": 21500, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7469, + "op": "PUSH2", + "gas": 21498, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7472, + "op": "DUP4", + "gas": 21495, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "PUSH2", + "gas": 21492, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 21489, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21481, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21480, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21472, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21467, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21464, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21462, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 21454, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "SWAP3", + "gas": 21453, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7479, + "op": "POP", + "gas": 21450, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7480, + "op": "DUP3", + "gas": 21448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7481, + "op": "PUSH2", + "gas": 21445, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7484, + "op": "JUMPI", + "gas": 21442, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7493, + "op": "JUMPDEST", + "gas": 21432, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7494, + "op": "DUP3", + "gas": 21431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7495, + "op": "DUP3", + "gas": 21428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7496, + "op": "MOD", + "gas": 21425, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7497, + "op": "SWAP1", + "gas": 21420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7498, + "op": "POP", + "gas": 21417, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7499, + "op": "SWAP3", + "gas": 21415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7500, + "op": "SWAP2", + "gas": 21412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7501, + "op": "POP", + "gas": 21409, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7502, + "op": "POP", + "gas": 21407, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7503, + "op": "JUMP", + "gas": 21405, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4313, + "op": "JUMPDEST", + "gas": 21397, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4314, + "op": "PUSH1", + "gas": 21396, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4316, + "op": "PUSH2", + "gas": 21393, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4319, + "op": "SWAP2", + "gas": 21390, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4320, + "op": "SWAP1", + "gas": 21387, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH2", + "gas": 21384, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "JUMP", + "gas": 21381, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 21373, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 21372, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 21370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 21367, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 21364, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 21361, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21353, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21352, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21344, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21342, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21339, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21336, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21334, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 21326, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 21325, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 21322, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 21320, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 21317, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 21314, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 21311, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21303, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21302, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21300, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21297, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21294, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21286, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21284, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 21276, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 21275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 21272, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 21270, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 21267, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 21264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 21261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 21258, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 21256, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 21253, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 21250, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 21247, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 21244, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 21241, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 21231, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 21230, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 21227, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 21224, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 21222, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 21220, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4325, + "op": "JUMPDEST", + "gas": 21212, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH1", + "gas": 21211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4328, + "op": "SHL", + "gas": 21208, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4329, + "op": "DUP2", + "gas": 21205, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4330, + "op": "DUP4", + "gas": 21202, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4331, + "op": "DUP2", + "gas": 21199, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4332, + "op": "MLOAD", + "gas": 21196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4333, + "op": "DUP2", + "gas": 21193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4334, + "op": "LT", + "gas": 21190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4335, + "op": "PUSH2", + "gas": 21187, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4338, + "op": "JUMPI", + "gas": 21184, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4347, + "op": "JUMPDEST", + "gas": 21174, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4348, + "op": "PUSH1", + "gas": 21173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4350, + "op": "ADD", + "gas": 21170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4351, + "op": "ADD", + "gas": 21167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4352, + "op": "SWAP1", + "gas": 21164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4353, + "op": "PUSH31", + "gas": 21161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "NOT", + "gas": 21158, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4386, + "op": "AND", + "gas": 21155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4387, + "op": "SWAP1", + "gas": 21152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "DUP2", + "gas": 21149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "PUSH0", + "gas": 21146, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "BYTE", + "gas": 21144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4391, + "op": "SWAP1", + "gas": 21141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4392, + "op": "MSTORE8", + "gas": 21138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4393, + "op": "POP", + "gas": 21135, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4394, + "op": "PUSH1", + "gas": 21133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "DUP6", + "gas": 21130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4397, + "op": "PUSH2", + "gas": 21127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4400, + "op": "SWAP2", + "gas": 21124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4401, + "op": "SWAP1", + "gas": 21121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4402, + "op": "PUSH2", + "gas": 21118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4405, + "op": "JUMP", + "gas": 21115, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 21107, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 21106, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 21104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 21101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 21098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 21095, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21087, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21086, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21084, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21081, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21078, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21070, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21068, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 21060, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 21059, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 21056, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 21054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 21051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 21048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 21045, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 21037, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 21036, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 21034, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 21031, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 21028, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 21026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 21023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 21020, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 21018, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 21010, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 21009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 21006, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 21004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 21001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 20998, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 20988, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 20987, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 20984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 20981, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 20976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 20973, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 20971, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 20968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 20965, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 20963, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 20961, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4406, + "op": "JUMPDEST", + "gas": 20953, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4407, + "op": "SWAP5", + "gas": 20952, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4408, + "op": "POP", + "gas": 20949, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4409, + "op": "PUSH2", + "gas": 20947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4412, + "op": "JUMP", + "gas": 20944, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 20936, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 20935, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 20933, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 20930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 20927, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 20924, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4286, + "op": "PUSH1", + "gas": 20914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4288, + "op": "DUP3", + "gas": 20911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 20908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 20905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 20902, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 20899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 20896, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 20888, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 20887, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 20885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 20882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 20879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 20876, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20868, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20867, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20859, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20851, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20849, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 20841, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 20840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 20837, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 20835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 20832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 20829, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 20826, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20818, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20817, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20809, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20801, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20799, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 20791, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 20790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 20787, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 20785, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 20782, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 20779, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 20776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 20773, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 20771, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 20768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 20765, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 20762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 20759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 20756, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 20746, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 20745, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 20742, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 20739, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 20737, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 20735, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 20727, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "SWAP2", + "gas": 20726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4300, + "op": "POP", + "gas": 20723, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4301, + "op": "PUSH1", + "gas": 20721, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP6", + "gas": 20718, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "PUSH2", + "gas": 20715, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "SWAP2", + "gas": 20712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "SWAP1", + "gas": 20709, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4309, + "op": "PUSH2", + "gas": 20706, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4312, + "op": "JUMP", + "gas": 20703, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7456, + "op": "JUMPDEST", + "gas": 20695, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7457, + "op": "PUSH0", + "gas": 20694, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7458, + "op": "PUSH2", + "gas": 20692, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7461, + "op": "DUP3", + "gas": 20689, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7462, + "op": "PUSH2", + "gas": 20686, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7465, + "op": "JUMP", + "gas": 20683, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20675, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20674, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20666, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20664, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20661, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20658, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20656, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 20648, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "SWAP2", + "gas": 20647, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "POP", + "gas": 20644, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7469, + "op": "PUSH2", + "gas": 20642, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7472, + "op": "DUP4", + "gas": 20639, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "PUSH2", + "gas": 20636, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 20633, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20625, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20624, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20622, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20616, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20614, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20608, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20606, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 20598, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "SWAP3", + "gas": 20597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7479, + "op": "POP", + "gas": 20594, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7480, + "op": "DUP3", + "gas": 20592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7481, + "op": "PUSH2", + "gas": 20589, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7484, + "op": "JUMPI", + "gas": 20586, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7493, + "op": "JUMPDEST", + "gas": 20576, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7494, + "op": "DUP3", + "gas": 20575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7495, + "op": "DUP3", + "gas": 20572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7496, + "op": "MOD", + "gas": 20569, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7497, + "op": "SWAP1", + "gas": 20564, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7498, + "op": "POP", + "gas": 20561, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7499, + "op": "SWAP3", + "gas": 20559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7500, + "op": "SWAP2", + "gas": 20556, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7501, + "op": "POP", + "gas": 20553, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7502, + "op": "POP", + "gas": 20551, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7503, + "op": "JUMP", + "gas": 20549, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4313, + "op": "JUMPDEST", + "gas": 20541, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4314, + "op": "PUSH1", + "gas": 20540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4316, + "op": "PUSH2", + "gas": 20537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4319, + "op": "SWAP2", + "gas": 20534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4320, + "op": "SWAP1", + "gas": 20531, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH2", + "gas": 20528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "JUMP", + "gas": 20525, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 20517, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 20516, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 20514, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 20511, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 20508, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 20505, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20497, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20496, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20491, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20488, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20486, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20483, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20480, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20478, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 20470, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 20469, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 20466, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 20464, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 20461, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 20458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 20455, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20447, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20446, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20444, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20441, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20438, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20436, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20433, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20430, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20428, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 20420, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 20419, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 20416, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 20414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 20411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 20408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 20405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 20402, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 20400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 20397, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 20394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 20391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 20388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 20385, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 20375, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 20374, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 20371, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 20368, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 20366, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 20364, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4325, + "op": "JUMPDEST", + "gas": 20356, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH1", + "gas": 20355, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4328, + "op": "SHL", + "gas": 20352, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4329, + "op": "DUP2", + "gas": 20349, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4330, + "op": "DUP4", + "gas": 20346, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4331, + "op": "DUP2", + "gas": 20343, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4332, + "op": "MLOAD", + "gas": 20340, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4333, + "op": "DUP2", + "gas": 20337, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4334, + "op": "LT", + "gas": 20334, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4335, + "op": "PUSH2", + "gas": 20331, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4338, + "op": "JUMPI", + "gas": 20328, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4347, + "op": "JUMPDEST", + "gas": 20318, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4348, + "op": "PUSH1", + "gas": 20317, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4350, + "op": "ADD", + "gas": 20314, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4351, + "op": "ADD", + "gas": 20311, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4352, + "op": "SWAP1", + "gas": 20308, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4353, + "op": "PUSH31", + "gas": 20305, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "NOT", + "gas": 20302, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4386, + "op": "AND", + "gas": 20299, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4387, + "op": "SWAP1", + "gas": 20296, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "DUP2", + "gas": 20293, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "PUSH0", + "gas": 20290, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "BYTE", + "gas": 20288, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4391, + "op": "SWAP1", + "gas": 20285, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4392, + "op": "MSTORE8", + "gas": 20282, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4393, + "op": "POP", + "gas": 20279, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4394, + "op": "PUSH1", + "gas": 20277, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "DUP6", + "gas": 20274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4397, + "op": "PUSH2", + "gas": 20271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4400, + "op": "SWAP2", + "gas": 20268, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4401, + "op": "SWAP1", + "gas": 20265, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4402, + "op": "PUSH2", + "gas": 20262, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4405, + "op": "JUMP", + "gas": 20259, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 20251, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 20250, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 20248, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 20245, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 20242, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 20239, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20231, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20230, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20222, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20220, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20214, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20212, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 20204, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 20203, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 20200, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 20198, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 20195, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 20192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 20189, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 20181, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 20180, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 20178, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 20175, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 20172, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 20170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 20167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 20164, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 20162, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 20154, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 20153, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 20150, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 20148, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 20145, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 20142, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 20132, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 20131, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 20128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 20125, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 20120, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 20117, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 20115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 20112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 20109, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 20107, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 20105, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4406, + "op": "JUMPDEST", + "gas": 20097, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4407, + "op": "SWAP5", + "gas": 20096, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4408, + "op": "POP", + "gas": 20093, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4409, + "op": "PUSH2", + "gas": 20091, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4412, + "op": "JUMP", + "gas": 20088, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 20080, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 20079, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 20077, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 20074, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 20071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 20068, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4413, + "op": "JUMPDEST", + "gas": 20058, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4414, + "op": "DUP1", + "gas": 20057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4415, + "op": "SWAP4", + "gas": 20054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4416, + "op": "POP", + "gas": 20051, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4417, + "op": "POP", + "gas": 20049, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4418, + "op": "POP", + "gas": 20047, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4419, + "op": "POP", + "gas": 20045, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4420, + "op": "JUMPDEST", + "gas": 20043, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4421, + "op": "SWAP2", + "gas": 20042, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4422, + "op": "SWAP1", + "gas": 20039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4423, + "op": "POP", + "gas": 20036, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4424, + "op": "JUMP", + "gas": 20034, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2660, + "op": "JUMPDEST", + "gas": 20026, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2661, + "op": "PUSH2", + "gas": 20025, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2664, + "op": "DUP6", + "gas": 20022, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2665, + "op": "PUSH2", + "gas": 20019, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2668, + "op": "JUMP", + "gas": 20016, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4080, + "op": "JUMPDEST", + "gas": 20008, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4081, + "op": "PUSH1", + "gas": 20007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4083, + "op": "PUSH0", + "gas": 20004, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4084, + "op": "DUP3", + "gas": 20002, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4085, + "op": "SUB", + "gas": 19999, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4086, + "op": "PUSH2", + "gas": 19996, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4089, + "op": "JUMPI", + "gas": 19993, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4150, + "op": "JUMPDEST", + "gas": 19983, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4151, + "op": "PUSH0", + "gas": 19982, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4152, + "op": "DUP3", + "gas": 19980, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4153, + "op": "SWAP1", + "gas": 19977, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4154, + "op": "POP", + "gas": 19974, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4155, + "op": "PUSH0", + "gas": 19972, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 19970, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 19969, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 19967, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 19964, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 19961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 19958, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4164, + "op": "DUP1", + "gas": 19948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "DUP1", + "gas": 19945, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 19942, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "SWAP1", + "gas": 19939, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4170, + "op": "PUSH2", + "gas": 19936, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "JUMP", + "gas": 19933, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7504, + "op": "JUMPDEST", + "gas": 19925, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7505, + "op": "PUSH0", + "gas": 19924, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7506, + "op": "PUSH2", + "gas": 19922, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7509, + "op": "DUP3", + "gas": 19919, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7510, + "op": "PUSH2", + "gas": 19916, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7513, + "op": "JUMP", + "gas": 19913, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 19905, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 19904, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 19902, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 19899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 19896, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 19894, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 19891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 19888, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 19886, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7514, + "op": "JUMPDEST", + "gas": 19878, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7515, + "op": "SWAP2", + "gas": 19877, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7516, + "op": "POP", + "gas": 19874, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7517, + "op": "PUSH32", + "gas": 19872, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7550, + "op": "DUP3", + "gas": 19869, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7551, + "op": "SUB", + "gas": 19866, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7552, + "op": "PUSH2", + "gas": 19863, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7555, + "op": "JUMPI", + "gas": 19860, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7564, + "op": "JUMPDEST", + "gas": 19850, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH1", + "gas": 19849, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7567, + "op": "DUP3", + "gas": 19846, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "ADD", + "gas": 19843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7569, + "op": "SWAP1", + "gas": 19840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7570, + "op": "POP", + "gas": 19837, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7571, + "op": "SWAP2", + "gas": 19835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7572, + "op": "SWAP1", + "gas": 19832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "POP", + "gas": 19829, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7574, + "op": "JUMP", + "gas": 19827, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4174, + "op": "JUMPDEST", + "gas": 19819, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4175, + "op": "SWAP2", + "gas": 19818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4176, + "op": "POP", + "gas": 19815, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4177, + "op": "POP", + "gas": 19813, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4178, + "op": "PUSH1", + "gas": 19811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4180, + "op": "DUP3", + "gas": 19808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4181, + "op": "PUSH2", + "gas": 19805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "SWAP2", + "gas": 19802, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "SWAP1", + "gas": 19799, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4186, + "op": "PUSH2", + "gas": 19796, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4189, + "op": "JUMP", + "gas": 19793, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 19785, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 19784, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 19782, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 19779, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 19776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 19773, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 19765, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 19764, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 19762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 19759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 19756, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 19754, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 19751, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 19748, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 19746, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 19738, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 19737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 19734, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 19732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 19729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 19726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 19723, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 19715, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 19714, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 19712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 19709, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 19706, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 19704, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 19701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 19698, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 19696, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 19688, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 19687, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 19684, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 19682, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 19679, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 19676, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 19666, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 19665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 19662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 19659, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 19654, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 19651, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 19649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 19646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 19643, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 19641, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 19639, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4190, + "op": "JUMPDEST", + "gas": 19631, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4191, + "op": "SWAP2", + "gas": 19630, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4192, + "op": "POP", + "gas": 19627, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4193, + "op": "PUSH2", + "gas": 19625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4196, + "op": "JUMP", + "gas": 19622, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 19614, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 19613, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 19611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 19608, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 19605, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 19602, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4164, + "op": "DUP1", + "gas": 19592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "DUP1", + "gas": 19589, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 19586, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "SWAP1", + "gas": 19583, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4170, + "op": "PUSH2", + "gas": 19580, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "JUMP", + "gas": 19577, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7504, + "op": "JUMPDEST", + "gas": 19569, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7505, + "op": "PUSH0", + "gas": 19568, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7506, + "op": "PUSH2", + "gas": 19566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7509, + "op": "DUP3", + "gas": 19563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7510, + "op": "PUSH2", + "gas": 19560, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7513, + "op": "JUMP", + "gas": 19557, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 19549, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 19548, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 19546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 19543, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 19540, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 19538, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 19535, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 19532, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 19530, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7514, + "op": "JUMPDEST", + "gas": 19522, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7515, + "op": "SWAP2", + "gas": 19521, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7516, + "op": "POP", + "gas": 19518, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7517, + "op": "PUSH32", + "gas": 19516, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7550, + "op": "DUP3", + "gas": 19513, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7551, + "op": "SUB", + "gas": 19510, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7552, + "op": "PUSH2", + "gas": 19507, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7555, + "op": "JUMPI", + "gas": 19504, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7564, + "op": "JUMPDEST", + "gas": 19494, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH1", + "gas": 19493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7567, + "op": "DUP3", + "gas": 19490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "ADD", + "gas": 19487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7569, + "op": "SWAP1", + "gas": 19484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7570, + "op": "POP", + "gas": 19481, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7571, + "op": "SWAP2", + "gas": 19479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7572, + "op": "SWAP1", + "gas": 19476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "POP", + "gas": 19473, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7574, + "op": "JUMP", + "gas": 19471, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4174, + "op": "JUMPDEST", + "gas": 19463, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4175, + "op": "SWAP2", + "gas": 19462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4176, + "op": "POP", + "gas": 19459, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4177, + "op": "POP", + "gas": 19457, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4178, + "op": "PUSH1", + "gas": 19455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4180, + "op": "DUP3", + "gas": 19452, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4181, + "op": "PUSH2", + "gas": 19449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "SWAP2", + "gas": 19446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "SWAP1", + "gas": 19443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4186, + "op": "PUSH2", + "gas": 19440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4189, + "op": "JUMP", + "gas": 19437, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 19429, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 19428, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 19426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 19423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 19420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 19417, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 19409, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 19408, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 19406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 19403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 19400, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 19398, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 19395, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 19392, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 19390, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 19382, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 19381, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 19378, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 19376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 19373, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 19370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 19367, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 19359, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 19358, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 19356, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 19353, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 19350, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 19348, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 19345, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 19342, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 19340, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 19332, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 19331, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 19328, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 19326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 19323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 19320, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 19310, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 19309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 19306, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 19303, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 19298, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 19295, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 19293, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 19290, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 19287, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 19285, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 19283, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4190, + "op": "JUMPDEST", + "gas": 19275, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4191, + "op": "SWAP2", + "gas": 19274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4192, + "op": "POP", + "gas": 19271, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4193, + "op": "PUSH2", + "gas": 19269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4196, + "op": "JUMP", + "gas": 19266, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4156, + "op": "JUMPDEST", + "gas": 19258, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4157, + "op": "PUSH0", + "gas": 19257, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4158, + "op": "DUP3", + "gas": 19255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "EQ", + "gas": 19252, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4160, + "op": "PUSH2", + "gas": 19249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPI", + "gas": 19246, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4197, + "op": "JUMPDEST", + "gas": 19236, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4198, + "op": "PUSH0", + "gas": 19235, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4199, + "op": "DUP2", + "gas": 19233, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4200, + "op": "PUSH8", + "gas": 19230, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4209, + "op": "DUP2", + "gas": 19227, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4210, + "op": "GT", + "gas": 19224, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4211, + "op": "ISZERO", + "gas": 19221, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4212, + "op": "PUSH2", + "gas": 19218, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4215, + "op": "JUMPI", + "gas": 19215, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4224, + "op": "JUMPDEST", + "gas": 19205, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4225, + "op": "PUSH1", + "gas": 19204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4227, + "op": "MLOAD", + "gas": 19201, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4228, + "op": "SWAP1", + "gas": 19198, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4229, + "op": "DUP1", + "gas": 19195, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4230, + "op": "DUP3", + "gas": 19192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4231, + "op": "MSTORE", + "gas": 19189, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 4232, + "op": "DUP1", + "gas": 19183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4233, + "op": "PUSH1", + "gas": 19180, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4235, + "op": "ADD", + "gas": 19177, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4236, + "op": "PUSH1", + "gas": 19174, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4238, + "op": "NOT", + "gas": 19171, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4239, + "op": "AND", + "gas": 19168, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4240, + "op": "PUSH1", + "gas": 19165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4242, + "op": "ADD", + "gas": 19162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4243, + "op": "DUP3", + "gas": 19159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4244, + "op": "ADD", + "gas": 19156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4245, + "op": "PUSH1", + "gas": 19153, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4247, + "op": "MSTORE", + "gas": 19150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4248, + "op": "DUP1", + "gas": 19147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4249, + "op": "ISZERO", + "gas": 19144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4250, + "op": "PUSH2", + "gas": 19141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4253, + "op": "JUMPI", + "gas": 19138, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4254, + "op": "DUP2", + "gas": 19128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4255, + "op": "PUSH1", + "gas": 19125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4257, + "op": "ADD", + "gas": 19122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4258, + "op": "PUSH1", + "gas": 19119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4260, + "op": "DUP3", + "gas": 19116, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4261, + "op": "MUL", + "gas": 19113, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 4262, + "op": "DUP1", + "gas": 19108, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4263, + "op": "CALLDATASIZE", + "gas": 19105, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4264, + "op": "DUP4", + "gas": 19103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4265, + "op": "CALLDATACOPY", + "gas": 19100, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4266, + "op": "DUP1", + "gas": 19091, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4267, + "op": "DUP3", + "gas": 19088, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4268, + "op": "ADD", + "gas": 19085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4269, + "op": "SWAP2", + "gas": 19082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4270, + "op": "POP", + "gas": 19079, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4271, + "op": "POP", + "gas": 19077, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4272, + "op": "SWAP1", + "gas": 19075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4273, + "op": "POP", + "gas": 19072, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4274, + "op": "JUMPDEST", + "gas": 19070, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4275, + "op": "POP", + "gas": 19069, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4276, + "op": "SWAP1", + "gas": 19067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4277, + "op": "POP", + "gas": 19064, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 19062, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 19061, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 19059, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 19056, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 19053, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 19050, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4286, + "op": "PUSH1", + "gas": 19040, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4288, + "op": "DUP3", + "gas": 19037, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 19034, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 19031, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 19028, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 19025, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 19022, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 19014, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 19013, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 19011, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 19008, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 19005, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 19002, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18994, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18993, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18988, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18985, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18983, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18980, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18977, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18975, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 18967, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 18966, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 18963, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 18961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 18958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 18955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 18952, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18944, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18943, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18938, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18935, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18933, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18927, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18925, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 18917, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 18916, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 18913, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 18911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 18908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 18905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 18902, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 18899, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 18897, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 18894, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 18891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 18888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 18885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 18882, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 18872, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 18871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 18868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 18865, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 18863, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 18861, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 18853, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "SWAP2", + "gas": 18852, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4300, + "op": "POP", + "gas": 18849, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4301, + "op": "PUSH1", + "gas": 18847, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP6", + "gas": 18844, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "PUSH2", + "gas": 18841, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "SWAP2", + "gas": 18838, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "SWAP1", + "gas": 18835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4309, + "op": "PUSH2", + "gas": 18832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4312, + "op": "JUMP", + "gas": 18829, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7456, + "op": "JUMPDEST", + "gas": 18821, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7457, + "op": "PUSH0", + "gas": 18820, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7458, + "op": "PUSH2", + "gas": 18818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7461, + "op": "DUP3", + "gas": 18815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7462, + "op": "PUSH2", + "gas": 18812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7465, + "op": "JUMP", + "gas": 18809, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18801, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18800, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18795, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18792, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18784, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18782, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 18774, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "SWAP2", + "gas": 18773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "POP", + "gas": 18770, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7469, + "op": "PUSH2", + "gas": 18768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7472, + "op": "DUP4", + "gas": 18765, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "PUSH2", + "gas": 18762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 18759, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18751, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18750, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18748, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18745, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18742, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18734, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18732, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 18724, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "SWAP3", + "gas": 18723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7479, + "op": "POP", + "gas": 18720, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7480, + "op": "DUP3", + "gas": 18718, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7481, + "op": "PUSH2", + "gas": 18715, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7484, + "op": "JUMPI", + "gas": 18712, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7493, + "op": "JUMPDEST", + "gas": 18702, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7494, + "op": "DUP3", + "gas": 18701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7495, + "op": "DUP3", + "gas": 18698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7496, + "op": "MOD", + "gas": 18695, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7497, + "op": "SWAP1", + "gas": 18690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7498, + "op": "POP", + "gas": 18687, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7499, + "op": "SWAP3", + "gas": 18685, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7500, + "op": "SWAP2", + "gas": 18682, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7501, + "op": "POP", + "gas": 18679, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7502, + "op": "POP", + "gas": 18677, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7503, + "op": "JUMP", + "gas": 18675, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4313, + "op": "JUMPDEST", + "gas": 18667, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4314, + "op": "PUSH1", + "gas": 18666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4316, + "op": "PUSH2", + "gas": 18663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4319, + "op": "SWAP2", + "gas": 18660, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4320, + "op": "SWAP1", + "gas": 18657, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH2", + "gas": 18654, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "JUMP", + "gas": 18651, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 18643, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 18642, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 18640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 18637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 18634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 18631, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18623, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18622, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18620, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18614, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18606, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18604, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 18596, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 18595, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 18592, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 18590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 18587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 18584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 18581, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18573, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18572, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18564, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18556, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18554, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 18546, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 18545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 18542, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 18540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 18537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 18534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 18531, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 18528, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 18526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 18523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 18520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 18517, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 18514, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 18511, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 18501, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 18500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 18497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 18494, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 18492, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 18490, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4325, + "op": "JUMPDEST", + "gas": 18482, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH1", + "gas": 18481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4328, + "op": "SHL", + "gas": 18478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4329, + "op": "DUP2", + "gas": 18475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4330, + "op": "DUP4", + "gas": 18472, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4331, + "op": "DUP2", + "gas": 18469, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4332, + "op": "MLOAD", + "gas": 18466, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4333, + "op": "DUP2", + "gas": 18463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4334, + "op": "LT", + "gas": 18460, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4335, + "op": "PUSH2", + "gas": 18457, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4338, + "op": "JUMPI", + "gas": 18454, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4347, + "op": "JUMPDEST", + "gas": 18444, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4348, + "op": "PUSH1", + "gas": 18443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4350, + "op": "ADD", + "gas": 18440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4351, + "op": "ADD", + "gas": 18437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4352, + "op": "SWAP1", + "gas": 18434, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4353, + "op": "PUSH31", + "gas": 18431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "NOT", + "gas": 18428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4386, + "op": "AND", + "gas": 18425, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4387, + "op": "SWAP1", + "gas": 18422, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "DUP2", + "gas": 18419, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "PUSH0", + "gas": 18416, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "BYTE", + "gas": 18414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4391, + "op": "SWAP1", + "gas": 18411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4392, + "op": "MSTORE8", + "gas": 18408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4393, + "op": "POP", + "gas": 18405, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4394, + "op": "PUSH1", + "gas": 18403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "DUP6", + "gas": 18400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4397, + "op": "PUSH2", + "gas": 18397, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4400, + "op": "SWAP2", + "gas": 18394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4401, + "op": "SWAP1", + "gas": 18391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4402, + "op": "PUSH2", + "gas": 18388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4405, + "op": "JUMP", + "gas": 18385, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 18377, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 18376, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 18374, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 18371, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 18368, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 18365, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18357, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18356, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18351, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18348, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18346, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18343, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18340, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18338, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 18330, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 18329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 18326, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 18324, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 18321, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 18318, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 18315, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18307, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18306, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18298, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18296, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18293, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18290, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18288, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 18280, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 18279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 18276, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 18274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 18271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 18268, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 18258, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 18257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 18254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 18251, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 18246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 18243, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 18241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 18238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 18235, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 18233, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 18231, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4406, + "op": "JUMPDEST", + "gas": 18223, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4407, + "op": "SWAP5", + "gas": 18222, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4408, + "op": "POP", + "gas": 18219, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4409, + "op": "PUSH2", + "gas": 18217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4412, + "op": "JUMP", + "gas": 18214, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 18206, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 18205, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 18203, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 18200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 18197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 18194, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4286, + "op": "PUSH1", + "gas": 18184, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4288, + "op": "DUP3", + "gas": 18181, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 18178, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 18175, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 18172, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 18169, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 18166, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 18158, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 18157, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 18155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 18152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 18149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 18146, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18138, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18137, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18129, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18121, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18119, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 18111, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 18110, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 18107, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 18105, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 18102, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 18099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 18096, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 18088, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 18087, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 18085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 18082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 18079, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 18077, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 18074, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 18071, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 18069, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 18061, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 18060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 18057, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 18055, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 18052, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 18049, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 18046, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 18043, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 18041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 18038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 18035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 18032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 18029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 18026, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 18016, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 18015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 18012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 18009, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 18007, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 18005, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 17997, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "SWAP2", + "gas": 17996, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4300, + "op": "POP", + "gas": 17993, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4301, + "op": "PUSH1", + "gas": 17991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP6", + "gas": 17988, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "PUSH2", + "gas": 17985, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "SWAP2", + "gas": 17982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "SWAP1", + "gas": 17979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4309, + "op": "PUSH2", + "gas": 17976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4312, + "op": "JUMP", + "gas": 17973, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7456, + "op": "JUMPDEST", + "gas": 17965, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7457, + "op": "PUSH0", + "gas": 17964, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7458, + "op": "PUSH2", + "gas": 17962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7461, + "op": "DUP3", + "gas": 17959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7462, + "op": "PUSH2", + "gas": 17956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7465, + "op": "JUMP", + "gas": 17953, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 17945, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 17944, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 17942, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 17939, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 17936, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 17934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 17931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 17928, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 17926, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 17918, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "SWAP2", + "gas": 17917, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "POP", + "gas": 17914, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7469, + "op": "PUSH2", + "gas": 17912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7472, + "op": "DUP4", + "gas": 17909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "PUSH2", + "gas": 17906, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 17903, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 17895, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 17894, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 17892, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 17889, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 17886, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 17884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 17881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 17878, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 17876, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 17868, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "SWAP3", + "gas": 17867, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7479, + "op": "POP", + "gas": 17864, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7480, + "op": "DUP3", + "gas": 17862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7481, + "op": "PUSH2", + "gas": 17859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7484, + "op": "JUMPI", + "gas": 17856, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7493, + "op": "JUMPDEST", + "gas": 17846, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7494, + "op": "DUP3", + "gas": 17845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7495, + "op": "DUP3", + "gas": 17842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7496, + "op": "MOD", + "gas": 17839, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7497, + "op": "SWAP1", + "gas": 17834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7498, + "op": "POP", + "gas": 17831, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7499, + "op": "SWAP3", + "gas": 17829, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7500, + "op": "SWAP2", + "gas": 17826, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7501, + "op": "POP", + "gas": 17823, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7502, + "op": "POP", + "gas": 17821, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7503, + "op": "JUMP", + "gas": 17819, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4313, + "op": "JUMPDEST", + "gas": 17811, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4314, + "op": "PUSH1", + "gas": 17810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4316, + "op": "PUSH2", + "gas": 17807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4319, + "op": "SWAP2", + "gas": 17804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4320, + "op": "SWAP1", + "gas": 17801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH2", + "gas": 17798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "JUMP", + "gas": 17795, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 17787, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 17786, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 17784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 17781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 17778, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 17775, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 17767, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 17766, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 17764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 17761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 17758, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 17756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 17753, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 17750, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 17748, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 17740, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 17739, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 17736, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 17734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 17731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 17728, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 17725, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 17717, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 17716, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 17714, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 17711, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 17708, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 17706, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 17703, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 17700, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 17698, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 17690, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 17689, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 17686, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 17684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 17681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 17678, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 17675, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 17672, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 17670, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 17667, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 17664, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 17661, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 17658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 17655, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 17645, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 17644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 17641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 17638, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 17636, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 17634, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4325, + "op": "JUMPDEST", + "gas": 17626, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH1", + "gas": 17625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4328, + "op": "SHL", + "gas": 17622, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4329, + "op": "DUP2", + "gas": 17619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4330, + "op": "DUP4", + "gas": 17616, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4331, + "op": "DUP2", + "gas": 17613, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4332, + "op": "MLOAD", + "gas": 17610, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4333, + "op": "DUP2", + "gas": 17607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4334, + "op": "LT", + "gas": 17604, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4335, + "op": "PUSH2", + "gas": 17601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4338, + "op": "JUMPI", + "gas": 17598, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4347, + "op": "JUMPDEST", + "gas": 17588, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4348, + "op": "PUSH1", + "gas": 17587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4350, + "op": "ADD", + "gas": 17584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4351, + "op": "ADD", + "gas": 17581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4352, + "op": "SWAP1", + "gas": 17578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4353, + "op": "PUSH31", + "gas": 17575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "NOT", + "gas": 17572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4386, + "op": "AND", + "gas": 17569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4387, + "op": "SWAP1", + "gas": 17566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "DUP2", + "gas": 17563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "PUSH0", + "gas": 17560, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "BYTE", + "gas": 17558, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4391, + "op": "SWAP1", + "gas": 17555, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4392, + "op": "MSTORE8", + "gas": 17552, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4393, + "op": "POP", + "gas": 17549, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4394, + "op": "PUSH1", + "gas": 17547, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "DUP6", + "gas": 17544, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4397, + "op": "PUSH2", + "gas": 17541, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4400, + "op": "SWAP2", + "gas": 17538, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4401, + "op": "SWAP1", + "gas": 17535, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4402, + "op": "PUSH2", + "gas": 17532, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4405, + "op": "JUMP", + "gas": 17529, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7575, + "op": "JUMPDEST", + "gas": 17521, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7576, + "op": "PUSH0", + "gas": 17520, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7577, + "op": "PUSH2", + "gas": 17518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7580, + "op": "DUP3", + "gas": 17515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7581, + "op": "PUSH2", + "gas": 17512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7584, + "op": "JUMP", + "gas": 17509, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 17501, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 17500, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 17498, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 17495, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 17492, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 17490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 17487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 17484, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 17482, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 17474, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "SWAP2", + "gas": 17473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "POP", + "gas": 17470, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7588, + "op": "PUSH2", + "gas": 17468, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7591, + "op": "DUP4", + "gas": 17465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "PUSH2", + "gas": 17462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 17459, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 17451, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 17450, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 17448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 17445, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 17442, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 17440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 17437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 17434, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 17432, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7596, + "op": "JUMPDEST", + "gas": 17424, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7597, + "op": "SWAP3", + "gas": 17423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7598, + "op": "POP", + "gas": 17420, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7599, + "op": "DUP3", + "gas": 17418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7600, + "op": "PUSH2", + "gas": 17415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7603, + "op": "JUMPI", + "gas": 17412, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7612, + "op": "JUMPDEST", + "gas": 17402, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7613, + "op": "DUP3", + "gas": 17401, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7614, + "op": "DUP3", + "gas": 17398, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7615, + "op": "DIV", + "gas": 17395, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7616, + "op": "SWAP1", + "gas": 17390, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7617, + "op": "POP", + "gas": 17387, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7618, + "op": "SWAP3", + "gas": 17385, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7619, + "op": "SWAP2", + "gas": 17382, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7620, + "op": "POP", + "gas": 17379, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7621, + "op": "POP", + "gas": 17377, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7622, + "op": "JUMP", + "gas": 17375, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4406, + "op": "JUMPDEST", + "gas": 17367, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4407, + "op": "SWAP5", + "gas": 17366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4408, + "op": "POP", + "gas": 17363, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4409, + "op": "PUSH2", + "gas": 17361, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4412, + "op": "JUMP", + "gas": 17358, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4278, + "op": "JUMPDEST", + "gas": 17350, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4279, + "op": "PUSH0", + "gas": 17349, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4280, + "op": "DUP6", + "gas": 17347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "EQ", + "gas": 17344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 17341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMPI", + "gas": 17338, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4413, + "op": "JUMPDEST", + "gas": 17328, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4414, + "op": "DUP1", + "gas": 17327, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4415, + "op": "SWAP4", + "gas": 17324, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4416, + "op": "POP", + "gas": 17321, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4417, + "op": "POP", + "gas": 17319, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4418, + "op": "POP", + "gas": 17317, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4419, + "op": "POP", + "gas": 17315, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4420, + "op": "JUMPDEST", + "gas": 17313, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4421, + "op": "SWAP2", + "gas": 17312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4422, + "op": "SWAP1", + "gas": 17309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4423, + "op": "POP", + "gas": 17306, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4424, + "op": "JUMP", + "gas": 17304, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2669, + "op": "JUMPDEST", + "gas": 17296, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2670, + "op": "PUSH1", + "gas": 17295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2672, + "op": "MLOAD", + "gas": 17292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2673, + "op": "PUSH1", + "gas": 17289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2675, + "op": "ADD", + "gas": 17286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2676, + "op": "PUSH2", + "gas": 17283, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2679, + "op": "SWAP4", + "gas": 17280, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2680, + "op": "SWAP3", + "gas": 17277, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2681, + "op": "SWAP2", + "gas": 17274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2682, + "op": "SWAP1", + "gas": 17271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2683, + "op": "PUSH2", + "gas": 17268, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2686, + "op": "JUMP", + "gas": 17265, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7279, + "op": "JUMPDEST", + "gas": 17257, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7280, + "op": "PUSH0", + "gas": 17256, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7281, + "op": "PUSH2", + "gas": 17254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7284, + "op": "DUP3", + "gas": 17251, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7285, + "op": "PUSH2", + "gas": 17248, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7288, + "op": "JUMP", + "gas": 17245, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7171, + "op": "JUMPDEST", + "gas": 17237, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7172, + "op": "PUSH0", + "gas": 17236, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7173, + "op": "PUSH2", + "gas": 17234, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7176, + "op": "PUSH1", + "gas": 17231, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7178, + "op": "DUP4", + "gas": 17228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7179, + "op": "PUSH2", + "gas": 17225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7182, + "op": "JUMP", + "gas": 17222, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 17214, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 17213, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 17211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 17208, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 17205, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 17203, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 17200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 17197, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 17195, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 17193, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7183, + "op": "JUMPDEST", + "gas": 17185, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7184, + "op": "SWAP2", + "gas": 17184, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7185, + "op": "POP", + "gas": 17181, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7186, + "op": "PUSH2", + "gas": 17179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7189, + "op": "DUP3", + "gas": 17176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7190, + "op": "PUSH2", + "gas": 17173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7193, + "op": "JUMP", + "gas": 17170, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7131, + "op": "JUMPDEST", + "gas": 17162, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7132, + "op": "PUSH32", + "gas": 17161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7165, + "op": "PUSH0", + "gas": 17158, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7166, + "op": "DUP3", + "gas": 17156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7167, + "op": "ADD", + "gas": 17153, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7168, + "op": "MSTORE", + "gas": 17150, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 7169, + "op": "POP", + "gas": 17141, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7170, + "op": "JUMP", + "gas": 17139, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7194, + "op": "JUMPDEST", + "gas": 17131, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7195, + "op": "PUSH1", + "gas": 17130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7197, + "op": "DUP3", + "gas": 17127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7198, + "op": "ADD", + "gas": 17124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7199, + "op": "SWAP1", + "gas": 17121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7200, + "op": "POP", + "gas": 17118, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7201, + "op": "SWAP2", + "gas": 17116, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7202, + "op": "SWAP1", + "gas": 17113, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7203, + "op": "POP", + "gas": 17110, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7204, + "op": "JUMP", + "gas": 17108, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7289, + "op": "JUMPDEST", + "gas": 17100, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7290, + "op": "SWAP2", + "gas": 17099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7291, + "op": "POP", + "gas": 17096, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7292, + "op": "PUSH2", + "gas": 17094, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7295, + "op": "DUP3", + "gas": 17091, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7296, + "op": "DUP7", + "gas": 17088, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7297, + "op": "PUSH2", + "gas": 17085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7300, + "op": "JUMP", + "gas": 17082, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 17074, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 17073, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 17071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 17068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 17065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 17062, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 17054, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 17053, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 17051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 17048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 17045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 17042, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 17040, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 17037, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 17034, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 17032, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 17024, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 17023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 17020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 17017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 17014, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 17011, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 17003, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 17002, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 17000, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 16997, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 16994, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 16992, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 16989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 16986, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 16984, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 16982, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 16974, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 16973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 16970, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 16968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 16965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 16962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 16959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 16956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 16953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 16950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 16947, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 16939, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 16938, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 16935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 16932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 16929, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 16923, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 16921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 16918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 16915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 16912, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 16906, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 16904, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 16902, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 16900, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 16892, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 16891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 16888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 16885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 16882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 16879, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 16877, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 16875, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 16872, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 16869, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 16867, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 16865, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7301, + "op": "JUMPDEST", + "gas": 16857, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7302, + "op": "SWAP2", + "gas": 16856, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7303, + "op": "POP", + "gas": 16853, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7304, + "op": "PUSH2", + "gas": 16851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7307, + "op": "DUP3", + "gas": 16848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7308, + "op": "PUSH2", + "gas": 16845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7311, + "op": "JUMP", + "gas": 16842, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7245, + "op": "JUMPDEST", + "gas": 16834, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7246, + "op": "PUSH0", + "gas": 16833, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7247, + "op": "PUSH2", + "gas": 16831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7250, + "op": "PUSH1", + "gas": 16828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7252, + "op": "DUP4", + "gas": 16825, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7253, + "op": "PUSH2", + "gas": 16822, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7256, + "op": "JUMP", + "gas": 16819, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 16811, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 16810, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 16808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 16805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 16802, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 16800, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 16797, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 16794, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 16792, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 16790, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7257, + "op": "JUMPDEST", + "gas": 16782, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7258, + "op": "SWAP2", + "gas": 16781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7259, + "op": "POP", + "gas": 16778, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7260, + "op": "PUSH2", + "gas": 16776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7263, + "op": "DUP3", + "gas": 16773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7264, + "op": "PUSH2", + "gas": 16770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7267, + "op": "JUMP", + "gas": 16767, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7205, + "op": "JUMPDEST", + "gas": 16759, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7206, + "op": "PUSH32", + "gas": 16758, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7239, + "op": "PUSH0", + "gas": 16755, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7240, + "op": "DUP3", + "gas": 16753, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7241, + "op": "ADD", + "gas": 16750, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7242, + "op": "MSTORE", + "gas": 16747, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7243, + "op": "POP", + "gas": 16744, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7244, + "op": "JUMP", + "gas": 16742, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7268, + "op": "JUMPDEST", + "gas": 16734, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7269, + "op": "PUSH1", + "gas": 16733, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7271, + "op": "DUP3", + "gas": 16730, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7272, + "op": "ADD", + "gas": 16727, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7273, + "op": "SWAP1", + "gas": 16724, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7274, + "op": "POP", + "gas": 16721, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7275, + "op": "SWAP2", + "gas": 16719, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7276, + "op": "SWAP1", + "gas": 16716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7277, + "op": "POP", + "gas": 16713, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7278, + "op": "JUMP", + "gas": 16711, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7312, + "op": "JUMPDEST", + "gas": 16703, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7313, + "op": "SWAP2", + "gas": 16702, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7314, + "op": "POP", + "gas": 16699, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7315, + "op": "PUSH2", + "gas": 16697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7318, + "op": "DUP3", + "gas": 16694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7319, + "op": "DUP6", + "gas": 16691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7320, + "op": "PUSH2", + "gas": 16688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7323, + "op": "JUMP", + "gas": 16685, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 16677, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 16676, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 16674, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 16671, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 16668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 16665, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 16657, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 16656, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 16654, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 16651, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 16648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 16645, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 16643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 16640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 16637, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 16635, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 16627, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 16626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 16623, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 16620, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 16617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 16614, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 16606, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 16605, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 16603, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 16600, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 16597, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 16595, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 16592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 16589, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 16587, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 16585, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 16577, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 16576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 16573, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 16571, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 16568, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 16565, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 16562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 16559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 16556, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 16553, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 16550, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 16542, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 16541, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 16538, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 16535, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 16532, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 16526, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 16524, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 16521, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 16518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 16515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 16512, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 16510, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 16508, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 16506, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 16498, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 16497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 16494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 16491, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 16488, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 16485, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 16483, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 16481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 16478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 16475, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 16473, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 16471, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7324, + "op": "JUMPDEST", + "gas": 16463, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7325, + "op": "SWAP2", + "gas": 16462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7326, + "op": "POP", + "gas": 16459, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7327, + "op": "PUSH2", + "gas": 16457, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7330, + "op": "DUP3", + "gas": 16454, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7331, + "op": "PUSH2", + "gas": 16451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7334, + "op": "JUMP", + "gas": 16448, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7245, + "op": "JUMPDEST", + "gas": 16440, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7246, + "op": "PUSH0", + "gas": 16439, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7247, + "op": "PUSH2", + "gas": 16437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7250, + "op": "PUSH1", + "gas": 16434, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7252, + "op": "DUP4", + "gas": 16431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7253, + "op": "PUSH2", + "gas": 16428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7256, + "op": "JUMP", + "gas": 16425, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 16417, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 16416, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 16414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 16411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 16408, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 16406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 16403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 16400, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 16398, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 16396, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7257, + "op": "JUMPDEST", + "gas": 16388, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7258, + "op": "SWAP2", + "gas": 16387, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7259, + "op": "POP", + "gas": 16384, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7260, + "op": "PUSH2", + "gas": 16382, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7263, + "op": "DUP3", + "gas": 16379, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7264, + "op": "PUSH2", + "gas": 16376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7267, + "op": "JUMP", + "gas": 16373, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7205, + "op": "JUMPDEST", + "gas": 16365, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7206, + "op": "PUSH32", + "gas": 16364, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7239, + "op": "PUSH0", + "gas": 16361, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7240, + "op": "DUP3", + "gas": 16359, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7241, + "op": "ADD", + "gas": 16356, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7242, + "op": "MSTORE", + "gas": 16353, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7243, + "op": "POP", + "gas": 16350, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7244, + "op": "JUMP", + "gas": 16348, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7268, + "op": "JUMPDEST", + "gas": 16340, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7269, + "op": "PUSH1", + "gas": 16339, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7271, + "op": "DUP3", + "gas": 16336, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7272, + "op": "ADD", + "gas": 16333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7273, + "op": "SWAP1", + "gas": 16330, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7274, + "op": "POP", + "gas": 16327, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7275, + "op": "SWAP2", + "gas": 16325, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7276, + "op": "SWAP1", + "gas": 16322, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7277, + "op": "POP", + "gas": 16319, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7278, + "op": "JUMP", + "gas": 16317, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7335, + "op": "JUMPDEST", + "gas": 16309, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7336, + "op": "SWAP2", + "gas": 16308, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7337, + "op": "POP", + "gas": 16305, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7338, + "op": "PUSH2", + "gas": 16303, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7341, + "op": "DUP3", + "gas": 16300, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7342, + "op": "DUP5", + "gas": 16297, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7343, + "op": "PUSH2", + "gas": 16294, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7346, + "op": "JUMP", + "gas": 16291, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 16283, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 16282, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 16280, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 16277, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 16274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 16271, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 16263, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 16262, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 16260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 16257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 16254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 16251, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 16249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 16246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 16243, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 16241, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 16233, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 16232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 16229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 16226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 16223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 16220, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 16212, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 16211, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 16209, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 16206, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 16203, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 16201, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 16198, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 16195, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 16193, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 16191, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 16183, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 16182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 16179, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 16177, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 16174, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 16171, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 16168, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 16165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 16162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 16159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 16156, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 16148, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 16147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 16144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 16141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 16138, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 16132, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 16130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 16127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 16124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 16121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 16118, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 16116, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 16114, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 16112, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 16104, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 16103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 16100, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 16097, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 16094, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 16091, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 16089, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 16087, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 16084, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 16081, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 16079, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 16077, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7347, + "op": "JUMPDEST", + "gas": 16069, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7348, + "op": "SWAP2", + "gas": 16068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7349, + "op": "POP", + "gas": 16065, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7350, + "op": "DUP2", + "gas": 16063, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7351, + "op": "SWAP1", + "gas": 16060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7352, + "op": "POP", + "gas": 16057, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7353, + "op": "SWAP5", + "gas": 16055, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7354, + "op": "SWAP4", + "gas": 16052, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7355, + "op": "POP", + "gas": 16049, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7356, + "op": "POP", + "gas": 16047, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7357, + "op": "POP", + "gas": 16045, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7358, + "op": "POP", + "gas": 16043, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7359, + "op": "JUMP", + "gas": 16041, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2687, + "op": "JUMPDEST", + "gas": 16033, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2688, + "op": "PUSH1", + "gas": 16032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2690, + "op": "MLOAD", + "gas": 16029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2691, + "op": "PUSH1", + "gas": 16026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2693, + "op": "DUP2", + "gas": 16023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2694, + "op": "DUP4", + "gas": 16020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2695, + "op": "SUB", + "gas": 16017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2696, + "op": "SUB", + "gas": 16014, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2697, + "op": "DUP2", + "gas": 16011, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2698, + "op": "MSTORE", + "gas": 16008, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2699, + "op": "SWAP1", + "gas": 16005, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2700, + "op": "PUSH1", + "gas": 16002, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2702, + "op": "MSTORE", + "gas": 15999, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2703, + "op": "SWAP1", + "gas": 15996, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2704, + "op": "POP", + "gas": 15993, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2705, + "op": "PUSH0", + "gas": 15991, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2706, + "op": "DUP4", + "gas": 15989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2707, + "op": "DUP6", + "gas": 15986, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2708, + "op": "DUP8", + "gas": 15983, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2709, + "op": "PUSH1", + "gas": 15980, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2711, + "op": "PUSH2", + "gas": 15977, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2714, + "op": "SWAP2", + "gas": 15974, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2715, + "op": "SWAP1", + "gas": 15971, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2716, + "op": "PUSH2", + "gas": 15968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2719, + "op": "JUMP", + "gas": 15965, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 15957, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 15956, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 15954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 15951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 15948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 15945, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15937, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15936, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 15928, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 15926, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 15923, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 15920, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 15918, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 15910, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 15909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 15906, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 15904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 15901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 15898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 15895, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15887, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15886, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 15878, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 15876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 15873, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 15870, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 15868, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 15860, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 15859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 15856, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 15854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 15851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 15848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 15845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 15842, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 15840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 15837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 15834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 15831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 15828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 15825, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 15815, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 15814, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 15811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 15808, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 15806, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 15804, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2720, + "op": "JUMPDEST", + "gas": 15796, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2721, + "op": "PUSH2", + "gas": 15795, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2724, + "op": "SWAP2", + "gas": 15792, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2725, + "op": "SWAP1", + "gas": 15789, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2726, + "op": "PUSH2", + "gas": 15786, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2729, + "op": "JUMP", + "gas": 15783, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 15775, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 15774, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 15772, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 15769, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 15766, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 15763, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15755, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15754, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15752, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15749, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 15746, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 15744, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 15741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 15738, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 15736, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 15728, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 15727, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 15724, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 15722, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 15719, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 15716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 15713, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15705, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15704, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15702, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15699, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 15696, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 15694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 15691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 15688, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 15686, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 15678, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 15677, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 15674, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 15672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 15669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 15666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 15663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 15660, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 15658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 15655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 15652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 15649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 15646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 15643, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 15633, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 15632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 15629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 15626, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 15624, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 15622, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2730, + "op": "JUMPDEST", + "gas": 15614, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2731, + "op": "PUSH2", + "gas": 15613, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2734, + "op": "SWAP2", + "gas": 15610, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2735, + "op": "SWAP1", + "gas": 15607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2736, + "op": "PUSH2", + "gas": 15604, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2739, + "op": "JUMP", + "gas": 15601, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 15593, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 15592, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 15590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 15587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 15584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 15581, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15573, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15572, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 15564, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 15562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 15559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 15556, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 15554, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 15546, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 15545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 15542, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 15540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 15537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 15534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 15531, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15523, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15522, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15517, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 15514, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 15512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 15509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 15506, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 15504, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 15496, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 15495, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 15492, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 15490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 15487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 15484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 15481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 15478, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 15476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 15473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 15470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 15467, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 15464, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 15461, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 15451, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 15450, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 15447, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 15444, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 15442, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 15440, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2740, + "op": "JUMPDEST", + "gas": 15432, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2741, + "op": "PUSH8", + "gas": 15431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2750, + "op": "DUP2", + "gas": 15428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2751, + "op": "GT", + "gas": 15425, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2752, + "op": "ISZERO", + "gas": 15422, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2753, + "op": "PUSH2", + "gas": 15419, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2756, + "op": "JUMPI", + "gas": 15416, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2765, + "op": "JUMPDEST", + "gas": 15406, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2766, + "op": "PUSH1", + "gas": 15405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2768, + "op": "MLOAD", + "gas": 15402, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2769, + "op": "SWAP1", + "gas": 15399, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2770, + "op": "DUP1", + "gas": 15396, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2771, + "op": "DUP3", + "gas": 15393, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2772, + "op": "MSTORE", + "gas": 15390, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2773, + "op": "DUP1", + "gas": 15387, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2774, + "op": "PUSH1", + "gas": 15384, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2776, + "op": "ADD", + "gas": 15381, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2777, + "op": "PUSH1", + "gas": 15378, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2779, + "op": "NOT", + "gas": 15375, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2780, + "op": "AND", + "gas": 15372, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2781, + "op": "PUSH1", + "gas": 15369, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2783, + "op": "ADD", + "gas": 15366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2784, + "op": "DUP3", + "gas": 15363, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2785, + "op": "ADD", + "gas": 15360, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2786, + "op": "PUSH1", + "gas": 15357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2788, + "op": "MSTORE", + "gas": 15354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2789, + "op": "DUP1", + "gas": 15351, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2790, + "op": "ISZERO", + "gas": 15348, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2791, + "op": "PUSH2", + "gas": 15345, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2794, + "op": "JUMPI", + "gas": 15342, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2795, + "op": "DUP2", + "gas": 15332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2796, + "op": "PUSH1", + "gas": 15329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2798, + "op": "ADD", + "gas": 15326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2799, + "op": "PUSH1", + "gas": 15323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2801, + "op": "DUP3", + "gas": 15320, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2802, + "op": "MUL", + "gas": 15317, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 2803, + "op": "DUP1", + "gas": 15312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2804, + "op": "CALLDATASIZE", + "gas": 15309, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2805, + "op": "DUP4", + "gas": 15307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2806, + "op": "CALLDATACOPY", + "gas": 15304, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 2807, + "op": "DUP1", + "gas": 15262, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2808, + "op": "DUP3", + "gas": 15259, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2809, + "op": "ADD", + "gas": 15256, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2810, + "op": "SWAP2", + "gas": 15253, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2811, + "op": "POP", + "gas": 15250, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2812, + "op": "POP", + "gas": 15248, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2813, + "op": "SWAP1", + "gas": 15246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2814, + "op": "POP", + "gas": 15243, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2815, + "op": "JUMPDEST", + "gas": 15241, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2816, + "op": "POP", + "gas": 15240, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2817, + "op": "SWAP1", + "gas": 15238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2818, + "op": "POP", + "gas": 15235, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2819, + "op": "PUSH0", + "gas": 15233, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2820, + "op": "DUP7", + "gas": 15231, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2821, + "op": "PUSH0", + "gas": 15228, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2822, + "op": "SHL", + "gas": 15226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2823, + "op": "SWAP1", + "gas": 15223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2824, + "op": "POP", + "gas": 15220, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2825, + "op": "PUSH0", + "gas": 15218, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2826, + "op": "DUP7", + "gas": 15216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2827, + "op": "PUSH0", + "gas": 15213, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2828, + "op": "SHL", + "gas": 15211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2829, + "op": "SWAP1", + "gas": 15208, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2830, + "op": "POP", + "gas": 15205, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2831, + "op": "PUSH0", + "gas": 15203, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2832, + "op": "DUP7", + "gas": 15201, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2833, + "op": "PUSH0", + "gas": 15198, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2834, + "op": "SHL", + "gas": 15196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2835, + "op": "SWAP1", + "gas": 15193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2836, + "op": "POP", + "gas": 15190, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2837, + "op": "DUP3", + "gas": 15188, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2838, + "op": "PUSH1", + "gas": 15185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2840, + "op": "DUP6", + "gas": 15182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2841, + "op": "ADD", + "gas": 15179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2842, + "op": "MSTORE", + "gas": 15176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2843, + "op": "DUP2", + "gas": 15173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2844, + "op": "PUSH1", + "gas": 15170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2846, + "op": "DUP6", + "gas": 15167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2847, + "op": "ADD", + "gas": 15164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2848, + "op": "MSTORE", + "gas": 15161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2849, + "op": "DUP1", + "gas": 15158, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2850, + "op": "PUSH1", + "gas": 15155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2852, + "op": "DUP6", + "gas": 15152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2853, + "op": "ADD", + "gas": 15149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2854, + "op": "MSTORE", + "gas": 15146, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2855, + "op": "PUSH0", + "gas": 15143, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2856, + "op": "DUP10", + "gas": 15141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2857, + "op": "GT", + "gas": 15138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2858, + "op": "ISZERO", + "gas": 15135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2859, + "op": "PUSH2", + "gas": 15132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2862, + "op": "JUMPI", + "gas": 15129, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2863, + "op": "PUSH1", + "gas": 15119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2865, + "op": "PUSH1", + "gas": 15116, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2867, + "op": "SHL", + "gas": 15113, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2868, + "op": "DUP5", + "gas": 15110, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2869, + "op": "PUSH1", + "gas": 15107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2871, + "op": "DUP12", + "gas": 15104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2872, + "op": "PUSH1", + "gas": 15101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2874, + "op": "PUSH2", + "gas": 15098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2877, + "op": "SWAP2", + "gas": 15095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2878, + "op": "SWAP1", + "gas": 15092, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2879, + "op": "PUSH2", + "gas": 15089, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2882, + "op": "JUMP", + "gas": 15086, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 15078, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 15077, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 15075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 15072, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 15069, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 15066, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15058, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15057, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15055, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15052, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 15049, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 15047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 15044, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 15041, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 15039, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 15031, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 15030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 15027, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 15025, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 15022, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 15019, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 15016, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 15008, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 15007, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 15005, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 15002, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14999, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14997, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14994, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14991, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14989, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 14981, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 14980, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 14977, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 14975, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 14972, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 14969, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 14966, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 14963, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 14961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 14958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 14955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 14952, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 14949, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 14946, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 14936, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 14935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 14932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 14929, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 14927, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 14925, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2883, + "op": "JUMPDEST", + "gas": 14917, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2884, + "op": "PUSH2", + "gas": 14916, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2887, + "op": "SWAP2", + "gas": 14913, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2888, + "op": "SWAP1", + "gas": 14910, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2889, + "op": "PUSH2", + "gas": 14907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2892, + "op": "JUMP", + "gas": 14904, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 14896, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 14895, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 14893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 14890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 14887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 14884, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14876, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14875, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14873, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14870, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14867, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14859, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14857, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 14849, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 14848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 14845, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 14843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 14840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 14837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 14834, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14826, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14825, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14823, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14820, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14817, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14809, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14807, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 14799, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 14798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 14795, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 14793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 14790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 14787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 14784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 14781, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 14779, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 14776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 14773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 14770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 14767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 14764, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 14754, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 14753, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 14750, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 14747, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 14745, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 14743, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2893, + "op": "JUMPDEST", + "gas": 14735, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2894, + "op": "DUP2", + "gas": 14734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2895, + "op": "MLOAD", + "gas": 14731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2896, + "op": "DUP2", + "gas": 14728, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2897, + "op": "LT", + "gas": 14725, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2898, + "op": "PUSH2", + "gas": 14722, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2901, + "op": "JUMPI", + "gas": 14719, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2910, + "op": "JUMPDEST", + "gas": 14709, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2911, + "op": "PUSH1", + "gas": 14708, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2913, + "op": "ADD", + "gas": 14705, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2914, + "op": "ADD", + "gas": 14702, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2915, + "op": "SWAP1", + "gas": 14699, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2916, + "op": "PUSH31", + "gas": 14696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2948, + "op": "NOT", + "gas": 14693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2949, + "op": "AND", + "gas": 14690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2950, + "op": "SWAP1", + "gas": 14687, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2951, + "op": "DUP2", + "gas": 14684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2952, + "op": "PUSH0", + "gas": 14681, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2953, + "op": "BYTE", + "gas": 14679, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2954, + "op": "SWAP1", + "gas": 14676, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2955, + "op": "MSTORE8", + "gas": 14673, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2956, + "op": "POP", + "gas": 14670, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2957, + "op": "JUMPDEST", + "gas": 14668, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2958, + "op": "PUSH0", + "gas": 14667, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 2959, + "op": "DUP9", + "gas": 14665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2960, + "op": "GT", + "gas": 14662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2961, + "op": "ISZERO", + "gas": 14659, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2962, + "op": "PUSH2", + "gas": 14656, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2965, + "op": "JUMPI", + "gas": 14653, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 2966, + "op": "PUSH1", + "gas": 14643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2968, + "op": "PUSH1", + "gas": 14640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2970, + "op": "SHL", + "gas": 14637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2971, + "op": "DUP5", + "gas": 14634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2972, + "op": "PUSH1", + "gas": 14631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2974, + "op": "DUP11", + "gas": 14628, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2975, + "op": "DUP13", + "gas": 14625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2976, + "op": "PUSH1", + "gas": 14622, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2978, + "op": "PUSH2", + "gas": 14619, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2981, + "op": "SWAP2", + "gas": 14616, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2982, + "op": "SWAP1", + "gas": 14613, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2983, + "op": "PUSH2", + "gas": 14610, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2986, + "op": "JUMP", + "gas": 14607, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 14599, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 14598, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 14596, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 14593, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 14590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 14587, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14579, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14578, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14570, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14568, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14565, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14562, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14560, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 14552, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 14551, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 14548, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 14546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 14543, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 14540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 14537, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14529, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14528, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14520, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14512, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14510, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 14502, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 14501, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 14498, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 14496, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 14493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 14490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 14487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 14484, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 14482, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 14479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 14476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 14473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 14470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 14467, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 14457, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 14456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 14453, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 14450, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 14448, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 14446, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2987, + "op": "JUMPDEST", + "gas": 14438, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2988, + "op": "PUSH2", + "gas": 14437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2991, + "op": "SWAP2", + "gas": 14434, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2992, + "op": "SWAP1", + "gas": 14431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2993, + "op": "PUSH2", + "gas": 14428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2996, + "op": "JUMP", + "gas": 14425, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 14417, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 14416, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 14414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 14411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 14408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 14405, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14397, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14396, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14388, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14386, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14383, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14380, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14378, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 14370, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 14369, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 14366, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 14364, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 14361, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 14358, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 14355, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14347, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14346, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14338, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14336, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14330, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14328, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 14320, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 14319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 14316, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 14314, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 14311, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 14308, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 14305, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 14302, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 14300, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 14297, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 14294, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 14291, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 14288, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 14285, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 14275, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 14274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 14271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 14268, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 14266, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 14264, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 2997, + "op": "JUMPDEST", + "gas": 14256, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 2998, + "op": "PUSH2", + "gas": 14255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3001, + "op": "SWAP2", + "gas": 14252, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3002, + "op": "SWAP1", + "gas": 14249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3003, + "op": "PUSH2", + "gas": 14246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3006, + "op": "JUMP", + "gas": 14243, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 14235, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 14234, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 14232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 14229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 14226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 14223, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14215, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14214, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14212, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14209, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14206, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14201, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14198, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14196, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 14188, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 14187, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 14184, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 14182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 14179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 14176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 14173, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 14165, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 14164, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 14162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 14159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 14156, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 14154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 14151, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 14148, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 14146, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 14138, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 14137, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 14134, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 14132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 14129, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 14126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 14123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 14120, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 14118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 14115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 14112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 14109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 14106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 14103, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 14093, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 14092, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 14089, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 14086, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 14084, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 14082, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3007, + "op": "JUMPDEST", + "gas": 14074, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3008, + "op": "DUP2", + "gas": 14073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3009, + "op": "MLOAD", + "gas": 14070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3010, + "op": "DUP2", + "gas": 14067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3011, + "op": "LT", + "gas": 14064, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3012, + "op": "PUSH2", + "gas": 14061, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3015, + "op": "JUMPI", + "gas": 14058, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 3024, + "op": "JUMPDEST", + "gas": 14048, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3025, + "op": "PUSH1", + "gas": 14047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3027, + "op": "ADD", + "gas": 14044, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3028, + "op": "ADD", + "gas": 14041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3029, + "op": "SWAP1", + "gas": 14038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3030, + "op": "PUSH31", + "gas": 14035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3062, + "op": "NOT", + "gas": 14032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3063, + "op": "AND", + "gas": 14029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3064, + "op": "SWAP1", + "gas": 14026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3065, + "op": "DUP2", + "gas": 14023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3066, + "op": "PUSH0", + "gas": 14020, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3067, + "op": "BYTE", + "gas": 14018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3068, + "op": "SWAP1", + "gas": 14015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3069, + "op": "MSTORE8", + "gas": 14012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3070, + "op": "POP", + "gas": 14009, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3071, + "op": "JUMPDEST", + "gas": 14007, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3072, + "op": "PUSH0", + "gas": 14006, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3073, + "op": "DUP8", + "gas": 14004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3074, + "op": "GT", + "gas": 14001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3075, + "op": "ISZERO", + "gas": 13998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3076, + "op": "PUSH2", + "gas": 13995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3079, + "op": "JUMPI", + "gas": 13992, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 3080, + "op": "PUSH1", + "gas": 13982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3082, + "op": "PUSH1", + "gas": 13979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3084, + "op": "SHL", + "gas": 13976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3085, + "op": "DUP5", + "gas": 13973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3086, + "op": "PUSH1", + "gas": 13970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3088, + "op": "DUP10", + "gas": 13967, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3089, + "op": "DUP12", + "gas": 13964, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3090, + "op": "DUP14", + "gas": 13961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3091, + "op": "PUSH1", + "gas": 13958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3093, + "op": "PUSH2", + "gas": 13955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3096, + "op": "SWAP2", + "gas": 13952, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3097, + "op": "SWAP1", + "gas": 13949, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3098, + "op": "PUSH2", + "gas": 13946, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3101, + "op": "JUMP", + "gas": 13943, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 13935, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 13934, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 13932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 13929, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 13926, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 13923, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13915, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13914, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13906, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13898, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13896, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 13888, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 13887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 13884, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 13882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 13879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 13876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 13873, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13865, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13864, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13856, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13848, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13846, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 13838, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 13837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 13834, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 13832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 13829, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 13826, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 13823, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 13820, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 13818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 13815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 13812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 13809, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 13806, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 13803, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 13793, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 13792, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 13789, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 13786, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 13784, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 13782, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3102, + "op": "JUMPDEST", + "gas": 13774, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3103, + "op": "PUSH2", + "gas": 13773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3106, + "op": "SWAP2", + "gas": 13770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3107, + "op": "SWAP1", + "gas": 13767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3108, + "op": "PUSH2", + "gas": 13764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3111, + "op": "JUMP", + "gas": 13761, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 13753, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 13752, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 13750, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 13747, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 13744, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 13741, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13733, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13732, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13730, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13727, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13724, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13722, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13719, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13716, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13714, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 13706, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 13705, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 13702, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 13700, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 13697, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 13694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 13691, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13683, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13682, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13680, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13677, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13674, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13666, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13664, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 13656, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 13655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 13652, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 13650, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 13647, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 13644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 13641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 13638, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 13636, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 13633, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 13630, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 13627, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 13624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 13621, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 13611, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 13610, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 13607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 13604, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 13602, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 13600, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3112, + "op": "JUMPDEST", + "gas": 13592, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3113, + "op": "PUSH2", + "gas": 13591, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3116, + "op": "SWAP2", + "gas": 13588, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3117, + "op": "SWAP1", + "gas": 13585, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3118, + "op": "PUSH2", + "gas": 13582, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3121, + "op": "JUMP", + "gas": 13579, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6786, + "op": "JUMPDEST", + "gas": 13571, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6787, + "op": "PUSH0", + "gas": 13570, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6788, + "op": "PUSH2", + "gas": 13568, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6791, + "op": "DUP3", + "gas": 13565, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6792, + "op": "PUSH2", + "gas": 13562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6795, + "op": "JUMP", + "gas": 13559, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13551, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13550, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13542, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13534, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13532, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6796, + "op": "JUMPDEST", + "gas": 13524, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6797, + "op": "SWAP2", + "gas": 13523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6798, + "op": "POP", + "gas": 13520, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6799, + "op": "PUSH2", + "gas": 13518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6802, + "op": "DUP4", + "gas": 13515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6803, + "op": "PUSH2", + "gas": 13512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6806, + "op": "JUMP", + "gas": 13509, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13501, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13500, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13498, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13495, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13492, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13484, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13482, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6807, + "op": "JUMPDEST", + "gas": 13474, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6808, + "op": "SWAP3", + "gas": 13473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6809, + "op": "POP", + "gas": 13470, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6810, + "op": "DUP3", + "gas": 13468, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6811, + "op": "DUP3", + "gas": 13465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6812, + "op": "ADD", + "gas": 13462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6813, + "op": "SWAP1", + "gas": 13459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6814, + "op": "POP", + "gas": 13456, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6815, + "op": "DUP1", + "gas": 13454, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6816, + "op": "DUP3", + "gas": 13451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6817, + "op": "GT", + "gas": 13448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6818, + "op": "ISZERO", + "gas": 13445, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6819, + "op": "PUSH2", + "gas": 13442, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6822, + "op": "JUMPI", + "gas": 13439, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6831, + "op": "JUMPDEST", + "gas": 13429, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6832, + "op": "SWAP3", + "gas": 13428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6833, + "op": "SWAP2", + "gas": 13425, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6834, + "op": "POP", + "gas": 13422, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6835, + "op": "POP", + "gas": 13420, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6836, + "op": "JUMP", + "gas": 13418, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3122, + "op": "JUMPDEST", + "gas": 13410, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3123, + "op": "PUSH2", + "gas": 13409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3126, + "op": "SWAP2", + "gas": 13406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3127, + "op": "SWAP1", + "gas": 13403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3128, + "op": "PUSH2", + "gas": 13400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3131, + "op": "JUMP", + "gas": 13397, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7360, + "op": "JUMPDEST", + "gas": 13389, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7361, + "op": "PUSH0", + "gas": 13388, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7362, + "op": "PUSH2", + "gas": 13386, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7365, + "op": "DUP3", + "gas": 13383, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7366, + "op": "PUSH2", + "gas": 13380, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7369, + "op": "JUMP", + "gas": 13377, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13369, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13368, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13363, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13360, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13358, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13355, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13352, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13350, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7370, + "op": "JUMPDEST", + "gas": 13342, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7371, + "op": "SWAP2", + "gas": 13341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7372, + "op": "POP", + "gas": 13338, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7373, + "op": "PUSH2", + "gas": 13336, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7376, + "op": "DUP4", + "gas": 13333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7377, + "op": "PUSH2", + "gas": 13330, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7380, + "op": "JUMP", + "gas": 13327, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 13319, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 13318, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 13316, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 13313, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 13310, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 13308, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 13305, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 13302, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 13300, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7381, + "op": "JUMPDEST", + "gas": 13292, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7382, + "op": "SWAP3", + "gas": 13291, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7383, + "op": "POP", + "gas": 13288, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7384, + "op": "DUP3", + "gas": 13286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7385, + "op": "DUP3", + "gas": 13283, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7386, + "op": "SUB", + "gas": 13280, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7387, + "op": "SWAP1", + "gas": 13277, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7388, + "op": "POP", + "gas": 13274, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7389, + "op": "DUP2", + "gas": 13272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7390, + "op": "DUP2", + "gas": 13269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7391, + "op": "GT", + "gas": 13266, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7392, + "op": "ISZERO", + "gas": 13263, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7393, + "op": "PUSH2", + "gas": 13260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7396, + "op": "JUMPI", + "gas": 13257, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7405, + "op": "JUMPDEST", + "gas": 13247, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7406, + "op": "SWAP3", + "gas": 13246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7407, + "op": "SWAP2", + "gas": 13243, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7408, + "op": "POP", + "gas": 13240, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7409, + "op": "POP", + "gas": 13238, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7410, + "op": "JUMP", + "gas": 13236, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3132, + "op": "JUMPDEST", + "gas": 13228, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3133, + "op": "DUP2", + "gas": 13227, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3134, + "op": "MLOAD", + "gas": 13224, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3135, + "op": "DUP2", + "gas": 13221, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3136, + "op": "LT", + "gas": 13218, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3137, + "op": "PUSH2", + "gas": 13215, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3140, + "op": "JUMPI", + "gas": 13212, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 3149, + "op": "JUMPDEST", + "gas": 13202, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3150, + "op": "PUSH1", + "gas": 13201, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3152, + "op": "ADD", + "gas": 13198, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3153, + "op": "ADD", + "gas": 13195, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3154, + "op": "SWAP1", + "gas": 13192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3155, + "op": "PUSH31", + "gas": 13189, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3187, + "op": "NOT", + "gas": 13186, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3188, + "op": "AND", + "gas": 13183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3189, + "op": "SWAP1", + "gas": 13180, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3190, + "op": "DUP2", + "gas": 13177, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3191, + "op": "PUSH0", + "gas": 13174, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3192, + "op": "BYTE", + "gas": 13172, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3193, + "op": "SWAP1", + "gas": 13169, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3194, + "op": "MSTORE8", + "gas": 13166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3195, + "op": "POP", + "gas": 13163, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3196, + "op": "JUMPDEST", + "gas": 13161, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3197, + "op": "PUSH0", + "gas": 13160, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3198, + "op": "DUP1", + "gas": 13158, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3199, + "op": "PUSH1", + "gas": 13155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3201, + "op": "PUSH20", + "gas": 13152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3222, + "op": "AND", + "gas": 13149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3223, + "op": "DUP7", + "gas": 13146, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3224, + "op": "PUSH1", + "gas": 13143, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3226, + "op": "MLOAD", + "gas": 13140, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3227, + "op": "PUSH2", + "gas": 13137, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3230, + "op": "SWAP2", + "gas": 13134, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3231, + "op": "SWAP1", + "gas": 13131, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3232, + "op": "PUSH2", + "gas": 13128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3235, + "op": "JUMP", + "gas": 13125, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5644, + "op": "JUMPDEST", + "gas": 13117, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5645, + "op": "PUSH0", + "gas": 13116, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5646, + "op": "PUSH2", + "gas": 13114, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5649, + "op": "DUP3", + "gas": 13111, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5650, + "op": "DUP5", + "gas": 13108, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5651, + "op": "PUSH2", + "gas": 13105, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5654, + "op": "JUMP", + "gas": 13102, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5596, + "op": "JUMPDEST", + "gas": 13094, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5597, + "op": "PUSH0", + "gas": 13093, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5598, + "op": "PUSH2", + "gas": 13091, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5601, + "op": "DUP3", + "gas": 13088, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5602, + "op": "PUSH2", + "gas": 13085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5605, + "op": "JUMP", + "gas": 13082, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 13074, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 13073, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 13071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 13068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 13065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 13062, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 13060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 13057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 13054, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 13052, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5606, + "op": "JUMPDEST", + "gas": 13044, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5607, + "op": "PUSH2", + "gas": 13043, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5610, + "op": "DUP2", + "gas": 13040, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5611, + "op": "DUP6", + "gas": 13037, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5612, + "op": "PUSH2", + "gas": 13034, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5615, + "op": "JUMP", + "gas": 13031, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5586, + "op": "JUMPDEST", + "gas": 13023, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5587, + "op": "PUSH0", + "gas": 13022, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5588, + "op": "DUP2", + "gas": 13020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5589, + "op": "SWAP1", + "gas": 13017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5590, + "op": "POP", + "gas": 13014, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5591, + "op": "SWAP3", + "gas": 13012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5592, + "op": "SWAP2", + "gas": 13009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5593, + "op": "POP", + "gas": 13006, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5594, + "op": "POP", + "gas": 13004, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5595, + "op": "JUMP", + "gas": 13002, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5616, + "op": "JUMPDEST", + "gas": 12994, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5617, + "op": "SWAP4", + "gas": 12993, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5618, + "op": "POP", + "gas": 12990, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5619, + "op": "PUSH2", + "gas": 12988, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5622, + "op": "DUP2", + "gas": 12985, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5623, + "op": "DUP6", + "gas": 12982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5624, + "op": "PUSH1", + "gas": 12979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5626, + "op": "DUP7", + "gas": 12976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5627, + "op": "ADD", + "gas": 12973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5628, + "op": "PUSH2", + "gas": 12970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5631, + "op": "JUMP", + "gas": 12967, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 12959, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 12958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 12955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 12952, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 12949, + "gasCost": 46, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 12903, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 12901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 12898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 12895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 12892, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 12886, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 12884, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 12882, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 12880, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5632, + "op": "JUMPDEST", + "gas": 12872, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5633, + "op": "DUP1", + "gas": 12871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5634, + "op": "DUP5", + "gas": 12868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5635, + "op": "ADD", + "gas": 12865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5636, + "op": "SWAP2", + "gas": 12862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5637, + "op": "POP", + "gas": 12859, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5638, + "op": "POP", + "gas": 12857, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5639, + "op": "SWAP3", + "gas": 12855, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5640, + "op": "SWAP2", + "gas": 12852, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5641, + "op": "POP", + "gas": 12849, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5642, + "op": "POP", + "gas": 12847, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5643, + "op": "JUMP", + "gas": 12845, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5655, + "op": "JUMPDEST", + "gas": 12837, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5656, + "op": "SWAP2", + "gas": 12836, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5657, + "op": "POP", + "gas": 12833, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5658, + "op": "DUP2", + "gas": 12831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5659, + "op": "SWAP1", + "gas": 12828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5660, + "op": "POP", + "gas": 12825, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5661, + "op": "SWAP3", + "gas": 12823, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5662, + "op": "SWAP2", + "gas": 12820, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5663, + "op": "POP", + "gas": 12817, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5664, + "op": "POP", + "gas": 12815, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5665, + "op": "JUMP", + "gas": 12813, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3236, + "op": "JUMPDEST", + "gas": 12805, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3237, + "op": "PUSH0", + "gas": 12804, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3238, + "op": "PUSH1", + "gas": 12802, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3240, + "op": "MLOAD", + "gas": 12799, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3241, + "op": "DUP1", + "gas": 12796, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3242, + "op": "DUP4", + "gas": 12793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3243, + "op": "SUB", + "gas": 12790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3244, + "op": "DUP2", + "gas": 12787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3245, + "op": "DUP6", + "gas": 12784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3246, + "op": "GAS", + "gas": 12781, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3247, + "op": "STATICCALL", + "gas": 12779, + "gasCost": 12581, + "depth": 1 + }, + { + "pc": 3248, + "op": "SWAP2", + "gas": 12479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3249, + "op": "POP", + "gas": 12476, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3250, + "op": "POP", + "gas": 12474, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3251, + "op": "RETURNDATASIZE", + "gas": 12472, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3252, + "op": "DUP1", + "gas": 12470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3253, + "op": "PUSH0", + "gas": 12467, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3254, + "op": "DUP2", + "gas": 12465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3255, + "op": "EQ", + "gas": 12462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3256, + "op": "PUSH2", + "gas": 12459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3259, + "op": "JUMPI", + "gas": 12456, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 3260, + "op": "PUSH1", + "gas": 12446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3262, + "op": "MLOAD", + "gas": 12443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3263, + "op": "SWAP2", + "gas": 12440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3264, + "op": "POP", + "gas": 12437, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3265, + "op": "PUSH1", + "gas": 12435, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3267, + "op": "NOT", + "gas": 12432, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3268, + "op": "PUSH1", + "gas": 12429, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3270, + "op": "RETURNDATASIZE", + "gas": 12426, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3271, + "op": "ADD", + "gas": 12424, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3272, + "op": "AND", + "gas": 12421, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3273, + "op": "DUP3", + "gas": 12418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3274, + "op": "ADD", + "gas": 12415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3275, + "op": "PUSH1", + "gas": 12412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3277, + "op": "MSTORE", + "gas": 12409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3278, + "op": "RETURNDATASIZE", + "gas": 12406, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3279, + "op": "DUP3", + "gas": 12404, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3280, + "op": "MSTORE", + "gas": 12401, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3281, + "op": "RETURNDATASIZE", + "gas": 12398, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3282, + "op": "PUSH0", + "gas": 12396, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3283, + "op": "PUSH1", + "gas": 12394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3285, + "op": "DUP5", + "gas": 12391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3286, + "op": "ADD", + "gas": 12388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3287, + "op": "RETURNDATACOPY", + "gas": 12385, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 3288, + "op": "PUSH2", + "gas": 12379, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3291, + "op": "JUMP", + "gas": 12376, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3297, + "op": "JUMPDEST", + "gas": 12368, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3298, + "op": "POP", + "gas": 12367, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3299, + "op": "SWAP2", + "gas": 12365, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3300, + "op": "POP", + "gas": 12362, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3301, + "op": "SWAP2", + "gas": 12360, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3302, + "op": "POP", + "gas": 12357, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3303, + "op": "DUP2", + "gas": 12355, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3304, + "op": "PUSH0", + "gas": 12352, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3305, + "op": "DUP9", + "gas": 12350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3306, + "op": "PUSH1", + "gas": 12347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3308, + "op": "MLOAD", + "gas": 12344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3309, + "op": "PUSH2", + "gas": 12341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3312, + "op": "SWAP2", + "gas": 12338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3313, + "op": "SWAP1", + "gas": 12335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3314, + "op": "PUSH2", + "gas": 12332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3317, + "op": "JUMP", + "gas": 12329, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5666, + "op": "JUMPDEST", + "gas": 12321, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5667, + "op": "PUSH0", + "gas": 12320, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5668, + "op": "PUSH2", + "gas": 12318, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5671, + "op": "DUP3", + "gas": 12315, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5672, + "op": "DUP5", + "gas": 12312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5673, + "op": "PUSH2", + "gas": 12309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5676, + "op": "JUMP", + "gas": 12306, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 12298, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 12297, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 12295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 12292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 12289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 12286, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 12278, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 12277, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 12275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 12272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 12269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 12266, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 12264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 12261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 12258, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 12256, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 12248, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 12247, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 12244, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 12241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 12238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 12235, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 12227, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 12226, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 12224, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 12221, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 12218, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 12216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 12213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 12210, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 12208, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 12206, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 12198, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 12197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 12194, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 12192, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 12189, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 12186, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 12183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 12180, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 12177, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 12174, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 12171, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 12163, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 12162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 12159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 12156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 12153, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 12147, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 12145, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 12142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 12139, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 12136, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 12133, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 12131, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 12129, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 12127, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 12119, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 12118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 12115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 12112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 12109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 12106, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 12104, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 12102, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 12099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 12096, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 12094, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 12092, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5677, + "op": "JUMPDEST", + "gas": 12084, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5678, + "op": "SWAP2", + "gas": 12083, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5679, + "op": "POP", + "gas": 12080, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5680, + "op": "DUP2", + "gas": 12078, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5681, + "op": "SWAP1", + "gas": 12075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5682, + "op": "POP", + "gas": 12072, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5683, + "op": "SWAP3", + "gas": 12070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5684, + "op": "SWAP2", + "gas": 12067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5685, + "op": "POP", + "gas": 12064, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5686, + "op": "POP", + "gas": 12062, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5687, + "op": "JUMP", + "gas": 12060, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3318, + "op": "JUMPDEST", + "gas": 12052, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3319, + "op": "SWAP1", + "gas": 12051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3320, + "op": "DUP2", + "gas": 12048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3321, + "op": "MSTORE", + "gas": 12045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3322, + "op": "PUSH1", + "gas": 12042, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3324, + "op": "ADD", + "gas": 12039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3325, + "op": "PUSH1", + "gas": 12036, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3327, + "op": "MLOAD", + "gas": 12033, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3328, + "op": "DUP1", + "gas": 12030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3329, + "op": "SWAP2", + "gas": 12027, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3330, + "op": "SUB", + "gas": 12024, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3331, + "op": "SWAP1", + "gas": 12021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3332, + "op": "SHA3", + "gas": 12018, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 3333, + "op": "PUSH0", + "gas": 11976, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3334, + "op": "PUSH2", + "gas": 11974, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3337, + "op": "EXP", + "gas": 11971, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 3338, + "op": "DUP2", + "gas": 11961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3339, + "op": "SLOAD", + "gas": 11958, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 3340, + "op": "DUP2", + "gas": 9858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3341, + "op": "PUSH1", + "gas": 9855, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3343, + "op": "MUL", + "gas": 9852, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 3344, + "op": "NOT", + "gas": 9847, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3345, + "op": "AND", + "gas": 9844, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3346, + "op": "SWAP1", + "gas": 9841, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3347, + "op": "DUP4", + "gas": 9838, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3348, + "op": "ISZERO", + "gas": 9835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3349, + "op": "ISZERO", + "gas": 9832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3350, + "op": "MUL", + "gas": 9829, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 3351, + "op": "OR", + "gas": 9824, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3352, + "op": "SWAP1", + "gas": 9821, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3353, + "op": "SSTORE", + "gas": 9818, + "gasCost": 100, + "depth": 1 + }, + { + "pc": 3354, + "op": "POP", + "gas": 9718, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3355, + "op": "DUP1", + "gas": 9716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3356, + "op": "PUSH1", + "gas": 9713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3358, + "op": "DUP9", + "gas": 9710, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3359, + "op": "PUSH1", + "gas": 9707, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3361, + "op": "MLOAD", + "gas": 9704, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3362, + "op": "PUSH2", + "gas": 9701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3365, + "op": "SWAP2", + "gas": 9698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3366, + "op": "SWAP1", + "gas": 9695, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3367, + "op": "PUSH2", + "gas": 9692, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3370, + "op": "JUMP", + "gas": 9689, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5666, + "op": "JUMPDEST", + "gas": 9681, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5667, + "op": "PUSH0", + "gas": 9680, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5668, + "op": "PUSH2", + "gas": 9678, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5671, + "op": "DUP3", + "gas": 9675, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5672, + "op": "DUP5", + "gas": 9672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5673, + "op": "PUSH2", + "gas": 9669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5676, + "op": "JUMP", + "gas": 9666, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5505, + "op": "JUMPDEST", + "gas": 9658, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH0", + "gas": 9657, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5507, + "op": "PUSH2", + "gas": 9655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "DUP3", + "gas": 9652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5511, + "op": "PUSH2", + "gas": 9649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMP", + "gas": 9646, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 9638, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 9637, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 9635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 9632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 9629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 9626, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 9624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 9621, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 9618, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 9616, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5515, + "op": "JUMPDEST", + "gas": 9608, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5516, + "op": "PUSH2", + "gas": 9607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "DUP2", + "gas": 9604, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5520, + "op": "DUP6", + "gas": 9601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5521, + "op": "PUSH2", + "gas": 9598, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5524, + "op": "JUMP", + "gas": 9595, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5411, + "op": "JUMPDEST", + "gas": 9587, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5412, + "op": "PUSH0", + "gas": 9586, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5413, + "op": "DUP2", + "gas": 9584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5414, + "op": "SWAP1", + "gas": 9581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5415, + "op": "POP", + "gas": 9578, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5416, + "op": "SWAP3", + "gas": 9576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5417, + "op": "SWAP2", + "gas": 9573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5418, + "op": "POP", + "gas": 9570, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5419, + "op": "POP", + "gas": 9568, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5420, + "op": "JUMP", + "gas": 9566, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMPDEST", + "gas": 9558, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5526, + "op": "SWAP4", + "gas": 9557, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5527, + "op": "POP", + "gas": 9554, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5528, + "op": "PUSH2", + "gas": 9552, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5531, + "op": "DUP2", + "gas": 9549, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5532, + "op": "DUP6", + "gas": 9546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5533, + "op": "PUSH1", + "gas": 9543, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5535, + "op": "DUP7", + "gas": 9540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5536, + "op": "ADD", + "gas": 9537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5537, + "op": "PUSH2", + "gas": 9534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5540, + "op": "JUMP", + "gas": 9531, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 9523, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 9522, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 9519, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 9516, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 9513, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 9507, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 9505, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 9502, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 9499, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 9496, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 9493, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 9491, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 9489, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 9487, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5541, + "op": "JUMPDEST", + "gas": 9479, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5542, + "op": "DUP1", + "gas": 9478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5543, + "op": "DUP5", + "gas": 9475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5544, + "op": "ADD", + "gas": 9472, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5545, + "op": "SWAP2", + "gas": 9469, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5546, + "op": "POP", + "gas": 9466, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5547, + "op": "POP", + "gas": 9464, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5548, + "op": "SWAP3", + "gas": 9462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5549, + "op": "SWAP2", + "gas": 9459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5550, + "op": "POP", + "gas": 9456, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5551, + "op": "POP", + "gas": 9454, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5552, + "op": "JUMP", + "gas": 9452, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5677, + "op": "JUMPDEST", + "gas": 9444, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5678, + "op": "SWAP2", + "gas": 9443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5679, + "op": "POP", + "gas": 9440, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5680, + "op": "DUP2", + "gas": 9438, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5681, + "op": "SWAP1", + "gas": 9435, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5682, + "op": "POP", + "gas": 9432, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5683, + "op": "SWAP3", + "gas": 9430, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5684, + "op": "SWAP2", + "gas": 9427, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5685, + "op": "POP", + "gas": 9424, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5686, + "op": "POP", + "gas": 9422, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5687, + "op": "JUMP", + "gas": 9420, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3371, + "op": "JUMPDEST", + "gas": 9412, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3372, + "op": "SWAP1", + "gas": 9411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3373, + "op": "DUP2", + "gas": 9408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3374, + "op": "MSTORE", + "gas": 9405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3375, + "op": "PUSH1", + "gas": 9402, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3377, + "op": "ADD", + "gas": 9399, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3378, + "op": "PUSH1", + "gas": 9396, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3380, + "op": "MLOAD", + "gas": 9393, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3381, + "op": "DUP1", + "gas": 9390, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3382, + "op": "SWAP2", + "gas": 9387, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3383, + "op": "SUB", + "gas": 9384, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3384, + "op": "SWAP1", + "gas": 9381, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3385, + "op": "SHA3", + "gas": 9378, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 3386, + "op": "SWAP1", + "gas": 9336, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3387, + "op": "DUP2", + "gas": 9333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3388, + "op": "PUSH2", + "gas": 9330, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3391, + "op": "SWAP2", + "gas": 9327, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3392, + "op": "SWAP1", + "gas": 9324, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3393, + "op": "PUSH2", + "gas": 9321, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3396, + "op": "JUMP", + "gas": 9318, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6194, + "op": "JUMPDEST", + "gas": 9310, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6195, + "op": "PUSH2", + "gas": 9309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6198, + "op": "DUP3", + "gas": 9306, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6199, + "op": "PUSH2", + "gas": 9303, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6202, + "op": "JUMP", + "gas": 9300, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 9292, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 9291, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 9289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 9286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 9283, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 9280, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 9278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 9275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 9272, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 9270, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6203, + "op": "JUMPDEST", + "gas": 9262, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6204, + "op": "PUSH8", + "gas": 9261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6213, + "op": "DUP2", + "gas": 9258, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6214, + "op": "GT", + "gas": 9255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6215, + "op": "ISZERO", + "gas": 9252, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6216, + "op": "PUSH2", + "gas": 9249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6219, + "op": "JUMPI", + "gas": 9246, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6228, + "op": "JUMPDEST", + "gas": 9236, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6229, + "op": "PUSH2", + "gas": 9235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6232, + "op": "DUP3", + "gas": 9232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6233, + "op": "SLOAD", + "gas": 9229, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 6234, + "op": "PUSH2", + "gas": 7129, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6237, + "op": "JUMP", + "gas": 7126, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5733, + "op": "JUMPDEST", + "gas": 7118, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5734, + "op": "PUSH0", + "gas": 7117, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5735, + "op": "PUSH1", + "gas": 7115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5737, + "op": "DUP3", + "gas": 7112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5738, + "op": "DIV", + "gas": 7109, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 5739, + "op": "SWAP1", + "gas": 7104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5740, + "op": "POP", + "gas": 7101, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5741, + "op": "PUSH1", + "gas": 7099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5743, + "op": "DUP3", + "gas": 7096, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5744, + "op": "AND", + "gas": 7093, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5745, + "op": "DUP1", + "gas": 7090, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5746, + "op": "PUSH2", + "gas": 7087, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5749, + "op": "JUMPI", + "gas": 7084, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5756, + "op": "JUMPDEST", + "gas": 7074, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5757, + "op": "PUSH1", + "gas": 7073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5759, + "op": "DUP3", + "gas": 7070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5760, + "op": "LT", + "gas": 7067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5761, + "op": "DUP2", + "gas": 7064, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5762, + "op": "SUB", + "gas": 7061, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5763, + "op": "PUSH2", + "gas": 7058, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5766, + "op": "JUMPI", + "gas": 7055, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5775, + "op": "JUMPDEST", + "gas": 7045, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5776, + "op": "POP", + "gas": 7044, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5777, + "op": "SWAP2", + "gas": 7042, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5778, + "op": "SWAP1", + "gas": 7039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5779, + "op": "POP", + "gas": 7036, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5780, + "op": "JUMP", + "gas": 7034, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6238, + "op": "JUMPDEST", + "gas": 7026, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6239, + "op": "PUSH2", + "gas": 7025, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6242, + "op": "DUP3", + "gas": 7022, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6243, + "op": "DUP3", + "gas": 7019, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6244, + "op": "DUP6", + "gas": 7016, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6245, + "op": "PUSH2", + "gas": 7013, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6248, + "op": "JUMP", + "gas": 7010, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6057, + "op": "JUMPDEST", + "gas": 7002, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6058, + "op": "PUSH1", + "gas": 7001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6060, + "op": "DUP3", + "gas": 6998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6061, + "op": "GT", + "gas": 6995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6062, + "op": "ISZERO", + "gas": 6992, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6063, + "op": "PUSH2", + "gas": 6989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6066, + "op": "JUMPI", + "gas": 6986, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6067, + "op": "PUSH2", + "gas": 6976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6070, + "op": "DUP2", + "gas": 6973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6071, + "op": "PUSH2", + "gas": 6970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6074, + "op": "JUMP", + "gas": 6967, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5781, + "op": "JUMPDEST", + "gas": 6959, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5782, + "op": "PUSH0", + "gas": 6958, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5783, + "op": "DUP2", + "gas": 6956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5784, + "op": "SWAP1", + "gas": 6953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5785, + "op": "POP", + "gas": 6950, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5786, + "op": "DUP2", + "gas": 6948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5787, + "op": "PUSH0", + "gas": 6945, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5788, + "op": "MSTORE", + "gas": 6943, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5789, + "op": "PUSH1", + "gas": 6940, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5791, + "op": "PUSH0", + "gas": 6937, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5792, + "op": "SHA3", + "gas": 6935, + "gasCost": 36, + "depth": 1 + }, + { + "pc": 5793, + "op": "SWAP1", + "gas": 6899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5794, + "op": "POP", + "gas": 6896, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5795, + "op": "SWAP2", + "gas": 6894, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5796, + "op": "SWAP1", + "gas": 6891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5797, + "op": "POP", + "gas": 6888, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5798, + "op": "JUMP", + "gas": 6886, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6075, + "op": "JUMPDEST", + "gas": 6878, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6076, + "op": "PUSH2", + "gas": 6877, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6079, + "op": "DUP5", + "gas": 6874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6080, + "op": "PUSH2", + "gas": 6871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6083, + "op": "JUMP", + "gas": 6868, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5799, + "op": "JUMPDEST", + "gas": 6860, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5800, + "op": "PUSH0", + "gas": 6859, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5801, + "op": "PUSH1", + "gas": 6857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5803, + "op": "PUSH1", + "gas": 6854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5805, + "op": "DUP4", + "gas": 6851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5806, + "op": "ADD", + "gas": 6848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5807, + "op": "DIV", + "gas": 6845, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 5808, + "op": "SWAP1", + "gas": 6840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5809, + "op": "POP", + "gas": 6837, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5810, + "op": "SWAP2", + "gas": 6835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5811, + "op": "SWAP1", + "gas": 6832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5812, + "op": "POP", + "gas": 6829, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5813, + "op": "JUMP", + "gas": 6827, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6084, + "op": "JUMPDEST", + "gas": 6819, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6085, + "op": "DUP2", + "gas": 6818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6086, + "op": "ADD", + "gas": 6815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6087, + "op": "PUSH1", + "gas": 6812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6089, + "op": "DUP6", + "gas": 6809, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6090, + "op": "LT", + "gas": 6806, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6091, + "op": "ISZERO", + "gas": 6803, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6092, + "op": "PUSH2", + "gas": 6800, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6095, + "op": "JUMPI", + "gas": 6797, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6099, + "op": "JUMPDEST", + "gas": 6787, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6100, + "op": "PUSH2", + "gas": 6786, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6103, + "op": "PUSH2", + "gas": 6783, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6106, + "op": "DUP6", + "gas": 6780, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6107, + "op": "PUSH2", + "gas": 6777, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6110, + "op": "JUMP", + "gas": 6774, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5799, + "op": "JUMPDEST", + "gas": 6766, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5800, + "op": "PUSH0", + "gas": 6765, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5801, + "op": "PUSH1", + "gas": 6763, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5803, + "op": "PUSH1", + "gas": 6760, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5805, + "op": "DUP4", + "gas": 6757, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5806, + "op": "ADD", + "gas": 6754, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5807, + "op": "DIV", + "gas": 6751, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 5808, + "op": "SWAP1", + "gas": 6746, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5809, + "op": "POP", + "gas": 6743, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5810, + "op": "SWAP2", + "gas": 6741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5811, + "op": "SWAP1", + "gas": 6738, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5812, + "op": "POP", + "gas": 6735, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5813, + "op": "JUMP", + "gas": 6733, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6111, + "op": "JUMPDEST", + "gas": 6725, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6112, + "op": "DUP4", + "gas": 6724, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6113, + "op": "ADD", + "gas": 6721, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6114, + "op": "DUP3", + "gas": 6718, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6115, + "op": "PUSH2", + "gas": 6715, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6118, + "op": "JUMP", + "gas": 6712, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6023, + "op": "JUMPDEST", + "gas": 6704, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6024, + "op": "JUMPDEST", + "gas": 6703, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6025, + "op": "DUP2", + "gas": 6702, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6026, + "op": "DUP2", + "gas": 6699, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6027, + "op": "LT", + "gas": 6696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6028, + "op": "ISZERO", + "gas": 6693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6029, + "op": "PUSH2", + "gas": 6690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6032, + "op": "JUMPI", + "gas": 6687, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6053, + "op": "JUMPDEST", + "gas": 6677, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6054, + "op": "POP", + "gas": 6676, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6055, + "op": "POP", + "gas": 6674, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6056, + "op": "JUMP", + "gas": 6672, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6119, + "op": "JUMPDEST", + "gas": 6664, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6120, + "op": "POP", + "gas": 6663, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6121, + "op": "POP", + "gas": 6661, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6122, + "op": "JUMPDEST", + "gas": 6659, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6123, + "op": "POP", + "gas": 6658, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6124, + "op": "POP", + "gas": 6656, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6125, + "op": "POP", + "gas": 6654, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6126, + "op": "JUMP", + "gas": 6652, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6249, + "op": "JUMPDEST", + "gas": 6644, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6250, + "op": "PUSH0", + "gas": 6643, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6251, + "op": "PUSH1", + "gas": 6641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6253, + "op": "SWAP1", + "gas": 6638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6254, + "op": "POP", + "gas": 6635, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6255, + "op": "PUSH1", + "gas": 6633, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6257, + "op": "DUP4", + "gas": 6630, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6258, + "op": "GT", + "gas": 6627, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6259, + "op": "PUSH1", + "gas": 6624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6261, + "op": "DUP2", + "gas": 6621, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6262, + "op": "EQ", + "gas": 6618, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6263, + "op": "PUSH2", + "gas": 6615, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6266, + "op": "JUMPI", + "gas": 6612, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6298, + "op": "JUMPDEST", + "gas": 6602, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6299, + "op": "PUSH1", + "gas": 6601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6301, + "op": "NOT", + "gas": 6598, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6302, + "op": "DUP5", + "gas": 6595, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6303, + "op": "AND", + "gas": 6592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6304, + "op": "PUSH2", + "gas": 6589, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6307, + "op": "DUP7", + "gas": 6586, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6308, + "op": "PUSH2", + "gas": 6583, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6311, + "op": "JUMP", + "gas": 6580, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5781, + "op": "JUMPDEST", + "gas": 6572, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5782, + "op": "PUSH0", + "gas": 6571, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5783, + "op": "DUP2", + "gas": 6569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5784, + "op": "SWAP1", + "gas": 6566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5785, + "op": "POP", + "gas": 6563, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5786, + "op": "DUP2", + "gas": 6561, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5787, + "op": "PUSH0", + "gas": 6558, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5788, + "op": "MSTORE", + "gas": 6556, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5789, + "op": "PUSH1", + "gas": 6553, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5791, + "op": "PUSH0", + "gas": 6550, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5792, + "op": "SHA3", + "gas": 6548, + "gasCost": 36, + "depth": 1 + }, + { + "pc": 5793, + "op": "SWAP1", + "gas": 6512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5794, + "op": "POP", + "gas": 6509, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5795, + "op": "SWAP2", + "gas": 6507, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5796, + "op": "SWAP1", + "gas": 6504, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5797, + "op": "POP", + "gas": 6501, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5798, + "op": "JUMP", + "gas": 6499, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6312, + "op": "JUMPDEST", + "gas": 6491, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6313, + "op": "PUSH0", + "gas": 6490, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6314, + "op": "JUMPDEST", + "gas": 6488, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6315, + "op": "DUP3", + "gas": 6487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 6484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "LT", + "gas": 6481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "ISZERO", + "gas": 6478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "PUSH2", + "gas": 6475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6322, + "op": "JUMPI", + "gas": 6472, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6323, + "op": "DUP5", + "gas": 6462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6324, + "op": "DUP10", + "gas": 6459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6325, + "op": "ADD", + "gas": 6456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6326, + "op": "MLOAD", + "gas": 6453, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6327, + "op": "DUP3", + "gas": 6450, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6328, + "op": "SSTORE", + "gas": 6447, + "gasCost": 2200, + "depth": 1 + }, + { + "pc": 6329, + "op": "PUSH1", + "gas": 4247, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6331, + "op": "DUP3", + "gas": 4244, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6332, + "op": "ADD", + "gas": 4241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6333, + "op": "SWAP2", + "gas": 4238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6334, + "op": "POP", + "gas": 4235, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6335, + "op": "PUSH1", + "gas": 4233, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6337, + "op": "DUP6", + "gas": 4230, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6338, + "op": "ADD", + "gas": 4227, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6339, + "op": "SWAP5", + "gas": 4224, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6340, + "op": "POP", + "gas": 4221, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6341, + "op": "PUSH1", + "gas": 4219, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6343, + "op": "DUP2", + "gas": 4216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6344, + "op": "ADD", + "gas": 4213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6345, + "op": "SWAP1", + "gas": 4210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6346, + "op": "POP", + "gas": 4207, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6347, + "op": "PUSH2", + "gas": 4205, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6350, + "op": "JUMP", + "gas": 4202, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6314, + "op": "JUMPDEST", + "gas": 4194, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6315, + "op": "DUP3", + "gas": 4193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 4190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "LT", + "gas": 4187, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "ISZERO", + "gas": 4184, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "PUSH2", + "gas": 4181, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6322, + "op": "JUMPI", + "gas": 4178, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6351, + "op": "JUMPDEST", + "gas": 4168, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6352, + "op": "DUP7", + "gas": 4167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6353, + "op": "DUP4", + "gas": 4164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6354, + "op": "LT", + "gas": 4161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6355, + "op": "ISZERO", + "gas": 4158, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6356, + "op": "PUSH2", + "gas": 4155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6359, + "op": "JUMPI", + "gas": 4152, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6380, + "op": "JUMPDEST", + "gas": 4142, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6381, + "op": "PUSH1", + "gas": 4141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6383, + "op": "PUSH1", + "gas": 4138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6385, + "op": "DUP9", + "gas": 4135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6386, + "op": "MUL", + "gas": 4132, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6387, + "op": "ADD", + "gas": 4127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6388, + "op": "DUP9", + "gas": 4124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6389, + "op": "SSTORE", + "gas": 4121, + "gasCost": 100, + "depth": 1 + }, + { + "pc": 6390, + "op": "POP", + "gas": 4021, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6391, + "op": "POP", + "gas": 4019, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6392, + "op": "POP", + "gas": 4017, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6393, + "op": "JUMPDEST", + "gas": 4015, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6394, + "op": "POP", + "gas": 4014, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6395, + "op": "POP", + "gas": 4012, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6396, + "op": "POP", + "gas": 4010, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6397, + "op": "POP", + "gas": 4008, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6398, + "op": "POP", + "gas": 4006, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6399, + "op": "POP", + "gas": 4004, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6400, + "op": "JUMP", + "gas": 4002, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3397, + "op": "JUMPDEST", + "gas": 3994, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3398, + "op": "POP", + "gas": 3993, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3399, + "op": "PUSH32", + "gas": 3991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3432, + "op": "DUP8", + "gas": 3988, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3433, + "op": "DUP4", + "gas": 3985, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3434, + "op": "DUP4", + "gas": 3982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3435, + "op": "TIMESTAMP", + "gas": 3979, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3436, + "op": "PUSH1", + "gas": 3977, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3438, + "op": "MLOAD", + "gas": 3974, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3439, + "op": "PUSH2", + "gas": 3971, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3442, + "op": "SWAP5", + "gas": 3968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3443, + "op": "SWAP4", + "gas": 3965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3444, + "op": "SWAP3", + "gas": 3962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3445, + "op": "SWAP2", + "gas": 3959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3446, + "op": "SWAP1", + "gas": 3956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3447, + "op": "PUSH2", + "gas": 3953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3450, + "op": "JUMP", + "gas": 3950, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6488, + "op": "JUMPDEST", + "gas": 3942, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6489, + "op": "PUSH0", + "gas": 3941, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6490, + "op": "PUSH1", + "gas": 3939, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6492, + "op": "DUP3", + "gas": 3936, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6493, + "op": "ADD", + "gas": 3933, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6494, + "op": "SWAP1", + "gas": 3930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6495, + "op": "POP", + "gas": 3927, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6496, + "op": "DUP2", + "gas": 3925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6497, + "op": "DUP2", + "gas": 3922, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6498, + "op": "SUB", + "gas": 3919, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6499, + "op": "PUSH0", + "gas": 3916, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6500, + "op": "DUP4", + "gas": 3914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6501, + "op": "ADD", + "gas": 3911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6502, + "op": "MSTORE", + "gas": 3908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6503, + "op": "PUSH2", + "gas": 3905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6506, + "op": "DUP2", + "gas": 3902, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6507, + "op": "DUP8", + "gas": 3899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6508, + "op": "PUSH2", + "gas": 3896, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6511, + "op": "JUMP", + "gas": 3893, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6417, + "op": "JUMPDEST", + "gas": 3885, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6418, + "op": "PUSH0", + "gas": 3884, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6419, + "op": "PUSH2", + "gas": 3882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6422, + "op": "DUP3", + "gas": 3879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6423, + "op": "PUSH2", + "gas": 3876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6426, + "op": "JUMP", + "gas": 3873, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5495, + "op": "JUMPDEST", + "gas": 3865, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5496, + "op": "PUSH0", + "gas": 3864, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5497, + "op": "DUP2", + "gas": 3862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5498, + "op": "MLOAD", + "gas": 3859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP1", + "gas": 3856, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 3853, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "SWAP2", + "gas": 3851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5502, + "op": "SWAP1", + "gas": 3848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5503, + "op": "POP", + "gas": 3845, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5504, + "op": "JUMP", + "gas": 3843, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6427, + "op": "JUMPDEST", + "gas": 3835, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6428, + "op": "PUSH2", + "gas": 3834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6431, + "op": "DUP2", + "gas": 3831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6432, + "op": "DUP6", + "gas": 3828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6433, + "op": "PUSH2", + "gas": 3825, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6436, + "op": "JUMP", + "gas": 3822, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6401, + "op": "JUMPDEST", + "gas": 3814, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6402, + "op": "PUSH0", + "gas": 3813, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6403, + "op": "DUP3", + "gas": 3811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6404, + "op": "DUP3", + "gas": 3808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6405, + "op": "MSTORE", + "gas": 3805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6406, + "op": "PUSH1", + "gas": 3802, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6408, + "op": "DUP3", + "gas": 3799, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6409, + "op": "ADD", + "gas": 3796, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6410, + "op": "SWAP1", + "gas": 3793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6411, + "op": "POP", + "gas": 3790, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6412, + "op": "SWAP3", + "gas": 3788, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6413, + "op": "SWAP2", + "gas": 3785, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6414, + "op": "POP", + "gas": 3782, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6415, + "op": "POP", + "gas": 3780, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6416, + "op": "JUMP", + "gas": 3778, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6437, + "op": "JUMPDEST", + "gas": 3770, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6438, + "op": "SWAP4", + "gas": 3769, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6439, + "op": "POP", + "gas": 3766, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6440, + "op": "PUSH2", + "gas": 3764, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6443, + "op": "DUP2", + "gas": 3761, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6444, + "op": "DUP6", + "gas": 3758, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6445, + "op": "PUSH1", + "gas": 3755, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6447, + "op": "DUP7", + "gas": 3752, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6448, + "op": "ADD", + "gas": 3749, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6449, + "op": "PUSH2", + "gas": 3746, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6452, + "op": "JUMP", + "gas": 3743, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 3735, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 3734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 3731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 3728, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 3725, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 3719, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 3717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 3714, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 3711, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 3708, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 3702, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 3700, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 3698, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 3696, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6453, + "op": "JUMPDEST", + "gas": 3688, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6454, + "op": "PUSH2", + "gas": 3687, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6457, + "op": "DUP2", + "gas": 3684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6458, + "op": "PUSH2", + "gas": 3681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6461, + "op": "JUMP", + "gas": 3678, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 3670, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 3669, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 3667, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 3664, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 3661, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 3658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 3655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 3652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 3649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 3646, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 3644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 3641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 3638, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 3636, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6462, + "op": "JUMPDEST", + "gas": 3628, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6463, + "op": "DUP5", + "gas": 3627, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6464, + "op": "ADD", + "gas": 3624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6465, + "op": "SWAP2", + "gas": 3621, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6466, + "op": "POP", + "gas": 3618, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6467, + "op": "POP", + "gas": 3616, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6468, + "op": "SWAP3", + "gas": 3614, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6469, + "op": "SWAP2", + "gas": 3611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6470, + "op": "POP", + "gas": 3608, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6471, + "op": "POP", + "gas": 3606, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6472, + "op": "JUMP", + "gas": 3604, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6512, + "op": "JUMPDEST", + "gas": 3596, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6513, + "op": "SWAP1", + "gas": 3595, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6514, + "op": "POP", + "gas": 3592, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6515, + "op": "PUSH2", + "gas": 3590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6518, + "op": "PUSH1", + "gas": 3587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6520, + "op": "DUP4", + "gas": 3584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6521, + "op": "ADD", + "gas": 3581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6522, + "op": "DUP7", + "gas": 3578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6523, + "op": "PUSH2", + "gas": 3575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6526, + "op": "JUMP", + "gas": 3572, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4840, + "op": "JUMPDEST", + "gas": 3564, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4841, + "op": "PUSH2", + "gas": 3563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4844, + "op": "DUP2", + "gas": 3560, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4845, + "op": "PUSH2", + "gas": 3557, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4848, + "op": "JUMP", + "gas": 3554, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4829, + "op": "JUMPDEST", + "gas": 3546, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4830, + "op": "PUSH0", + "gas": 3545, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4831, + "op": "DUP2", + "gas": 3543, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4832, + "op": "ISZERO", + "gas": 3540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4833, + "op": "ISZERO", + "gas": 3537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4834, + "op": "SWAP1", + "gas": 3534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4835, + "op": "POP", + "gas": 3531, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4836, + "op": "SWAP2", + "gas": 3529, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4837, + "op": "SWAP1", + "gas": 3526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4838, + "op": "POP", + "gas": 3523, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4839, + "op": "JUMP", + "gas": 3521, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4849, + "op": "JUMPDEST", + "gas": 3513, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4850, + "op": "DUP3", + "gas": 3512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4851, + "op": "MSTORE", + "gas": 3509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4852, + "op": "POP", + "gas": 3506, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4853, + "op": "POP", + "gas": 3504, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4854, + "op": "JUMP", + "gas": 3502, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6527, + "op": "JUMPDEST", + "gas": 3494, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6528, + "op": "DUP2", + "gas": 3493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6529, + "op": "DUP2", + "gas": 3490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6530, + "op": "SUB", + "gas": 3487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6531, + "op": "PUSH1", + "gas": 3484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6533, + "op": "DUP4", + "gas": 3481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6534, + "op": "ADD", + "gas": 3478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6535, + "op": "MSTORE", + "gas": 3475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6536, + "op": "PUSH2", + "gas": 3472, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6539, + "op": "DUP2", + "gas": 3469, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6540, + "op": "DUP6", + "gas": 3466, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6541, + "op": "PUSH2", + "gas": 3463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6544, + "op": "JUMP", + "gas": 3460, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5149, + "op": "JUMPDEST", + "gas": 3452, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5150, + "op": "PUSH0", + "gas": 3451, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5151, + "op": "PUSH2", + "gas": 3449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5154, + "op": "DUP3", + "gas": 3446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5155, + "op": "PUSH2", + "gas": 3443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5158, + "op": "JUMP", + "gas": 3440, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5109, + "op": "JUMPDEST", + "gas": 3432, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5110, + "op": "PUSH0", + "gas": 3431, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP2", + "gas": 3429, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "MLOAD", + "gas": 3426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5113, + "op": "SWAP1", + "gas": 3423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5114, + "op": "POP", + "gas": 3420, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5115, + "op": "SWAP2", + "gas": 3418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "SWAP1", + "gas": 3415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "POP", + "gas": 3412, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5118, + "op": "JUMP", + "gas": 3410, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5159, + "op": "JUMPDEST", + "gas": 3402, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5160, + "op": "PUSH2", + "gas": 3401, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5163, + "op": "DUP2", + "gas": 3398, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5164, + "op": "DUP6", + "gas": 3395, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5165, + "op": "PUSH2", + "gas": 3392, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5168, + "op": "JUMP", + "gas": 3389, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5119, + "op": "JUMPDEST", + "gas": 3381, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5120, + "op": "PUSH0", + "gas": 3380, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "DUP3", + "gas": 3378, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5122, + "op": "DUP3", + "gas": 3375, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5123, + "op": "MSTORE", + "gas": 3372, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5124, + "op": "PUSH1", + "gas": 3366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5126, + "op": "DUP3", + "gas": 3363, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5127, + "op": "ADD", + "gas": 3360, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5128, + "op": "SWAP1", + "gas": 3357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5129, + "op": "POP", + "gas": 3354, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5130, + "op": "SWAP3", + "gas": 3352, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5131, + "op": "SWAP2", + "gas": 3349, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5132, + "op": "POP", + "gas": 3346, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5133, + "op": "POP", + "gas": 3344, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5134, + "op": "JUMP", + "gas": 3342, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5169, + "op": "JUMPDEST", + "gas": 3334, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5170, + "op": "SWAP4", + "gas": 3333, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5171, + "op": "POP", + "gas": 3330, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5172, + "op": "PUSH2", + "gas": 3328, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5175, + "op": "DUP2", + "gas": 3325, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5176, + "op": "DUP6", + "gas": 3322, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5177, + "op": "PUSH1", + "gas": 3319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5179, + "op": "DUP7", + "gas": 3316, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5180, + "op": "ADD", + "gas": 3313, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5181, + "op": "PUSH2", + "gas": 3310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5184, + "op": "JUMP", + "gas": 3307, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5135, + "op": "JUMPDEST", + "gas": 3299, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP3", + "gas": 3298, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP2", + "gas": 3295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "DUP4", + "gas": 3292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5139, + "op": "opcode 0x5e not defined", + "gas": 3289, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 5140, + "op": "PUSH0", + "gas": 3280, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5141, + "op": "DUP4", + "gas": 3278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5142, + "op": "DUP4", + "gas": 3275, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5143, + "op": "ADD", + "gas": 3272, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "MSTORE", + "gas": 3269, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5145, + "op": "POP", + "gas": 3263, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5146, + "op": "POP", + "gas": 3261, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5147, + "op": "POP", + "gas": 3259, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5148, + "op": "JUMP", + "gas": 3257, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5185, + "op": "JUMPDEST", + "gas": 3249, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5186, + "op": "PUSH2", + "gas": 3248, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5189, + "op": "DUP2", + "gas": 3245, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5190, + "op": "PUSH2", + "gas": 3242, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5193, + "op": "JUMP", + "gas": 3239, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4450, + "op": "JUMPDEST", + "gas": 3231, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4451, + "op": "PUSH0", + "gas": 3230, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4452, + "op": "PUSH1", + "gas": 3228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4454, + "op": "NOT", + "gas": 3225, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4455, + "op": "PUSH1", + "gas": 3222, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4457, + "op": "DUP4", + "gas": 3219, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4458, + "op": "ADD", + "gas": 3216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4459, + "op": "AND", + "gas": 3213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4460, + "op": "SWAP1", + "gas": 3210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4461, + "op": "POP", + "gas": 3207, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4462, + "op": "SWAP2", + "gas": 3205, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4463, + "op": "SWAP1", + "gas": 3202, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4464, + "op": "POP", + "gas": 3199, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4465, + "op": "JUMP", + "gas": 3197, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5194, + "op": "JUMPDEST", + "gas": 3189, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5195, + "op": "DUP5", + "gas": 3188, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5196, + "op": "ADD", + "gas": 3185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5197, + "op": "SWAP2", + "gas": 3182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5198, + "op": "POP", + "gas": 3179, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5199, + "op": "POP", + "gas": 3177, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5200, + "op": "SWAP3", + "gas": 3175, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5201, + "op": "SWAP2", + "gas": 3172, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5202, + "op": "POP", + "gas": 3169, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5203, + "op": "POP", + "gas": 3167, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5204, + "op": "JUMP", + "gas": 3165, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6545, + "op": "JUMPDEST", + "gas": 3157, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6546, + "op": "SWAP1", + "gas": 3156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6547, + "op": "POP", + "gas": 3153, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6548, + "op": "PUSH2", + "gas": 3151, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6551, + "op": "PUSH1", + "gas": 3148, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6553, + "op": "DUP4", + "gas": 3145, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6554, + "op": "ADD", + "gas": 3142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6555, + "op": "DUP5", + "gas": 3139, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6556, + "op": "PUSH2", + "gas": 3136, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6559, + "op": "JUMP", + "gas": 3133, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6473, + "op": "JUMPDEST", + "gas": 3125, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6474, + "op": "PUSH2", + "gas": 3124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6477, + "op": "DUP2", + "gas": 3121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6478, + "op": "PUSH2", + "gas": 3118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6481, + "op": "JUMP", + "gas": 3115, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5237, + "op": "JUMPDEST", + "gas": 3107, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5238, + "op": "PUSH0", + "gas": 3106, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5239, + "op": "DUP2", + "gas": 3104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5240, + "op": "SWAP1", + "gas": 3101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5241, + "op": "POP", + "gas": 3098, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5242, + "op": "SWAP2", + "gas": 3096, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5243, + "op": "SWAP1", + "gas": 3093, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "POP", + "gas": 3090, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5245, + "op": "JUMP", + "gas": 3088, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6482, + "op": "JUMPDEST", + "gas": 3080, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6483, + "op": "DUP3", + "gas": 3079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6484, + "op": "MSTORE", + "gas": 3076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6485, + "op": "POP", + "gas": 3073, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6486, + "op": "POP", + "gas": 3071, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6487, + "op": "JUMP", + "gas": 3069, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6560, + "op": "JUMPDEST", + "gas": 3061, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6561, + "op": "SWAP6", + "gas": 3060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6562, + "op": "SWAP5", + "gas": 3057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6563, + "op": "POP", + "gas": 3054, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6564, + "op": "POP", + "gas": 3052, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6565, + "op": "POP", + "gas": 3050, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6566, + "op": "POP", + "gas": 3048, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6567, + "op": "POP", + "gas": 3046, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6568, + "op": "JUMP", + "gas": 3044, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 3451, + "op": "JUMPDEST", + "gas": 3036, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 3452, + "op": "PUSH1", + "gas": 3035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3454, + "op": "MLOAD", + "gas": 3032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3455, + "op": "DUP1", + "gas": 3029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3456, + "op": "SWAP2", + "gas": 3026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3457, + "op": "SUB", + "gas": 3023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3458, + "op": "SWAP1", + "gas": 3020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3459, + "op": "LOG1", + "gas": 3017, + "gasCost": 2798, + "depth": 1 + }, + { + "pc": 3460, + "op": "DUP2", + "gas": 219, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3461, + "op": "SWAP8", + "gas": 216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3462, + "op": "POP", + "gas": 213, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3463, + "op": "POP", + "gas": 211, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3464, + "op": "POP", + "gas": 209, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3465, + "op": "POP", + "gas": 207, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3466, + "op": "POP", + "gas": 205, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3467, + "op": "POP", + "gas": 203, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3468, + "op": "POP", + "gas": 201, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3469, + "op": "POP", + "gas": 199, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3470, + "op": "SWAP4", + "gas": 197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3471, + "op": "SWAP3", + "gas": 194, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 3472, + "op": "POP", + "gas": 191, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3473, + "op": "POP", + "gas": 189, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3474, + "op": "POP", + "gas": 187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 3475, + "op": "JUMP", + "gas": 185, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 522, + "op": "JUMPDEST", + "gas": 177, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 523, + "op": "PUSH1", + "gas": 176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 525, + "op": "MLOAD", + "gas": 173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 526, + "op": "PUSH2", + "gas": 170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 529, + "op": "SWAP2", + "gas": 167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 530, + "op": "SWAP1", + "gas": 164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 531, + "op": "PUSH2", + "gas": 161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 534, + "op": "JUMP", + "gas": 158, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4855, + "op": "JUMPDEST", + "gas": 150, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4856, + "op": "PUSH0", + "gas": 149, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4857, + "op": "PUSH1", + "gas": 147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4859, + "op": "DUP3", + "gas": 144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4860, + "op": "ADD", + "gas": 141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4861, + "op": "SWAP1", + "gas": 138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4862, + "op": "POP", + "gas": 135, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4863, + "op": "PUSH2", + "gas": 133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4866, + "op": "PUSH0", + "gas": 130, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4867, + "op": "DUP4", + "gas": 128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4868, + "op": "ADD", + "gas": 125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4869, + "op": "DUP5", + "gas": 122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4870, + "op": "PUSH2", + "gas": 119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4873, + "op": "JUMP", + "gas": 116, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4840, + "op": "JUMPDEST", + "gas": 108, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4841, + "op": "PUSH2", + "gas": 107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4844, + "op": "DUP2", + "gas": 104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4845, + "op": "PUSH2", + "gas": 101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4848, + "op": "JUMP", + "gas": 98, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4829, + "op": "JUMPDEST", + "gas": 90, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4830, + "op": "PUSH0", + "gas": 89, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4831, + "op": "DUP2", + "gas": 87, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4832, + "op": "ISZERO", + "gas": 84, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4833, + "op": "ISZERO", + "gas": 81, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4834, + "op": "SWAP1", + "gas": 78, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4835, + "op": "POP", + "gas": 75, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4836, + "op": "SWAP2", + "gas": 73, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4837, + "op": "SWAP1", + "gas": 70, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4838, + "op": "POP", + "gas": 67, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4839, + "op": "JUMP", + "gas": 65, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4849, + "op": "JUMPDEST", + "gas": 57, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4850, + "op": "DUP3", + "gas": 56, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4851, + "op": "MSTORE", + "gas": 53, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4852, + "op": "POP", + "gas": 50, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4853, + "op": "POP", + "gas": 48, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4854, + "op": "JUMP", + "gas": 46, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4874, + "op": "JUMPDEST", + "gas": 38, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4875, + "op": "SWAP3", + "gas": 37, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4876, + "op": "SWAP2", + "gas": 34, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4877, + "op": "POP", + "gas": 31, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4878, + "op": "POP", + "gas": 29, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4879, + "op": "JUMP", + "gas": 27, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 535, + "op": "JUMPDEST", + "gas": 19, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 536, + "op": "PUSH1", + "gas": 18, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 538, + "op": "MLOAD", + "gas": 15, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 539, + "op": "DUP1", + "gas": 12, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 540, + "op": "SWAP2", + "gas": 9, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 541, + "op": "SUB", + "gas": 6, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 542, + "op": "SWAP1", + "gas": 3, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 543, + "op": "RETURN", + "gas": 0, + "gasCost": 0, + "depth": 1 + } + ], + "callTrace": { + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "gas": "0xba75", + "gasUsed": "0xba75", + "to": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "input": "0x8a59e100000000000000000000000000000000000000000000000000000000000000002100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020", + "output": "0x0000000000000000000000000000000000000000000000000000000000000001", + "calls": [ + { + "from": "0xf78ce1e2f0de8fd15ce6ac4ddec6982413fda499", + "gas": "0x30c1", + "gasUsed": "0xc8", + "to": "0x0000000000000000000000000000000000000005", + "input": "0x00000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000011", + "output": "0x0000000000000000000000000000000000000000000000000000000000000003", + "type": "STATICCALL" + } + ], + "value": "0x0", + "type": "CALL" + } + } + ], + "withdraw_trie_root": "0xf15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67", + "sequencer_set_verify_hash": "0x72fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc", + "startL1QueueIndex": 1321206 + } + ] +] \ No newline at end of file diff --git a/prover/testdata/morph203/morph203_3_traces.json b/prover/testdata/morph203/morph203_3_traces.json new file mode 100644 index 000000000..3e84074fb --- /dev/null +++ b/prover/testdata/morph203/morph203_3_traces.json @@ -0,0 +1,24984 @@ +[ + [ + { + "chainID": 53077, + "version": "2.0.3-mainnet-0295a3d4", + "coinbase": { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc813daa62ae09", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "header": { + "parentHash": "0x225d58132f00c70dd2bc7aaaa91122de0b10820190d4937547f4f8b91b042a6c", + "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", + "miner": "0x0000000000000000000000000000000000000000", + "stateRoot": "0x04823040a3e712336ffe896207761f576d20e610ba0be3d555d35f8f621371a9", + "transactionsRoot": "0x0e0cd055fd966f4abbd9a859e38ee4b0e23fdce85a904c69356ae93d383a34b1", + "receiptsRoot": "0x2810f4b342f877d6d7db62981c8ecd5b3f7b610e4f1d1f620261d33cc07c516c", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000200000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "difficulty": "0x0", + "number": "0x78465", + "gasLimit": "0x3b9aca00", + "gasUsed": "0x48953", + "timestamp": "0x67d3a2a2", + "extraData": "0x", + "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce": "0x0000000000000000", + "nextL1MsgIndex": "0x1428f6", + "batchHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "baseFeePerGas": "0xf4240", + "withdrawalsRoot": null, + "blobGasUsed": null, + "excessBlobGas": null, + "parentBeaconBlockRoot": null, + "hash": "0x920143590d6668dc66479cd08d01da78dee552955da0382837988b2cf951680b" + }, + "transactions": [ + { + "type": 2, + "nonce": 2177, + "txHash": "0xdeee3c58ad6f08be549f1f3205632e2764450135a1712a0d15624d0ac8cd7681", + "gas": 297299, + "gasPrice": "0xf4240", + "gasTipCap": "0xf4240", + "gasFeeCap": "0xf4240", + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "to": "0x34118801d76b7082ab065e23496c692d002eaf24", + "chainId": "0xcf55", + "value": "0x0", + "data": "0x447a4c620000000000000000000000000000000000000000000000000000000000000005", + "isCreate": false, + "accessList": [], + "v": "0x1", + "r": "0xa2e66dd106655b99c017d80b6160364e68cf221f0f237ce5ec9c592016101eda", + "s": "0x23ecd835cfd6fa4829a18e5ddd59caf4d9c1b27560cea96e57605ab8c1acbb75" + } + ], + "storageTrace": { + "rootBefore": "0x0e7084285b13c9490d2b3bb3ca33b55526cd57a3d0998784889f452c1fe1e22a", + "rootAfter": "0x04823040a3e712336ffe896207761f576d20e610ba0be3d555d35f8f621371a9", + "proofs": { + "0x0000000000000000000000000000000000000008": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x09223fbfb373b9ecc308c26ec76c19ad952f8d14a85aafd061d34b687d6e7beb610675adef0fbaddcc36c1ea1b79c6bd6a1868851064bf21564e3edb0fcd0783f6", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e0dffb83769fbf984f87ebba2f08f7ab258b82feca5b20ec8adbeaeb19fe3cd78", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa27a8c206ffeba79382d9afcf35f6f653363d70b97ff3ed66aa4a453b543683d6", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed9290b2216e48429411f311a9ffc3597586b6984fb58471fc388a1acc99973ef23a4", + "0x090d2daa9e849fc9f1502dd600db166a22950699a54acc4934067f31edb218aa9b301616bf99787b6c731e05949ec9a4de696ec97062003a0ac6524b488aabb293", + "0x082587ccb3b386ae3d8a09547620c34823d3c7f0c672db89b2233ff37210d939bf1b2e1269fe7aa8bc2a40fd5b42046d724ff1869865a76442376b0a84a153873e", + "0x0723df95a3519b71802038e5f1f2704df7a7dc28f9d638be9234a0edc6a2e845f20446cc7bbda1a337f86b559004a173dfef3753eba6ef8e7a1b055a4aeb76092d", + "0x070e239a09355ecbb05370ac258622b0c6ed88daa6d2374a91842c1337a7a71be1022482d4c4ea6734399bbc2249d7c5e073de0572f25f599755129169ebd0778c", + "0x0425eeb63dcae6b3d3508a3a8f5b3d3e021ad8c1e210b73179c9116c082f70dabc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008c621c5d486a08000000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420763dd93930d25a4753f9ecc56626614aeda98e63000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x34118801d76B7082aB065e23496c692d002eAf24": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x09223fbfb373b9ecc308c26ec76c19ad952f8d14a85aafd061d34b687d6e7beb610675adef0fbaddcc36c1ea1b79c6bd6a1868851064bf21564e3edb0fcd0783f6", + "0x0908e3422b238eb49aa42cbec56a3d2384fb532f80a792059fa6b7114d0e091fc9172b3f8173877733a08cb2cfec3ad805e8009844c4e6bc9265d275c58524b4b0", + "0x090d38f216b8304845b81b08ba9c4f2ecbf6e681042b8ea41e5ff4e7dec490274810f52d1ae7e4bc77bc3cd9a02c9e581550def1bfb2e181e5c825910c3f03f4a6", + "0x091c5154681f6bcf86f9c653cacf0de32e215576176d2f514436a3a75534d321d72f9eb03e2ed7de3331a5879a71a2c8c338fff8c7673c5a1a3c8b44912300bf20", + "0x090897cb100d4f830610ebaa2e8e8811cd5953ad870a777e4696b7f93a437e9236026292cf7673cb3a6f86e695cd872bbc08aa3f4c2b848a48392120c4cf7f71f2", + "0x091d216137f369490b0cd2856488f4504777e4e3b80c5468be68bcc80ed422092c01b060708a06882daa24cdf034a6c5427b9dc80635a27107c192c9b8cf5db4b0", + "0x0623206f13da658e025824f2cff48aee17f2c0d14584273c324710a677cb6f468c2ed47f6805d38a315248cdf24a151ecd4168b7c6d0e01fb2d2932753aa06de27", + "0x041a43febf8ef3453b660638f994f2cd6e72e187b24929ab027143b1cff6dd1bf405080000000000000000000000000000000000000000000000001de200000000000000010000000000000000000000000000000000000000000000000000000000000000152f2d03d3cd603c7c5870016b0bf9b4e1a9398df431f71b62a80c39ef8f4953cac509e682b399f3ee95737f35f4da572121f83a12f3edb76b976789f91151d02de2a02dd2d9eb0adab021a6c9b3ec7f43a8d624de5807d4ead158a3abdaec402034118801d76b7082ab065e23496c692d002eaf24000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000001": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x090b98b6ce6b18775c6f6db6c1230872616e3d7ea7900f9ff3dc07e96227480d5c007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x091df47e5df57362e0696b8661792a034fec43fb89769b9940dadb6d38fe2e094a27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada055e263bd357de13dc17a63a7c609290ac76ee1caff199e0b845090f998b3b1f", + "0x092cc07548fafc69a4dc7cfa2a483453f9f9819d104ccc8452b044584316b2918a0b1550511655ecc100037fab01d02dc8afb8b117bedad7f9ff3900d0747d44a6", + "0x091e5bd0832fb5a9827c679c75db95f1a559a07972a60b9c51ec435ea0633394390febfd3ab5fff6718b8ec4122a449fb8320d7a813240d702a4fda781e0a9bdce", + "0x092b96c11dcd9903dd8dfbca4f5acaf64c98f7aa8d1908e90d22682169ff2ba88c1aba44333a24240b0ba627dceff3778abc51012b698672802aea6c8c26bbfe18", + "0x090df918b89bd13e0c0a0745ccee3ac8ba25569fa5ba386d501311f0bf98a643331a327742a33e16c8ac782d9cef4cb06d98b731e6ca13b0c5450951b020f9b0c6", + "0x0820f409300cb23fffe97841b4b70f4c160f90393f7d29ecb5d2dc25f15c89fb550000000000000000000000000000000000000000000000000000000000000000", + "0x061276876f7f3ac122c96a402a706e93a7da84ad82496958bf8cf8d2baefa8c02a20abfaf6bc20fadf9a7609c0562a0ff138977845b052cf9e5d4c52cb2adedbe3", + "0x0427cfcbd2fe87474008e199ef5bff09273803bbf38032c75a36a7726b3c88f8a205080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002b2d37d04a6c2068ba19a08e79f3eeabfc6d2d1d516fcd700d4c377b23f9fc3f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000001000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x530000000000000000000000000000000000000f": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x092acea573988b3a33584f55cee3da7527b7ec93c39ee431d6a00e9e1c0908c32907d5d2c7ba73004c814f367fcfa9bbed0636535570c02819442719331f977f69", + "0x090e9d499bfcd7a95f27f1232e8299d71b9e312b56a5c2f96de6ba2114ce6427600bffa1d771c4f6eb4bbdc666b4ee82f7ea04a51f7c036d38e88ce7e9f7deb0d2", + "0x092e0e76440cf40d49e6a6441452c7ff3db1c5530a007c6d11b54c655302baa6a12719c9e93c1c4ab00f37d68d1fbde1ad2c4c0f540add6fc908b56c496d140ff6", + "0x082596dc85315e1b7b634ed1b19fd101397a8aaee2a296aca23e1f154d83bf2ca81d502de1ce7abdbf1e224e458bcbde4742e517dfc7ff124fca95bc7d6916a573", + "0x0418a86f98026d1a55f6fee616f04d51be16c033651ffaafb0514287ec067d04e805080000000000000000000000000000000000000000000000000aec000000000000000000000000000000000000000000000000000000000000000000000000000000002d56fafe62ab5b6fed6b2a6cd3e6eaff4b96665a12fda3cb3fcd69f5e7bee95f44107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f8420530000000000000000000000000000000000000f000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x5300000000000000000000000000000000000017": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x0923887f7f2b818306eb521f1c9a28fa1180772e0603e778536d3bd047562df33521b0c8c03e0e8783c187c12a2309a02be178b53f86ad845a9a2d0f82d342a027", + "0x0921db0def816c47288e31e114f2d320d1bef10a2ce0ed76f2333bfbaf4c9665df164af8117b30ef75c3a4e008ea19aceaa6e63940ecf5e5a545aab0906e772f19", + "0x09243159bed6b5236c01d76e3c7ce8656377ede3215a267875ebd69ecb83609c2f1d430d8e77abbe31d81de9fd34eb7963320d07e618379663173532df9fd64a45", + "0x0901b9f43d7930c744b2f5c270fc55ebc1dad912c53348dc7fc91c254d4f65dc731935412eb3f2d483f1fad4cda432ea52bf9a2fcc83bb4998daae1e3fcb942d70", + "0x090e532e6013b5c675cdd7dd5dbca734c748a7f04cbd659dd2ae0bc5eafa5970c91e3d73de759429994c0b1ca675ad7693042bdd444939eb4adbf7098f3863b137", + "0x091cf7b52fea8453a4ca0b91aa9982cfa67d70de187ba25db4a8f248026ca3e530001cfc254334d3a06381cc5cee1769ae6912ce781377cc01b9c6917605338915", + "0x07092aee158cd2b81331e1ce9909492eb4317b6c5bc4794d546b62069798d0b24428cd8e8880db728741786b4fa7256d94a30e266ca07390acd342670e53ccb6b9", + "0x060e3bf5a186646517ca6d50e9d232f03b095fcceb727e719819a496973c2a8cf81102b8f2eac7af07547b293c5389e362fced543befbe69dc6fa5ec89b7df96e3", + "0x041918c47a133f759975cc95c0dba82051d9b5cd65407e76ef1366a9deaa14f28005080000000000000000000000000000000000000000000000000aec00000000000000000000000000000000000000000000000000000000000000000000000000000000047815c1b6b86b3270e62056fbc5c2f5e6d06a5d3255217e122006dece0bb56544107d7c70e67e04d35d77455d5755c94d4897196e4ea9a341c1a6d864a6d4d518d32c9790b7656cb1991e831f76e6d65151cbd1c05aef8cfa7d369ad2076f84205300000000000000000000000000000000000017000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x09223fbfb373b9ecc308c26ec76c19ad952f8d14a85aafd061d34b687d6e7beb610675adef0fbaddcc36c1ea1b79c6bd6a1868851064bf21564e3edb0fcd0783f6", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e0dffb83769fbf984f87ebba2f08f7ab258b82feca5b20ec8adbeaeb19fe3cd78", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa27a8c206ffeba79382d9afcf35f6f653363d70b97ff3ed66aa4a453b543683d6", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed9290b2216e48429411f311a9ffc3597586b6984fb58471fc388a1acc99973ef23a4", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e106b8432a61fadc5e4f053d82e4e1c7799c60e8b54d37a7d9328db06fcb337779", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a23ced6ba99188272a1d2d94f65b9d8249b4c039b71efa39820f1f88a9e5f810c", + "0x0700000000000000000000000000000000000000000000000000000000000000002df5dcb185b147a2f8998ef63a69f5426b673a2eda295af573cacc5684a2e807", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d2860edce8b8995f93140520f1bf3f5bdcb4a0ecf7ce87f7bc62c4c0e45d0c496", + "0x061cb8a30e843acaa90b69163814c5ce39a689acb3e7e90f2f9598c6c5488380a604f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc7fd9a700a70a0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x090b98b6ce6b18775c6f6db6c1230872616e3d7ea7900f9ff3dc07e96227480d5c007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x091df47e5df57362e0696b8661792a034fec43fb89769b9940dadb6d38fe2e094a27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada055e263bd357de13dc17a63a7c609290ac76ee1caff199e0b845090f998b3b1f", + "0x092643e673bc192c083bdc2fec99dfd68685c58fb87209f180fca7993ca1c371d32c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092aaff786ca7d6da23f3f4e93d3f89328064847693400a97f9f6d5b23ae039c85170187874586c44395c6a35c282650a92d51e74e7d8dc1898f1c5d1aa791409b", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf16d346ce301af1d474d62ecd1247b704a154ac82d35ccdd5eebbb203e6434972", + "0x080157a6aa04211703467dd2bea94c79e79aef2a40cf56ad4329275bc56303902d09b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x0808d72df8be292e0a5e8036284383881aa22ce6ccf660764a76a03beae8edca820000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000d960e81d1411112305f98fd794e05f8983e41dce2f403ae11b70be33a51f8c5", + "0x062ee089a51411cf33ef580c2b8ca32193447dc25e2a656bf729754911934a5e341dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d2050800000000000000000000000000000000000000000000000000000000000000000881000000000000000000000000000000000000000000000655cea72b1789d7e0fe0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0x34118801d76B7082aB065e23496c692d002eAf24": { + "0x400f72c890a78502e5c91f3ffd3358a502f8e987d009981e4bd2ba5706d7ebc7": [ + "0x070000000000000000000000000000000000000000000000000000000000000000189a0145a6a16c0c6cc50ae66b824c9cb1a9db406cb9be12cc7bef15e6081bcf", + "0x05", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x68795f998feb42b267415960b9a66858a99e16eab9acc45070862e86161f6d11": [ + "0x070000000000000000000000000000000000000000000000000000000000000000189a0145a6a16c0c6cc50ae66b824c9cb1a9db406cb9be12cc7bef15e6081bcf", + "0x0606444dedf3a910b30703d950eec0c2a47b64cb2a3a6e2feaca98953fb2432388186c0f16d4b0bf87c8113785af47f0ab16620fdb85c84d0059c9d48ab90e8d9a", + "0x041e671cc39994cafd19dd444d6d5e6e08d3c67f90e148d09c8757f989a693a39301010000000000000000000000000000000000000000000000000000000000000000004120b1be342fb132d6b195c0de2630c7585d0323a5d6b626b58b0fa6effee45a748a", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x726491fe49c034223dd47e414dc3ae3fde76bd4a313de2fd4ab5133ad7410a35": [ + "0x070000000000000000000000000000000000000000000000000000000000000000189a0145a6a16c0c6cc50ae66b824c9cb1a9db406cb9be12cc7bef15e6081bcf", + "0x0606444dedf3a910b30703d950eec0c2a47b64cb2a3a6e2feaca98953fb2432388186c0f16d4b0bf87c8113785af47f0ab16620fdb85c84d0059c9d48ab90e8d9a", + "0x041e671cc39994cafd19dd444d6d5e6e08d3c67f90e148d09c8757f989a693a39301010000000000000000000000000000000000000000000000000000000000000000004120b1be342fb132d6b195c0de2630c7585d0323a5d6b626b58b0fa6effee45a748a", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x5300000000000000000000000000000000000001": { + "0x0000000000000000000000000000000000000000000000000000000000000021": [ + "0x09185c96062cbc2b564296e9e1bce3354dbcbf9f5879fd062d5b50bb358f81517e2a2dbce5edb6723342643101ac68123f3790ae822b572ec8bbd69da035c7b935", + "0x092d047e244b411ce9155f14462cfb81958ef4b4c2a08fc3fd4189484a8b7711a40462e3566daed4615c6e51a0e598dfb9a7ed84c831bfc516151e9f5ffb8110ca", + "0x09261fe911b00d2fd329c6b0e4b6d4c3a810b95a82ff32e6946a3244614feb91d205b63b9955f3a8244688b1a6cb053a7559f79129086239b473999e85be4c4282", + "0x07251841563b13c8aa1784b2d917584c358e1607710c0e0b41e5b1c45a07ceac601daf38969872c436599f595013a03f6c004d1f072aa7c8347f6ead35212900a8", + "0x08249e00f5aae6d513fc492c019a4e4de721a60764cada3866244a95db0d4e38bf0000000000000000000000000000000000000000000000000000000000000000", + "0x0818749973fd91f5be3859e8cfa68caee44893779b104075dd793bf4c486475b5b0000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000017d7d830e47e7f6da4ddbf680cf2eb1f9b538cec3240c26711d780f22f093f9a", + "0x0700000000000000000000000000000000000000000000000000000000000000000abb47e0d1f63a2287426a57ee22892129c848adcfadb74266fee6b726c86ede", + "0x07000000000000000000000000000000000000000000000000000000000000000021e13181b559aa6ad86c239a49008b70447de95cb59caa3242701b556ff6d030", + "0x0609a3a225fccec46d81cb0f42943e252523157488c3f7712cc9528ec8eceeee2d0736af2262ac152f39d5da51e394c65d8ab9f3223c051e5be4c43e508a8766cf", + "0x042f683d080c393f5fb2ade2190fd56e8a5e8fa26533acdea8cce25caa236027cc01010000f15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67200000000000000000000000000000000000000000000000000000000000000021", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x530000000000000000000000000000000000000f": { + "0x0000000000000000000000000000000000000000000000000000000000000001": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x0826741766ba756a60481cdbfbf1385b2e19410e0b174723be76ccce90749c19b71721b818bb25fdc0627fbd0f0ced2d5f58f1065a3e11d06073b58139aa144311", + "0x0700000000000000000000000000000000000000000000000000000000000000002aa3eec54733e8552173f9294865bf49cf8b2c952706e74cee743186ad4cd928", + "0x080ccb96bae7a65349544b73c51e1c17e905afa52b470cd3d12f5068df70ae80380000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000001982d84b59e872b109cb1b01bc1d03406977eb16aeef0ca94449c0e4dbde6426", + "0x08148058fb1d8433119f2f078417d61bd03610293c07a22079d8add13751806be00000000000000000000000000000000000000000000000000000000000000000", + "0x080b933363c8e146ca259ddce0026a7cda36a75da17137370243f5452dad2e2bd10000000000000000000000000000000000000000000000000000000000000000", + "0x07000000000000000000000000000000000000000000000000000000000000000029d862e775a17f6a182820b3ef22a94850f73238972142e77c423a5ccda02739", + "0x0607f1a71dd97c713b6e6f0e0429b179a7f7a5d1a95605340f87f7b3b5c6571655156a0960a84fa4287f66d18b9c39ab9d403fa6b6dddd126f47758aadcb82e122", + "0x0426049ba6de63003492eb078a01a8aa4f4a0e67f28f0955c2eba9101d5d2eea50010100000000000000000000000000000000000000000000000000000000000005f5e108200000000000000000000000000000000000000000000000000000000000000001", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000002": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04020953ad52de135367a1ba2629636216ed5174cce5629d11b5d97fe733f07dcc0101000000000000000000000000000000000000000000000000000000000000000009c4200000000000000000000000000000000000000000000000000000000000000002", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000003": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x0406c50541f08911ad149aa545dd3d606f86ee63c751a795c7d57f0d3f85e6bdeb01010000000000000000000000000000000000000000000000000000000000003b9aca00200000000000000000000000000000000000000000000000000000000000000003", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000006": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x090084ca152c72cefb55b42146c2ac6b95a984db669d559d50cea6b7e776e5a6b31952bdec2ac6cd00c8bebfc77863f183bd2c9d09cd1938ebb9fe5fc2e2d2c1f4", + "0x061b12dcd1a582e1e93ccb441e0688e482eb23efa9fb802dd24b7e5a46a7fcd9e21e144bbeb8f4c147dafacf9567e13b1b15e4804a9d74df2da7619735d765c1be", + "0x04064ef33f6d7044a6aa1458b710bb24a531e379030cf6ca490d84fff1d8e79c94010100000000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000006", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000007": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x090b1b80070a297010cca4d2fb3048fe8814f318eb8a6034a339d8e843544f1d1b2930aa108d1bfc505b36919afcd36848860c81ec8b00c0787b390250bfa7e31a", + "0x082b571cbf4c65b2bf5a694234230c0bb2e95c55920e0c050a73027dea6f5535ab0000000000000000000000000000000000000000000000000000000000000000", + "0x082119746c2afd71d1574bea80b47eab52d70db3990cd1c9f6d4df98eaed5c3ff01555b1ad85223923b16c0129d117eb56e12b2c4310ff3014c28b40684e3ea69d", + "0x040d1e80106f23933567a7c4881177b5d6c45a3f319feafe560a28df75769db9ba0101000000000000000000000000000000000000000000000000000000000b33edbfaf14200000000000000000000000000000000000000000000000000000000000000007", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000008": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x070ee2ca3e190e48951aa8d5bb00d33ba76a92de69a807dfa6f2eaa9881e303f3226ee193ec0e0368b03645561b95ea6fee2df8bb5f1db80afc64364ec993655f8", + "0x060e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200302bd20972a48695c1c418461cc2124f0c246ad1bb41e1d8d05cd9527784228a", + "0x0412c0c59f64422dd5b7ce259c4aa62e9bf4e2bcc4f0da068e332b9f4e502ba38f01010000000000000000000000000000000000000000000000000000000000174876e800200000000000000000000000000000000000000000000000000000000000000008", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x0000000000000000000000000000000000000000000000000000000000000009": [ + "0x090a47cdf7291bf5686a20e9325d5e85cd4c10009d5a5b727819689a559d47c621305837382344bb8c16c78c482e68e414dcaf0dd956b894c85acca1ae8d3b661a", + "0x0700000000000000000000000000000000000000000000000000000000000000001f63b7a392d1af6e501f653490c2436a2b6ecc4835f91bfc8983aded770a595c", + "0x05", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "0x5300000000000000000000000000000000000017": { + "0x0000000000000000000000000000000000000000000000000000000000000065": [ + "0x091e6f7e3b2102387b1b88b997f51470252cf226b68be43284a52489de59a2abb0105259f0b8858b399570780c836f31751cc2566ba5935c50b2db952c1020abb0", + "0x091623ed516b763c3dd7bd75be87d3bda3bc50b9909eb6f832c706e2f973246c131bb859e26b23e5d0474d863af33c2a1163103f5881396448cd8ef9cfe18f9b92", + "0x0812bc2e9bd37f44093eb71c7af67706fd9be1a51a828a3d321b792b5490c6ad560e38bf5d7d592ab89df92d87f260b8529d9c466b936b42ad8fbfe576bf97b200", + "0x07290cb26e75385afbd8fce76271781f49ca9f5737fe573f7a121642a43bdba61a04c601c63ad45f2c8c8c8cbe20c788ef63e574ce0e800153c8b0c855dca3c0be", + "0x0702bdcd1f95c7883b7b633e040eb8263e1fb0ab97a3fa5e590f4ba82b29ee3e5a2284968786ddc52459cd3e8be14da7533c8470c63575eaccae28bd65169074f9", + "0x07000000000000000000000000000000000000000000000000000000000000000028bcb7656960130b704e5cd2afdc5bf933752cc290e10ce8de9ff4eeff23fa71", + "0x060bf27252e269c88af00daf8e309f853351131ba9cb56aa8ffdc008546b4eefc9236d89b8a52ce6f920048f57605af94c276903d51b48d2a9549a2d4ce38af1e2", + "0x042115c9b0a0938aa1ce2e8c01581e5aa931288249a453588de70cf2c5dae26a7b0101000072fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc200000000000000000000000000000000000000000000000000000000000000065", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + }, + "codes": [ + { + "codeSize": 0, + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "code": "0x" + }, + { + "codeSize": 7650, + "keccakCodeHash": "0xcac509e682b399f3ee95737f35f4da572121f83a12f3edb76b976789f91151d0", + "hash": "0x2de2a02dd2d9eb0adab021a6c9b3ec7f43a8d624de5807d4ead158a3abdaec40", + "code": "0x608060405234801561000f575f80fd5b506004361061009c575f3560e01c8063637bd16411610064578063637bd1641461019057806365207521146101c05780638a59e100146101f05780638f527e9414610220578063dbd81bc71461023e5761009c565b80630c8f3129146100a057806321ceca81146100d0578063447a4c62146101005780635e109b571461013057806363138d4f14610160575b5f80fd5b6100ba60048036038101906100b5919061127b565b61026e565b6040516100c791906112dc565b60405180910390f35b6100ea60048036038101906100e59190611393565b6103ad565b6040516100f7919061143a565b60405180910390f35b61011a6004803603810190610115919061148d565b610460565b60405161012791906112dc565b60405180910390f35b61014a60048036038101906101459190611393565b610744565b60405161015791906112dc565b60405180910390f35b61017a6004803603810190610175919061127b565b610755565b60405161018791906112dc565b60405180910390f35b6101aa60048036038101906101a59190611393565b610894565b6040516101b791906112dc565b60405180910390f35b6101da60048036038101906101d5919061127b565b6108a5565b6040516101e791906112dc565b60405180910390f35b61020a600480360381019061020591906114b8565b610a35565b60405161021791906112dc565b60405180910390f35b610228610d79565b604051610235919061143a565b60405180910390f35b61025860048036038101906102539190611393565b610fa1565b60405161026591906112dc565b60405180910390f35b5f8061027a8351610fd5565b60405160200161028a9190611596565b60405160208183030381529060405290505f80600373ffffffffffffffffffffffffffffffffffffffff16856040516102c391906115f1565b5f60405180830381855afa9150503d805f81146102fb576040519150601f19603f3d011682016040523d82523d5f602084013e610300565b606091505b5091509150815f846040516103159190611607565b90815260200160405180910390205f6101000a81548160ff0219169083151502179055508060018460405161034a9190611607565b908152602001604051809103902090816103649190611817565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018383834260405161039a949392919061193d565b60405180910390a1819350505050919050565b6001818051602081018201805184825260208301602085012081835280955050505050505f9150905080546103e19061164a565b80601f016020809104026020016040519081016040528092919081815260200182805461040d9061164a565b80156104585780601f1061042f57610100808354040283529160200191610458565b820191905f5260205f20905b81548152906001019060200180831161043b57829003601f168201915b505050505081565b5f8061046b83610fd5565b60405160200161047b91906119d8565b60405160208183030381529060405290505f60c08461049a9190611a26565b67ffffffffffffffff8111156104b3576104b2611157565b5b6040519080825280601f01601f1916602001820160405280156104e55781602001600182028036833780820191505090505b5090505f604051806040016040528060018152602001600281525090505f60405180608001604052807f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c281526020017f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed81526020017f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b81526020017f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa81525090505f5b86811015610629575f60c0826105be9190611a26565b90505f5b60028110156105eb576020810285015160208202830160208801015280806001019150506105c2565b505f5b600481101561061a576020810284015160208202604084010160208801015280806001019150506105ee565b505080806001019150506105a8565b505f80600873ffffffffffffffffffffffffffffffffffffffff16620f42408660405161065691906115f1565b5f604051808303818686fa925050503d805f811461068f576040519150601f19603f3d011682016040523d82523d5f602084013e610694565b606091505b5091509150815f876040516106a99190611607565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001876040516106de9190611607565b908152602001604051809103902090816106f89190611817565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c0018683834260405161072e949392919061193d565b60405180910390a1819650505050505050919050565b5f61074e82610755565b9050919050565b5f806107618351610fd5565b6040516020016107719190611ab1565b60405160208183030381529060405290505f80600273ffffffffffffffffffffffffffffffffffffffff16856040516107aa91906115f1565b5f60405180830381855afa9150503d805f81146107e2576040519150601f19603f3d011682016040523d82523d5f602084013e6107e7565b606091505b5091509150815f846040516107fc9190611607565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001846040516108319190611607565b9081526020016040518091039020908161084b9190611817565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00183838342604051610881949392919061193d565b60405180910390a1819350505050919050565b5f61089e8261026e565b9050919050565b5f60d58251146108ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e190611b42565b60405180910390fd5b5f6040518060400160405280600781526020017f426c616b6532460000000000000000000000000000000000000000000000000081525090505f80600973ffffffffffffffffffffffffffffffffffffffff168560405161094b91906115f1565b5f60405180830381855afa9150503d805f8114610983576040519150601f19603f3d011682016040523d82523d5f602084013e610988565b606091505b5091509150815f8460405161099d9190611607565b90815260200160405180910390205f6101000a81548160ff021916908315150217905550806001846040516109d29190611607565b908152602001604051809103902090816109ec9190611817565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00183838342604051610a22949392919061193d565b60405180910390a1819350505050919050565b5f80610a4085610fd5565b610a4985610fd5565b610a5285610fd5565b604051602001610a6493929190611bf4565b60405160208183030381529060405290505f8385876060610a859190611c45565b610a8f9190611c45565b610a999190611c45565b67ffffffffffffffff811115610ab257610ab1611157565b5b6040519080825280601f01601f191660200182016040528015610ae45781602001600182028036833780820191505090505b5090505f865f1b90505f865f1b90505f865f1b90508260208501528160408501528060608501525f891115610b7257600760f81b8460018b6060610b289190611c45565b610b329190611c78565b81518110610b4357610b42611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f881115610be457600360f81b8460018a8c6060610b909190611c45565b610b9a9190611c45565b610ba49190611c78565b81518110610bb557610bb4611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f871115610c6157601160f81b846001898b8d6060610c039190611c45565b610c0d9190611c45565b610c179190611c45565b610c219190611c78565b81518110610c3257610c31611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505b5f80600573ffffffffffffffffffffffffffffffffffffffff1686604051610c8991906115f1565b5f60405180830381855afa9150503d805f8114610cc1576040519150601f19603f3d011682016040523d82523d5f602084013e610cc6565b606091505b5091509150815f88604051610cdb9190611607565b90815260200160405180910390205f6101000a81548160ff02191690831515021790555080600188604051610d109190611607565b90815260200160405180910390209081610d2a9190611817565b507ffafe735b5fe8b90ced311e90adbc382883d7ed521d7a3d16541de0ff8d44c00187838342604051610d60949392919061193d565b60405180910390a1819750505050505050509392505050565b60605f60d567ffffffffffffffff811115610d9757610d96611157565b5b6040519080825280601f01601f191660200182016040528015610dc95781602001600182028036833780820191505090505b5090505f60f81b815f81518110610de357610de2611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600181518110610e2957610e28611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60f81b81600281518110610e6f57610e6e611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600c60f81b81600381518110610eb657610eb5611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f600490505b60d4811015610f525761010081610f019190611d05565b60f81b828281518110610f1757610f16611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508080600101915050610eea565b50600160f81b8160d481518110610f6c57610f6b611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053508091505090565b5f818051602081018201805184825260208301602085012081835280955050505050505f915054906101000a900460ff1681565b60605f820361101b576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611129565b5f8290505f5b5f821461104a57808061103390611d35565b915050600a826110439190611d7c565b9150611021565b5f8167ffffffffffffffff81111561106557611064611157565b5b6040519080825280601f01601f1916602001820160405280156110975781602001600182028036833780820191505090505b5090505b5f8514611122576001826110af9190611c78565b9150600a856110be9190611d05565b60306110ca9190611c45565b60f81b8183815181106110e0576110df611cab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600a8561111b9190611d7c565b945061109b565b8093505050505b919050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61118d82611147565b810181811067ffffffffffffffff821117156111ac576111ab611157565b5b80604052505050565b5f6111be61112e565b90506111ca8282611184565b919050565b5f67ffffffffffffffff8211156111e9576111e8611157565b5b6111f282611147565b9050602081019050919050565b828183375f83830152505050565b5f61121f61121a846111cf565b6111b5565b90508281526020810184848401111561123b5761123a611143565b5b6112468482856111ff565b509392505050565b5f82601f8301126112625761126161113f565b5b813561127284826020860161120d565b91505092915050565b5f602082840312156112905761128f611137565b5b5f82013567ffffffffffffffff8111156112ad576112ac61113b565b5b6112b98482850161124e565b91505092915050565b5f8115159050919050565b6112d6816112c2565b82525050565b5f6020820190506112ef5f8301846112cd565b92915050565b5f67ffffffffffffffff82111561130f5761130e611157565b5b61131882611147565b9050602081019050919050565b5f611337611332846112f5565b6111b5565b90508281526020810184848401111561135357611352611143565b5b61135e8482856111ff565b509392505050565b5f82601f83011261137a5761137961113f565b5b813561138a848260208601611325565b91505092915050565b5f602082840312156113a8576113a7611137565b5b5f82013567ffffffffffffffff8111156113c5576113c461113b565b5b6113d184828501611366565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f61140c826113da565b61141681856113e4565b93506114268185602086016113f4565b61142f81611147565b840191505092915050565b5f6020820190508181035f8301526114528184611402565b905092915050565b5f819050919050565b61146c8161145a565b8114611476575f80fd5b50565b5f8135905061148781611463565b92915050565b5f602082840312156114a2576114a1611137565b5b5f6114af84828501611479565b91505092915050565b5f805f606084860312156114cf576114ce611137565b5b5f6114dc86828701611479565b93505060206114ed86828701611479565b92505060406114fe86828701611479565b9150509250925092565b5f81905092915050565b7f524950454d443136305f000000000000000000000000000000000000000000005f82015250565b5f611546600a83611508565b915061155182611512565b600a82019050919050565b5f81519050919050565b5f6115708261155c565b61157a8185611508565b935061158a8185602086016113f4565b80840191505092915050565b5f6115a08261153a565b91506115ac8284611566565b915081905092915050565b5f81905092915050565b5f6115cb826113da565b6115d581856115b7565b93506115e58185602086016113f4565b80840191505092915050565b5f6115fc82846115c1565b915081905092915050565b5f6116128284611566565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061166157607f821691505b6020821081036116745761167361161d565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026116d67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261169b565b6116e0868361169b565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61171b6117166117118461145a565b6116f8565b61145a565b9050919050565b5f819050919050565b61173483611701565b61174861174082611722565b8484546116a7565b825550505050565b5f90565b61175c611750565b61176781848461172b565b505050565b5b8181101561178a5761177f5f82611754565b60018101905061176d565b5050565b601f8211156117cf576117a08161167a565b6117a98461168c565b810160208510156117b8578190505b6117cc6117c48561168c565b83018261176c565b50505b505050565b5f82821c905092915050565b5f6117ef5f19846008026117d4565b1980831691505092915050565b5f61180783836117e0565b9150826002028217905092915050565b611820826113da565b67ffffffffffffffff81111561183957611838611157565b5b611843825461164a565b61184e82828561178e565b5f60209050601f83116001811461187f575f841561186d578287015190505b61187785826117fc565b8655506118de565b601f19841661188d8661167a565b5f5b828110156118b45784890151825560018201915060208501945060208101905061188f565b868310156118d157848901516118cd601f8916826117e0565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b5f6119008261155c565b61190a81856118e6565b935061191a8185602086016113f4565b61192381611147565b840191505092915050565b6119378161145a565b82525050565b5f6080820190508181035f83015261195581876118f6565b905061196460208301866112cd565b81810360408301526119768185611402565b9050611985606083018461192e565b95945050505050565b7f50616972696e675f0000000000000000000000000000000000000000000000005f82015250565b5f6119c2600883611508565b91506119cd8261198e565b600882019050919050565b5f6119e2826119b6565b91506119ee8284611566565b915081905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611a308261145a565b9150611a3b8361145a565b9250828202611a498161145a565b91508282048414831517611a6057611a5f6119f9565b5b5092915050565b7f5348413235365f000000000000000000000000000000000000000000000000005f82015250565b5f611a9b600783611508565b9150611aa682611a67565b600782019050919050565b5f611abb82611a8f565b9150611ac78284611566565b915081905092915050565b7f426c616b6532662072657175697265732065786163746c7920323133206279745f8201527f657320696e707574000000000000000000000000000000000000000000000000602082015250565b5f611b2c6028836118e6565b9150611b3782611ad2565b604082019050919050565b5f6020820190508181035f830152611b5981611b20565b9050919050565b7f4d6f644578705f000000000000000000000000000000000000000000000000005f82015250565b5f611b94600783611508565b9150611b9f82611b60565b600782019050919050565b7f5f000000000000000000000000000000000000000000000000000000000000005f82015250565b5f611bde600183611508565b9150611be982611baa565b600182019050919050565b5f611bfe82611b88565b9150611c0a8286611566565b9150611c1582611bd2565b9150611c218285611566565b9150611c2c82611bd2565b9150611c388284611566565b9150819050949350505050565b5f611c4f8261145a565b9150611c5a8361145a565b9250828201905080821115611c7257611c716119f9565b5b92915050565b5f611c828261145a565b9150611c8d8361145a565b9250828203905081811115611ca557611ca46119f9565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611d0f8261145a565b9150611d1a8361145a565b925082611d2a57611d29611cd8565b5b828206905092915050565b5f611d3f8261145a565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611d7157611d706119f9565b5b600182019050919050565b5f611d868261145a565b9150611d918361145a565b925082611da157611da0611cd8565b5b82820490509291505056fea2646970667358221220a76e17a53aa00f68d67da7a762cdae27808d58de0f1cc9c1c13b0f525c25f70364736f6c634300081a0033" + } + ], + "txStorageTraces": [ + { + "rootBefore": "0x0e7084285b13c9490d2b3bb3ca33b55526cd57a3d0998784889f452c1fe1e22a", + "rootAfter": "0x04823040a3e712336ffe896207761f576d20e610ba0be3d555d35f8f621371a9", + "proofs": { + "0x0000000000000000000000000000000000000008": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x09223fbfb373b9ecc308c26ec76c19ad952f8d14a85aafd061d34b687d6e7beb610675adef0fbaddcc36c1ea1b79c6bd6a1868851064bf21564e3edb0fcd0783f6", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e0dffb83769fbf984f87ebba2f08f7ab258b82feca5b20ec8adbeaeb19fe3cd78", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa27a8c206ffeba79382d9afcf35f6f653363d70b97ff3ed66aa4a453b543683d6", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed9290b2216e48429411f311a9ffc3597586b6984fb58471fc388a1acc99973ef23a4", + "0x090d2daa9e849fc9f1502dd600db166a22950699a54acc4934067f31edb218aa9b301616bf99787b6c731e05949ec9a4de696ec97062003a0ac6524b488aabb293", + "0x082587ccb3b386ae3d8a09547620c34823d3c7f0c672db89b2233ff37210d939bf1b2e1269fe7aa8bc2a40fd5b42046d724ff1869865a76442376b0a84a153873e", + "0x0723df95a3519b71802038e5f1f2704df7a7dc28f9d638be9234a0edc6a2e845f20446cc7bbda1a337f86b559004a173dfef3753eba6ef8e7a1b055a4aeb76092d", + "0x070e239a09355ecbb05370ac258622b0c6ed88daa6d2374a91842c1337a7a71be1022482d4c4ea6734399bbc2249d7c5e073de0572f25f599755129169ebd0778c", + "0x0425eeb63dcae6b3d3508a3a8f5b3d3e021ad8c1e210b73179c9116c082f70dabc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008c621c5d486a08000000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420763dd93930d25a4753f9ecc56626614aeda98e63000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x34118801d76B7082aB065e23496c692d002eAf24": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x09223fbfb373b9ecc308c26ec76c19ad952f8d14a85aafd061d34b687d6e7beb610675adef0fbaddcc36c1ea1b79c6bd6a1868851064bf21564e3edb0fcd0783f6", + "0x0908e3422b238eb49aa42cbec56a3d2384fb532f80a792059fa6b7114d0e091fc9172b3f8173877733a08cb2cfec3ad805e8009844c4e6bc9265d275c58524b4b0", + "0x090d38f216b8304845b81b08ba9c4f2ecbf6e681042b8ea41e5ff4e7dec490274810f52d1ae7e4bc77bc3cd9a02c9e581550def1bfb2e181e5c825910c3f03f4a6", + "0x091c5154681f6bcf86f9c653cacf0de32e215576176d2f514436a3a75534d321d72f9eb03e2ed7de3331a5879a71a2c8c338fff8c7673c5a1a3c8b44912300bf20", + "0x090897cb100d4f830610ebaa2e8e8811cd5953ad870a777e4696b7f93a437e9236026292cf7673cb3a6f86e695cd872bbc08aa3f4c2b848a48392120c4cf7f71f2", + "0x091d216137f369490b0cd2856488f4504777e4e3b80c5468be68bcc80ed422092c01b060708a06882daa24cdf034a6c5427b9dc80635a27107c192c9b8cf5db4b0", + "0x0623206f13da658e025824f2cff48aee17f2c0d14584273c324710a677cb6f468c2ed47f6805d38a315248cdf24a151ecd4168b7c6d0e01fb2d2932753aa06de27", + "0x041a43febf8ef3453b660638f994f2cd6e72e187b24929ab027143b1cff6dd1bf405080000000000000000000000000000000000000000000000001de200000000000000010000000000000000000000000000000000000000000000000000000000000000152f2d03d3cd603c7c5870016b0bf9b4e1a9398df431f71b62a80c39ef8f4953cac509e682b399f3ee95737f35f4da572121f83a12f3edb76b976789f91151d02de2a02dd2d9eb0adab021a6c9b3ec7f43a8d624de5807d4ead158a3abdaec402034118801d76b7082ab065e23496c692d002eaf24000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x716170D0687c3d31CC10DebE0dAa1DDD3FE3D792": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x09104f87b11816f6619611fbd4dfb6b8425a675325a61e91a29346b0adeca37af02cbd18db2840579d4fed4d451ef3c0dbec0b84acc5ddf83767e049d9a1d62d18", + "0x09223fbfb373b9ecc308c26ec76c19ad952f8d14a85aafd061d34b687d6e7beb610675adef0fbaddcc36c1ea1b79c6bd6a1868851064bf21564e3edb0fcd0783f6", + "0x092b26192ebc81162aa68594a054c44db6465a42a82afa2a88ea3a15f1d179742e0dffb83769fbf984f87ebba2f08f7ab258b82feca5b20ec8adbeaeb19fe3cd78", + "0x0912f32fcd87faa8889ff2b91d786a0ef976de3b5553d5284f8cbd6e9729bd31aa27a8c206ffeba79382d9afcf35f6f653363d70b97ff3ed66aa4a453b543683d6", + "0x0929be597731cca26d8264df590bb5eb3bbcb0549c210ccce091381bea0a5ed9290b2216e48429411f311a9ffc3597586b6984fb58471fc388a1acc99973ef23a4", + "0x09298da2e6f54d728445d34319cf317db690b4458e1cc40328ef50785d552a54e106b8432a61fadc5e4f053d82e4e1c7799c60e8b54d37a7d9328db06fcb337779", + "0x0905a84a34349628360a471a26d87e83b5cb22108b4e512f899ff26456556e9c7a23ced6ba99188272a1d2d94f65b9d8249b4c039b71efa39820f1f88a9e5f810c", + "0x0700000000000000000000000000000000000000000000000000000000000000002df5dcb185b147a2f8998ef63a69f5426b673a2eda295af573cacc5684a2e807", + "0x0921ddfb4b9e43ab809479c10047a21a49a811c5ba8cc53280e5d7502943c0030d2860edce8b8995f93140520f1bf3f5bdcb4a0ecf7ce87f7bc62c4c0e45d0c496", + "0x061cb8a30e843acaa90b69163814c5ce39a689acb3e7e90f2f9598c6c5488380a604f6276c48cec8cdf8fe675b19d5cb173b53fca9d0c8f4e0b2015528dc843fcf", + "0x0414b0bb4090afcdae623b69d996022ea82c221cd1a3c00c5b13acb37d750f87fc0508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bfc7fd9a700a70a0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420716170d0687c3d31cc10debe0daa1ddd3fe3d792000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266": [ + "0x091f5e15067db50963fe45217487e31ba7119b3e7e4ec01ca77b01a01772aa34a3019875ca6665598fafe0e1e8b598234d8fac1f97fd4ddd8934d1bce4adbab45f", + "0x090fcb4258d687ba6776a04b1faa3767d41c69c74830126d2353bed13ee423576e2e990ee1c3d90fd3c1fed57f29e85c481b2cf181ffae6c8efa1c719e3a094de4", + "0x090b98b6ce6b18775c6f6db6c1230872616e3d7ea7900f9ff3dc07e96227480d5c007f89220807403164fd521d78dc5244d8b1e74320055a60d4f8a3755c80dee8", + "0x091df47e5df57362e0696b8661792a034fec43fb89769b9940dadb6d38fe2e094a27b48395b98d9dee704b606911b11f95fc96160e498e19fbcf3ecc069e0a768e", + "0x09222c59fb203c2136a3a186f2913505e1ca71f725701fddec9401ac0c19878ada055e263bd357de13dc17a63a7c609290ac76ee1caff199e0b845090f998b3b1f", + "0x092643e673bc192c083bdc2fec99dfd68685c58fb87209f180fca7993ca1c371d32c06a687e38230484a4b6da57e9789bd2b162494b8996940dde8f76be97e18e9", + "0x092aaff786ca7d6da23f3f4e93d3f89328064847693400a97f9f6d5b23ae039c85170187874586c44395c6a35c282650a92d51e74e7d8dc1898f1c5d1aa791409b", + "0x091a2e42b984a6b38ac4cee46e54d20e4b5333e29262d465ec5d3f94bdf62986bf16d346ce301af1d474d62ecd1247b704a154ac82d35ccdd5eebbb203e6434972", + "0x080157a6aa04211703467dd2bea94c79e79aef2a40cf56ad4329275bc56303902d09b11876e7719db807b8d2c600e5babd3239cf90972e0301a6b204796f78205d", + "0x0808d72df8be292e0a5e8036284383881aa22ce6ccf660764a76a03beae8edca820000000000000000000000000000000000000000000000000000000000000000", + "0x0700000000000000000000000000000000000000000000000000000000000000000d960e81d1411112305f98fd794e05f8983e41dce2f403ae11b70be33a51f8c5", + "0x062ee089a51411cf33ef580c2b8ca32193447dc25e2a656bf729754911934a5e341dd09d967fa39b772f3fa838f3d9d63ab3cac97964be50bf0bbce7053209285c", + "0x040d972511ec05ac7e25d155e7d292ab9a61b2227df344cd0eabfeff6f423c64d2050800000000000000000000000000000000000000000000000000000000000000000881000000000000000000000000000000000000000000000655cea72b1789d7e0fe0000000000000000000000000000000000000000000000000000000000000000c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4702098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b6486420f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + }, + "storageProofs": { + "0x34118801d76B7082aB065e23496c692d002eAf24": { + "0x400f72c890a78502e5c91f3ffd3358a502f8e987d009981e4bd2ba5706d7ebc7": [ + "0x070000000000000000000000000000000000000000000000000000000000000000189a0145a6a16c0c6cc50ae66b824c9cb1a9db406cb9be12cc7bef15e6081bcf", + "0x05", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x68795f998feb42b267415960b9a66858a99e16eab9acc45070862e86161f6d11": [ + "0x070000000000000000000000000000000000000000000000000000000000000000189a0145a6a16c0c6cc50ae66b824c9cb1a9db406cb9be12cc7bef15e6081bcf", + "0x0606444dedf3a910b30703d950eec0c2a47b64cb2a3a6e2feaca98953fb2432388186c0f16d4b0bf87c8113785af47f0ab16620fdb85c84d0059c9d48ab90e8d9a", + "0x041e671cc39994cafd19dd444d6d5e6e08d3c67f90e148d09c8757f989a693a39301010000000000000000000000000000000000000000000000000000000000000000004120b1be342fb132d6b195c0de2630c7585d0323a5d6b626b58b0fa6effee45a748a", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ], + "0x726491fe49c034223dd47e414dc3ae3fde76bd4a313de2fd4ab5133ad7410a35": [ + "0x070000000000000000000000000000000000000000000000000000000000000000189a0145a6a16c0c6cc50ae66b824c9cb1a9db406cb9be12cc7bef15e6081bcf", + "0x0606444dedf3a910b30703d950eec0c2a47b64cb2a3a6e2feaca98953fb2432388186c0f16d4b0bf87c8113785af47f0ab16620fdb85c84d0059c9d48ab90e8d9a", + "0x041e671cc39994cafd19dd444d6d5e6e08d3c67f90e148d09c8757f989a693a39301010000000000000000000000000000000000000000000000000000000000000000004120b1be342fb132d6b195c0de2630c7585d0323a5d6b626b58b0fa6effee45a748a", + "0x5448495320495320534f4d45204d4147494320425954455320464f5220534d54206d3172525867503278704449" + ] + } + } + } + ], + "executionResults": [ + { + "l1DataFee": "0x11ecafb4c3f", + "gas": 297299, + "failed": false, + "returnValue": "0000000000000000000000000000000000000000000000000000000000000001", + "from": { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2177, + "balance": "0x655cea72b1789d7e0fe", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + "to": { + "address": "0x34118801d76b7082ab065e23496c692d002eaf24", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0xcac509e682b399f3ee95737f35f4da572121f83a12f3edb76b976789f91151d0", + "poseidonCodeHash": "0x2de2a02dd2d9eb0adab021a6c9b3ec7f43a8d624de5807d4ead158a3abdaec40", + "codeSize": 7650 + }, + "accountAfter": [ + { + "address": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "nonce": 2178, + "balance": "0x655cea729b38675d9ff", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + }, + { + "address": "0x34118801d76b7082ab065e23496c692d002eaf24", + "nonce": 1, + "balance": "0x0", + "keccakCodeHash": "0xcac509e682b399f3ee95737f35f4da572121f83a12f3edb76b976789f91151d0", + "poseidonCodeHash": "0x2de2a02dd2d9eb0adab021a6c9b3ec7f43a8d624de5807d4ead158a3abdaec40", + "codeSize": 7650 + }, + { + "address": "0x716170d0687c3d31cc10debe0daa1ddd3fe3d792", + "nonce": 0, + "balance": "0x2bfc813daa62ae09", + "keccakCodeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "poseidonCodeHash": "0x2098f5fb9e239eab3ceac3f27b81e481dc3124d55ffed523a839ee8446b64864", + "codeSize": 0 + } + ], + "structLogs": [ + { + "pc": 0, + "op": "PUSH1", + "gas": 276095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 2, + "op": "PUSH1", + "gas": 276092, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4, + "op": "MSTORE", + "gas": 276089, + "gasCost": 12, + "depth": 1 + }, + { + "pc": 5, + "op": "CALLVALUE", + "gas": 276077, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6, + "op": "DUP1", + "gas": 276075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7, + "op": "ISZERO", + "gas": 276072, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 8, + "op": "PUSH2", + "gas": 276069, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 11, + "op": "JUMPI", + "gas": 276066, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 15, + "op": "JUMPDEST", + "gas": 276056, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 16, + "op": "POP", + "gas": 276055, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 17, + "op": "PUSH1", + "gas": 276053, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 19, + "op": "CALLDATASIZE", + "gas": 276050, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 20, + "op": "LT", + "gas": 276048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 21, + "op": "PUSH2", + "gas": 276045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 24, + "op": "JUMPI", + "gas": 276042, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 25, + "op": "PUSH0", + "gas": 276032, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 26, + "op": "CALLDATALOAD", + "gas": 276030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 27, + "op": "PUSH1", + "gas": 276027, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 29, + "op": "SHR", + "gas": 276024, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 30, + "op": "DUP1", + "gas": 276021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 31, + "op": "PUSH4", + "gas": 276018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 36, + "op": "GT", + "gas": 276015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 37, + "op": "PUSH2", + "gas": 276012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 40, + "op": "JUMPI", + "gas": 276009, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 100, + "op": "JUMPDEST", + "gas": 275999, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 101, + "op": "DUP1", + "gas": 275998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 102, + "op": "PUSH4", + "gas": 275995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 107, + "op": "EQ", + "gas": 275992, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 108, + "op": "PUSH2", + "gas": 275989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 111, + "op": "JUMPI", + "gas": 275986, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 112, + "op": "DUP1", + "gas": 275976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 113, + "op": "PUSH4", + "gas": 275973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 118, + "op": "EQ", + "gas": 275970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 119, + "op": "PUSH2", + "gas": 275967, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 122, + "op": "JUMPI", + "gas": 275964, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 123, + "op": "DUP1", + "gas": 275954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 124, + "op": "PUSH4", + "gas": 275951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 129, + "op": "EQ", + "gas": 275948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 130, + "op": "PUSH2", + "gas": 275945, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 133, + "op": "JUMPI", + "gas": 275942, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 256, + "op": "JUMPDEST", + "gas": 275932, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 257, + "op": "PUSH2", + "gas": 275931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 260, + "op": "PUSH1", + "gas": 275928, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 262, + "op": "DUP1", + "gas": 275925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 263, + "op": "CALLDATASIZE", + "gas": 275922, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 264, + "op": "SUB", + "gas": 275920, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 265, + "op": "DUP2", + "gas": 275917, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 266, + "op": "ADD", + "gas": 275914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 267, + "op": "SWAP1", + "gas": 275911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 268, + "op": "PUSH2", + "gas": 275908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 271, + "op": "SWAP2", + "gas": 275905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 272, + "op": "SWAP1", + "gas": 275902, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 273, + "op": "PUSH2", + "gas": 275899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 276, + "op": "JUMP", + "gas": 275896, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5261, + "op": "JUMPDEST", + "gas": 275888, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5262, + "op": "PUSH0", + "gas": 275887, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5263, + "op": "PUSH1", + "gas": 275885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5265, + "op": "DUP3", + "gas": 275882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5266, + "op": "DUP5", + "gas": 275879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5267, + "op": "SUB", + "gas": 275876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5268, + "op": "SLT", + "gas": 275873, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5269, + "op": "ISZERO", + "gas": 275870, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5270, + "op": "PUSH2", + "gas": 275867, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5273, + "op": "JUMPI", + "gas": 275864, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5282, + "op": "JUMPDEST", + "gas": 275854, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5283, + "op": "PUSH0", + "gas": 275853, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5284, + "op": "PUSH2", + "gas": 275851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5287, + "op": "DUP5", + "gas": 275848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5288, + "op": "DUP3", + "gas": 275845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5289, + "op": "DUP6", + "gas": 275842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5290, + "op": "ADD", + "gas": 275839, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5291, + "op": "PUSH2", + "gas": 275836, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5294, + "op": "JUMP", + "gas": 275833, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5241, + "op": "JUMPDEST", + "gas": 275825, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5242, + "op": "PUSH0", + "gas": 275824, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5243, + "op": "DUP2", + "gas": 275822, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5244, + "op": "CALLDATALOAD", + "gas": 275819, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5245, + "op": "SWAP1", + "gas": 275816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5246, + "op": "POP", + "gas": 275813, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5247, + "op": "PUSH2", + "gas": 275811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5250, + "op": "DUP2", + "gas": 275808, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5251, + "op": "PUSH2", + "gas": 275805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5254, + "op": "JUMP", + "gas": 275802, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5219, + "op": "JUMPDEST", + "gas": 275794, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5220, + "op": "PUSH2", + "gas": 275793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5223, + "op": "DUP2", + "gas": 275790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5224, + "op": "PUSH2", + "gas": 275787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5227, + "op": "JUMP", + "gas": 275784, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 275776, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 275775, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 275773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 275770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 275767, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 275765, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 275762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 275759, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 275757, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5228, + "op": "JUMPDEST", + "gas": 275749, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5229, + "op": "DUP2", + "gas": 275748, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5230, + "op": "EQ", + "gas": 275745, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5231, + "op": "PUSH2", + "gas": 275742, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5234, + "op": "JUMPI", + "gas": 275739, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5238, + "op": "JUMPDEST", + "gas": 275729, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5239, + "op": "POP", + "gas": 275728, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5240, + "op": "JUMP", + "gas": 275726, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5255, + "op": "JUMPDEST", + "gas": 275718, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5256, + "op": "SWAP3", + "gas": 275717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5257, + "op": "SWAP2", + "gas": 275714, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5258, + "op": "POP", + "gas": 275711, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5259, + "op": "POP", + "gas": 275709, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5260, + "op": "JUMP", + "gas": 275707, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5295, + "op": "JUMPDEST", + "gas": 275699, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5296, + "op": "SWAP2", + "gas": 275698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5297, + "op": "POP", + "gas": 275695, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5298, + "op": "POP", + "gas": 275693, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5299, + "op": "SWAP3", + "gas": 275691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5300, + "op": "SWAP2", + "gas": 275688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5301, + "op": "POP", + "gas": 275685, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5302, + "op": "POP", + "gas": 275683, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5303, + "op": "JUMP", + "gas": 275681, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 277, + "op": "JUMPDEST", + "gas": 275673, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 278, + "op": "PUSH2", + "gas": 275672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 281, + "op": "JUMP", + "gas": 275669, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1120, + "op": "JUMPDEST", + "gas": 275661, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1121, + "op": "PUSH0", + "gas": 275660, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1122, + "op": "DUP1", + "gas": 275658, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1123, + "op": "PUSH2", + "gas": 275655, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1126, + "op": "DUP4", + "gas": 275652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1127, + "op": "PUSH2", + "gas": 275649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1130, + "op": "JUMP", + "gas": 275646, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4053, + "op": "JUMPDEST", + "gas": 275638, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4054, + "op": "PUSH1", + "gas": 275637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4056, + "op": "PUSH0", + "gas": 275634, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4057, + "op": "DUP3", + "gas": 275632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4058, + "op": "SUB", + "gas": 275629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4059, + "op": "PUSH2", + "gas": 275626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4062, + "op": "JUMPI", + "gas": 275623, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4123, + "op": "JUMPDEST", + "gas": 275613, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4124, + "op": "PUSH0", + "gas": 275612, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4125, + "op": "DUP3", + "gas": 275610, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4126, + "op": "SWAP1", + "gas": 275607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4127, + "op": "POP", + "gas": 275604, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4128, + "op": "PUSH0", + "gas": 275602, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4129, + "op": "JUMPDEST", + "gas": 275600, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4130, + "op": "PUSH0", + "gas": 275599, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4131, + "op": "DUP3", + "gas": 275597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4132, + "op": "EQ", + "gas": 275594, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4133, + "op": "PUSH2", + "gas": 275591, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4136, + "op": "JUMPI", + "gas": 275588, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4137, + "op": "DUP1", + "gas": 275578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4138, + "op": "DUP1", + "gas": 275575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4139, + "op": "PUSH2", + "gas": 275572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4142, + "op": "SWAP1", + "gas": 275569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4143, + "op": "PUSH2", + "gas": 275566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4146, + "op": "JUMP", + "gas": 275563, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7477, + "op": "JUMPDEST", + "gas": 275555, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7478, + "op": "PUSH0", + "gas": 275554, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7479, + "op": "PUSH2", + "gas": 275552, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7482, + "op": "DUP3", + "gas": 275549, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7483, + "op": "PUSH2", + "gas": 275546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7486, + "op": "JUMP", + "gas": 275543, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 275535, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 275534, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 275532, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 275529, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 275526, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 275524, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 275521, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 275518, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 275516, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7487, + "op": "JUMPDEST", + "gas": 275508, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7488, + "op": "SWAP2", + "gas": 275507, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7489, + "op": "POP", + "gas": 275504, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7490, + "op": "PUSH32", + "gas": 275502, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7523, + "op": "DUP3", + "gas": 275499, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7524, + "op": "SUB", + "gas": 275496, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7525, + "op": "PUSH2", + "gas": 275493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7528, + "op": "JUMPI", + "gas": 275490, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7537, + "op": "JUMPDEST", + "gas": 275480, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7538, + "op": "PUSH1", + "gas": 275479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7540, + "op": "DUP3", + "gas": 275476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7541, + "op": "ADD", + "gas": 275473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7542, + "op": "SWAP1", + "gas": 275470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7543, + "op": "POP", + "gas": 275467, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7544, + "op": "SWAP2", + "gas": 275465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7545, + "op": "SWAP1", + "gas": 275462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7546, + "op": "POP", + "gas": 275459, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7547, + "op": "JUMP", + "gas": 275457, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4147, + "op": "JUMPDEST", + "gas": 275449, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4148, + "op": "SWAP2", + "gas": 275448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4149, + "op": "POP", + "gas": 275445, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4150, + "op": "POP", + "gas": 275443, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4151, + "op": "PUSH1", + "gas": 275441, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4153, + "op": "DUP3", + "gas": 275438, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4154, + "op": "PUSH2", + "gas": 275435, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4157, + "op": "SWAP2", + "gas": 275432, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4158, + "op": "SWAP1", + "gas": 275429, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4159, + "op": "PUSH2", + "gas": 275426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4162, + "op": "JUMP", + "gas": 275423, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7548, + "op": "JUMPDEST", + "gas": 275415, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7549, + "op": "PUSH0", + "gas": 275414, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7550, + "op": "PUSH2", + "gas": 275412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7553, + "op": "DUP3", + "gas": 275409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7554, + "op": "PUSH2", + "gas": 275406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7557, + "op": "JUMP", + "gas": 275403, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 275395, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 275394, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 275392, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 275389, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 275386, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 275384, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 275381, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 275378, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 275376, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7558, + "op": "JUMPDEST", + "gas": 275368, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7559, + "op": "SWAP2", + "gas": 275367, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7560, + "op": "POP", + "gas": 275364, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7561, + "op": "PUSH2", + "gas": 275362, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7564, + "op": "DUP4", + "gas": 275359, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH2", + "gas": 275356, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "JUMP", + "gas": 275353, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 275345, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 275344, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 275342, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 275339, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 275336, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 275334, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 275331, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 275328, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 275326, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7569, + "op": "JUMPDEST", + "gas": 275318, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7570, + "op": "SWAP3", + "gas": 275317, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7571, + "op": "POP", + "gas": 275314, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7572, + "op": "DUP3", + "gas": 275312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "PUSH2", + "gas": 275309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7576, + "op": "JUMPI", + "gas": 275306, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 275296, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "DUP3", + "gas": 275295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "DUP3", + "gas": 275292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7588, + "op": "DIV", + "gas": 275289, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7589, + "op": "SWAP1", + "gas": 275284, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7590, + "op": "POP", + "gas": 275281, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7591, + "op": "SWAP3", + "gas": 275279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "SWAP2", + "gas": 275276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7593, + "op": "POP", + "gas": 275273, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7594, + "op": "POP", + "gas": 275271, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 275269, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4163, + "op": "JUMPDEST", + "gas": 275261, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4164, + "op": "SWAP2", + "gas": 275260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4165, + "op": "POP", + "gas": 275257, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4166, + "op": "PUSH2", + "gas": 275255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4169, + "op": "JUMP", + "gas": 275252, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4129, + "op": "JUMPDEST", + "gas": 275244, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4130, + "op": "PUSH0", + "gas": 275243, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4131, + "op": "DUP3", + "gas": 275241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4132, + "op": "EQ", + "gas": 275238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4133, + "op": "PUSH2", + "gas": 275235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4136, + "op": "JUMPI", + "gas": 275232, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4170, + "op": "JUMPDEST", + "gas": 275222, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4171, + "op": "PUSH0", + "gas": 275221, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4172, + "op": "DUP2", + "gas": 275219, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4173, + "op": "PUSH8", + "gas": 275216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4182, + "op": "DUP2", + "gas": 275213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4183, + "op": "GT", + "gas": 275210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4184, + "op": "ISZERO", + "gas": 275207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4185, + "op": "PUSH2", + "gas": 275204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4188, + "op": "JUMPI", + "gas": 275201, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4197, + "op": "JUMPDEST", + "gas": 275191, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4198, + "op": "PUSH1", + "gas": 275190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4200, + "op": "MLOAD", + "gas": 275187, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4201, + "op": "SWAP1", + "gas": 275184, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4202, + "op": "DUP1", + "gas": 275181, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4203, + "op": "DUP3", + "gas": 275178, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4204, + "op": "MSTORE", + "gas": 275175, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4205, + "op": "DUP1", + "gas": 275166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4206, + "op": "PUSH1", + "gas": 275163, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4208, + "op": "ADD", + "gas": 275160, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4209, + "op": "PUSH1", + "gas": 275157, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4211, + "op": "NOT", + "gas": 275154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4212, + "op": "AND", + "gas": 275151, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4213, + "op": "PUSH1", + "gas": 275148, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4215, + "op": "ADD", + "gas": 275145, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4216, + "op": "DUP3", + "gas": 275142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4217, + "op": "ADD", + "gas": 275139, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4218, + "op": "PUSH1", + "gas": 275136, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4220, + "op": "MSTORE", + "gas": 275133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4221, + "op": "DUP1", + "gas": 275130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4222, + "op": "ISZERO", + "gas": 275127, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4223, + "op": "PUSH2", + "gas": 275124, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4226, + "op": "JUMPI", + "gas": 275121, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4227, + "op": "DUP2", + "gas": 275111, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4228, + "op": "PUSH1", + "gas": 275108, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4230, + "op": "ADD", + "gas": 275105, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4231, + "op": "PUSH1", + "gas": 275102, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4233, + "op": "DUP3", + "gas": 275099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4234, + "op": "MUL", + "gas": 275096, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 4235, + "op": "DUP1", + "gas": 275091, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4236, + "op": "CALLDATASIZE", + "gas": 275088, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4237, + "op": "DUP4", + "gas": 275086, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4238, + "op": "CALLDATACOPY", + "gas": 275083, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 4239, + "op": "DUP1", + "gas": 275074, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4240, + "op": "DUP3", + "gas": 275071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4241, + "op": "ADD", + "gas": 275068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4242, + "op": "SWAP2", + "gas": 275065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4243, + "op": "POP", + "gas": 275062, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4244, + "op": "POP", + "gas": 275060, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4245, + "op": "SWAP1", + "gas": 275058, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4246, + "op": "POP", + "gas": 275055, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4247, + "op": "JUMPDEST", + "gas": 275053, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4248, + "op": "POP", + "gas": 275052, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4249, + "op": "SWAP1", + "gas": 275050, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4250, + "op": "POP", + "gas": 275047, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4251, + "op": "JUMPDEST", + "gas": 275045, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4252, + "op": "PUSH0", + "gas": 275044, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4253, + "op": "DUP6", + "gas": 275042, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4254, + "op": "EQ", + "gas": 275039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4255, + "op": "PUSH2", + "gas": 275036, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4258, + "op": "JUMPI", + "gas": 275033, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4259, + "op": "PUSH1", + "gas": 275023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4261, + "op": "DUP3", + "gas": 275020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4262, + "op": "PUSH2", + "gas": 275017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4265, + "op": "SWAP2", + "gas": 275014, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4266, + "op": "SWAP1", + "gas": 275011, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4267, + "op": "PUSH2", + "gas": 275008, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4270, + "op": "JUMP", + "gas": 275005, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7288, + "op": "JUMPDEST", + "gas": 274997, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7289, + "op": "PUSH0", + "gas": 274996, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7290, + "op": "PUSH2", + "gas": 274994, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7293, + "op": "DUP3", + "gas": 274991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7294, + "op": "PUSH2", + "gas": 274988, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7297, + "op": "JUMP", + "gas": 274985, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274977, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274976, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274974, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274971, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274968, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274966, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274963, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274960, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274958, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7298, + "op": "JUMPDEST", + "gas": 274950, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7299, + "op": "SWAP2", + "gas": 274949, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7300, + "op": "POP", + "gas": 274946, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7301, + "op": "PUSH2", + "gas": 274944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7304, + "op": "DUP4", + "gas": 274941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7305, + "op": "PUSH2", + "gas": 274938, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7308, + "op": "JUMP", + "gas": 274935, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274927, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274926, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274924, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274918, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274916, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274913, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274910, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274908, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7309, + "op": "JUMPDEST", + "gas": 274900, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7310, + "op": "SWAP3", + "gas": 274899, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7311, + "op": "POP", + "gas": 274896, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7312, + "op": "DUP3", + "gas": 274894, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7313, + "op": "DUP3", + "gas": 274891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7314, + "op": "SUB", + "gas": 274888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7315, + "op": "SWAP1", + "gas": 274885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7316, + "op": "POP", + "gas": 274882, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7317, + "op": "DUP2", + "gas": 274880, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7318, + "op": "DUP2", + "gas": 274877, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7319, + "op": "GT", + "gas": 274874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7320, + "op": "ISZERO", + "gas": 274871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7321, + "op": "PUSH2", + "gas": 274868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7324, + "op": "JUMPI", + "gas": 274865, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7333, + "op": "JUMPDEST", + "gas": 274855, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7334, + "op": "SWAP3", + "gas": 274854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7335, + "op": "SWAP2", + "gas": 274851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7336, + "op": "POP", + "gas": 274848, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7337, + "op": "POP", + "gas": 274846, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7338, + "op": "JUMP", + "gas": 274844, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4271, + "op": "JUMPDEST", + "gas": 274836, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4272, + "op": "SWAP2", + "gas": 274835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4273, + "op": "POP", + "gas": 274832, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4274, + "op": "PUSH1", + "gas": 274830, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4276, + "op": "DUP6", + "gas": 274827, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4277, + "op": "PUSH2", + "gas": 274824, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4280, + "op": "SWAP2", + "gas": 274821, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4281, + "op": "SWAP1", + "gas": 274818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4282, + "op": "PUSH2", + "gas": 274815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4285, + "op": "JUMP", + "gas": 274812, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7429, + "op": "JUMPDEST", + "gas": 274804, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7430, + "op": "PUSH0", + "gas": 274803, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7431, + "op": "PUSH2", + "gas": 274801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7434, + "op": "DUP3", + "gas": 274798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7435, + "op": "PUSH2", + "gas": 274795, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7438, + "op": "JUMP", + "gas": 274792, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274784, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274783, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274778, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274775, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274767, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274765, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7439, + "op": "JUMPDEST", + "gas": 274757, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7440, + "op": "SWAP2", + "gas": 274756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7441, + "op": "POP", + "gas": 274753, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7442, + "op": "PUSH2", + "gas": 274751, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7445, + "op": "DUP4", + "gas": 274748, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7446, + "op": "PUSH2", + "gas": 274745, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7449, + "op": "JUMP", + "gas": 274742, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274734, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274733, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274728, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274725, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274717, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274715, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7450, + "op": "JUMPDEST", + "gas": 274707, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7451, + "op": "SWAP3", + "gas": 274706, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7452, + "op": "POP", + "gas": 274703, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7453, + "op": "DUP3", + "gas": 274701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7454, + "op": "PUSH2", + "gas": 274698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7457, + "op": "JUMPI", + "gas": 274695, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7466, + "op": "JUMPDEST", + "gas": 274685, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7467, + "op": "DUP3", + "gas": 274684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7468, + "op": "DUP3", + "gas": 274681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7469, + "op": "MOD", + "gas": 274678, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7470, + "op": "SWAP1", + "gas": 274673, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7471, + "op": "POP", + "gas": 274670, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7472, + "op": "SWAP3", + "gas": 274668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7473, + "op": "SWAP2", + "gas": 274665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7474, + "op": "POP", + "gas": 274662, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7475, + "op": "POP", + "gas": 274660, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7476, + "op": "JUMP", + "gas": 274658, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4286, + "op": "JUMPDEST", + "gas": 274650, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4287, + "op": "PUSH1", + "gas": 274649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4289, + "op": "PUSH2", + "gas": 274646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4292, + "op": "SWAP2", + "gas": 274643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4293, + "op": "SWAP1", + "gas": 274640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4294, + "op": "PUSH2", + "gas": 274637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4297, + "op": "JUMP", + "gas": 274634, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7237, + "op": "JUMPDEST", + "gas": 274626, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7238, + "op": "PUSH0", + "gas": 274625, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7239, + "op": "PUSH2", + "gas": 274623, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7242, + "op": "DUP3", + "gas": 274620, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7243, + "op": "PUSH2", + "gas": 274617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7246, + "op": "JUMP", + "gas": 274614, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274606, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274605, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274603, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274600, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274597, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274595, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274589, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274587, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7247, + "op": "JUMPDEST", + "gas": 274579, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7248, + "op": "SWAP2", + "gas": 274578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7249, + "op": "POP", + "gas": 274575, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7250, + "op": "PUSH2", + "gas": 274573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7253, + "op": "DUP4", + "gas": 274570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7254, + "op": "PUSH2", + "gas": 274567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7257, + "op": "JUMP", + "gas": 274564, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274556, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274555, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274553, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274550, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274547, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274539, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274537, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7258, + "op": "JUMPDEST", + "gas": 274529, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7259, + "op": "SWAP3", + "gas": 274528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7260, + "op": "POP", + "gas": 274525, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7261, + "op": "DUP3", + "gas": 274523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7262, + "op": "DUP3", + "gas": 274520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7263, + "op": "ADD", + "gas": 274517, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7264, + "op": "SWAP1", + "gas": 274514, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7265, + "op": "POP", + "gas": 274511, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7266, + "op": "DUP1", + "gas": 274509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7267, + "op": "DUP3", + "gas": 274506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7268, + "op": "GT", + "gas": 274503, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7269, + "op": "ISZERO", + "gas": 274500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7270, + "op": "PUSH2", + "gas": 274497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7273, + "op": "JUMPI", + "gas": 274494, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7282, + "op": "JUMPDEST", + "gas": 274484, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7283, + "op": "SWAP3", + "gas": 274483, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7284, + "op": "SWAP2", + "gas": 274480, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7285, + "op": "POP", + "gas": 274477, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7286, + "op": "POP", + "gas": 274475, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7287, + "op": "JUMP", + "gas": 274473, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4298, + "op": "JUMPDEST", + "gas": 274465, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4299, + "op": "PUSH1", + "gas": 274464, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4301, + "op": "SHL", + "gas": 274461, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4302, + "op": "DUP2", + "gas": 274458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4303, + "op": "DUP4", + "gas": 274455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4304, + "op": "DUP2", + "gas": 274452, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4305, + "op": "MLOAD", + "gas": 274449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4306, + "op": "DUP2", + "gas": 274446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4307, + "op": "LT", + "gas": 274443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4308, + "op": "PUSH2", + "gas": 274440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4311, + "op": "JUMPI", + "gas": 274437, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4320, + "op": "JUMPDEST", + "gas": 274427, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4321, + "op": "PUSH1", + "gas": 274426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4323, + "op": "ADD", + "gas": 274423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4324, + "op": "ADD", + "gas": 274420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4325, + "op": "SWAP1", + "gas": 274417, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4326, + "op": "PUSH31", + "gas": 274414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4358, + "op": "NOT", + "gas": 274411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4359, + "op": "AND", + "gas": 274408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4360, + "op": "SWAP1", + "gas": 274405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4361, + "op": "DUP2", + "gas": 274402, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4362, + "op": "PUSH0", + "gas": 274399, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4363, + "op": "BYTE", + "gas": 274397, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4364, + "op": "SWAP1", + "gas": 274394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4365, + "op": "MSTORE8", + "gas": 274391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4366, + "op": "POP", + "gas": 274388, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4367, + "op": "PUSH1", + "gas": 274386, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4369, + "op": "DUP6", + "gas": 274383, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4370, + "op": "PUSH2", + "gas": 274380, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4373, + "op": "SWAP2", + "gas": 274377, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4374, + "op": "SWAP1", + "gas": 274374, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4375, + "op": "PUSH2", + "gas": 274371, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4378, + "op": "JUMP", + "gas": 274368, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7548, + "op": "JUMPDEST", + "gas": 274360, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7549, + "op": "PUSH0", + "gas": 274359, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7550, + "op": "PUSH2", + "gas": 274357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7553, + "op": "DUP3", + "gas": 274354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7554, + "op": "PUSH2", + "gas": 274351, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7557, + "op": "JUMP", + "gas": 274348, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274340, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274339, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274337, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274334, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274331, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274323, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274321, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7558, + "op": "JUMPDEST", + "gas": 274313, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7559, + "op": "SWAP2", + "gas": 274312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7560, + "op": "POP", + "gas": 274309, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7561, + "op": "PUSH2", + "gas": 274307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7564, + "op": "DUP4", + "gas": 274304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7565, + "op": "PUSH2", + "gas": 274301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7568, + "op": "JUMP", + "gas": 274298, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 274290, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 274289, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 274287, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 274284, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 274281, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 274279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 274276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 274273, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 274271, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 7569, + "op": "JUMPDEST", + "gas": 274263, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7570, + "op": "SWAP3", + "gas": 274262, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7571, + "op": "POP", + "gas": 274259, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7572, + "op": "DUP3", + "gas": 274257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7573, + "op": "PUSH2", + "gas": 274254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7576, + "op": "JUMPI", + "gas": 274251, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 7585, + "op": "JUMPDEST", + "gas": 274241, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 7586, + "op": "DUP3", + "gas": 274240, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7587, + "op": "DUP3", + "gas": 274237, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7588, + "op": "DIV", + "gas": 274234, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 7589, + "op": "SWAP1", + "gas": 274229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7590, + "op": "POP", + "gas": 274226, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7591, + "op": "SWAP3", + "gas": 274224, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7592, + "op": "SWAP2", + "gas": 274221, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 7593, + "op": "POP", + "gas": 274218, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7594, + "op": "POP", + "gas": 274216, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 7595, + "op": "JUMP", + "gas": 274214, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4379, + "op": "JUMPDEST", + "gas": 274206, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4380, + "op": "SWAP5", + "gas": 274205, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4381, + "op": "POP", + "gas": 274202, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4382, + "op": "PUSH2", + "gas": 274200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4385, + "op": "JUMP", + "gas": 274197, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4251, + "op": "JUMPDEST", + "gas": 274189, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4252, + "op": "PUSH0", + "gas": 274188, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4253, + "op": "DUP6", + "gas": 274186, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4254, + "op": "EQ", + "gas": 274183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4255, + "op": "PUSH2", + "gas": 274180, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4258, + "op": "JUMPI", + "gas": 274177, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 4386, + "op": "JUMPDEST", + "gas": 274167, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4387, + "op": "DUP1", + "gas": 274166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4388, + "op": "SWAP4", + "gas": 274163, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4389, + "op": "POP", + "gas": 274160, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4390, + "op": "POP", + "gas": 274158, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4391, + "op": "POP", + "gas": 274156, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4392, + "op": "POP", + "gas": 274154, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4393, + "op": "JUMPDEST", + "gas": 274152, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4394, + "op": "SWAP2", + "gas": 274151, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4395, + "op": "SWAP1", + "gas": 274148, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4396, + "op": "POP", + "gas": 274145, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4397, + "op": "JUMP", + "gas": 274143, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1131, + "op": "JUMPDEST", + "gas": 274135, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1132, + "op": "PUSH1", + "gas": 274134, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1134, + "op": "MLOAD", + "gas": 274131, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1135, + "op": "PUSH1", + "gas": 274128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1137, + "op": "ADD", + "gas": 274125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1138, + "op": "PUSH2", + "gas": 274122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1141, + "op": "SWAP2", + "gas": 274119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1142, + "op": "SWAP1", + "gas": 274116, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1143, + "op": "PUSH2", + "gas": 274113, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1146, + "op": "JUMP", + "gas": 274110, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6616, + "op": "JUMPDEST", + "gas": 274102, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6617, + "op": "PUSH0", + "gas": 274101, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6618, + "op": "PUSH2", + "gas": 274099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6621, + "op": "DUP3", + "gas": 274096, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6622, + "op": "PUSH2", + "gas": 274093, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6625, + "op": "JUMP", + "gas": 274090, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6582, + "op": "JUMPDEST", + "gas": 274082, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6583, + "op": "PUSH0", + "gas": 274081, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6584, + "op": "PUSH2", + "gas": 274079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6587, + "op": "PUSH1", + "gas": 274076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6589, + "op": "DUP4", + "gas": 274073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6590, + "op": "PUSH2", + "gas": 274070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6593, + "op": "JUMP", + "gas": 274067, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5384, + "op": "JUMPDEST", + "gas": 274059, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5385, + "op": "PUSH0", + "gas": 274058, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5386, + "op": "DUP2", + "gas": 274056, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5387, + "op": "SWAP1", + "gas": 274053, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5388, + "op": "POP", + "gas": 274050, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5389, + "op": "SWAP3", + "gas": 274048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5390, + "op": "SWAP2", + "gas": 274045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5391, + "op": "POP", + "gas": 274042, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5392, + "op": "POP", + "gas": 274040, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5393, + "op": "JUMP", + "gas": 274038, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6594, + "op": "JUMPDEST", + "gas": 274030, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6595, + "op": "SWAP2", + "gas": 274029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6596, + "op": "POP", + "gas": 274026, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6597, + "op": "PUSH2", + "gas": 274024, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6600, + "op": "DUP3", + "gas": 274021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6601, + "op": "PUSH2", + "gas": 274018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6604, + "op": "JUMP", + "gas": 274015, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6542, + "op": "JUMPDEST", + "gas": 274007, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6543, + "op": "PUSH32", + "gas": 274006, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6576, + "op": "PUSH0", + "gas": 274003, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6577, + "op": "DUP3", + "gas": 274001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6578, + "op": "ADD", + "gas": 273998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6579, + "op": "MSTORE", + "gas": 273995, + "gasCost": 9, + "depth": 1 + }, + { + "pc": 6580, + "op": "POP", + "gas": 273986, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6581, + "op": "JUMP", + "gas": 273984, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6605, + "op": "JUMPDEST", + "gas": 273976, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6606, + "op": "PUSH1", + "gas": 273975, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6608, + "op": "DUP3", + "gas": 273972, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6609, + "op": "ADD", + "gas": 273969, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6610, + "op": "SWAP1", + "gas": 273966, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6611, + "op": "POP", + "gas": 273963, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6612, + "op": "SWAP2", + "gas": 273961, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6613, + "op": "SWAP1", + "gas": 273958, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6614, + "op": "POP", + "gas": 273955, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6615, + "op": "JUMP", + "gas": 273953, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6626, + "op": "JUMPDEST", + "gas": 273945, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6627, + "op": "SWAP2", + "gas": 273944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6628, + "op": "POP", + "gas": 273941, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6629, + "op": "PUSH2", + "gas": 273939, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6632, + "op": "DUP3", + "gas": 273936, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6633, + "op": "DUP5", + "gas": 273933, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6634, + "op": "PUSH2", + "gas": 273930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6637, + "op": "JUMP", + "gas": 273927, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5478, + "op": "JUMPDEST", + "gas": 273919, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5479, + "op": "PUSH0", + "gas": 273918, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5480, + "op": "PUSH2", + "gas": 273916, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5483, + "op": "DUP3", + "gas": 273913, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5484, + "op": "PUSH2", + "gas": 273910, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5487, + "op": "JUMP", + "gas": 273907, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5468, + "op": "JUMPDEST", + "gas": 273899, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5469, + "op": "PUSH0", + "gas": 273898, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5470, + "op": "DUP2", + "gas": 273896, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5471, + "op": "MLOAD", + "gas": 273893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5472, + "op": "SWAP1", + "gas": 273890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5473, + "op": "POP", + "gas": 273887, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5474, + "op": "SWAP2", + "gas": 273885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5475, + "op": "SWAP1", + "gas": 273882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5476, + "op": "POP", + "gas": 273879, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5477, + "op": "JUMP", + "gas": 273877, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5488, + "op": "JUMPDEST", + "gas": 273869, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5489, + "op": "PUSH2", + "gas": 273868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5492, + "op": "DUP2", + "gas": 273865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5493, + "op": "DUP6", + "gas": 273862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5494, + "op": "PUSH2", + "gas": 273859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5497, + "op": "JUMP", + "gas": 273856, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5384, + "op": "JUMPDEST", + "gas": 273848, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5385, + "op": "PUSH0", + "gas": 273847, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5386, + "op": "DUP2", + "gas": 273845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5387, + "op": "SWAP1", + "gas": 273842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5388, + "op": "POP", + "gas": 273839, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5389, + "op": "SWAP3", + "gas": 273837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5390, + "op": "SWAP2", + "gas": 273834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5391, + "op": "POP", + "gas": 273831, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5392, + "op": "POP", + "gas": 273829, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5393, + "op": "JUMP", + "gas": 273827, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5498, + "op": "JUMPDEST", + "gas": 273819, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP4", + "gas": 273818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 273815, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "PUSH2", + "gas": 273813, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5504, + "op": "DUP2", + "gas": 273810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5505, + "op": "DUP6", + "gas": 273807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH1", + "gas": 273804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5508, + "op": "DUP7", + "gas": 273801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5509, + "op": "ADD", + "gas": 273798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "PUSH2", + "gas": 273795, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5513, + "op": "JUMP", + "gas": 273792, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5108, + "op": "JUMPDEST", + "gas": 273784, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5109, + "op": "DUP3", + "gas": 273783, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5110, + "op": "DUP2", + "gas": 273780, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP4", + "gas": 273777, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "opcode 0x5e not defined", + "gas": 273774, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5113, + "op": "PUSH0", + "gas": 273768, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5114, + "op": "DUP4", + "gas": 273766, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5115, + "op": "DUP4", + "gas": 273763, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "ADD", + "gas": 273760, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "MSTORE", + "gas": 273757, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5118, + "op": "POP", + "gas": 273751, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5119, + "op": "POP", + "gas": 273749, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5120, + "op": "POP", + "gas": 273747, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "JUMP", + "gas": 273745, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMPDEST", + "gas": 273737, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5515, + "op": "DUP1", + "gas": 273736, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5516, + "op": "DUP5", + "gas": 273733, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5517, + "op": "ADD", + "gas": 273730, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5518, + "op": "SWAP2", + "gas": 273727, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "POP", + "gas": 273724, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5520, + "op": "POP", + "gas": 273722, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5521, + "op": "SWAP3", + "gas": 273720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5522, + "op": "SWAP2", + "gas": 273717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5523, + "op": "POP", + "gas": 273714, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5524, + "op": "POP", + "gas": 273712, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMP", + "gas": 273710, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6638, + "op": "JUMPDEST", + "gas": 273702, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6639, + "op": "SWAP2", + "gas": 273701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6640, + "op": "POP", + "gas": 273698, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6641, + "op": "DUP2", + "gas": 273696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6642, + "op": "SWAP1", + "gas": 273693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6643, + "op": "POP", + "gas": 273690, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6644, + "op": "SWAP3", + "gas": 273688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6645, + "op": "SWAP2", + "gas": 273685, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6646, + "op": "POP", + "gas": 273682, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6647, + "op": "POP", + "gas": 273680, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6648, + "op": "JUMP", + "gas": 273678, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1147, + "op": "JUMPDEST", + "gas": 273670, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1148, + "op": "PUSH1", + "gas": 273669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1150, + "op": "MLOAD", + "gas": 273666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1151, + "op": "PUSH1", + "gas": 273663, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1153, + "op": "DUP2", + "gas": 273660, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1154, + "op": "DUP4", + "gas": 273657, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1155, + "op": "SUB", + "gas": 273654, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1156, + "op": "SUB", + "gas": 273651, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1157, + "op": "DUP2", + "gas": 273648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1158, + "op": "MSTORE", + "gas": 273645, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1159, + "op": "SWAP1", + "gas": 273642, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1160, + "op": "PUSH1", + "gas": 273639, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1162, + "op": "MSTORE", + "gas": 273636, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1163, + "op": "SWAP1", + "gas": 273633, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1164, + "op": "POP", + "gas": 273630, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1165, + "op": "PUSH0", + "gas": 273628, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1166, + "op": "PUSH1", + "gas": 273626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1168, + "op": "DUP5", + "gas": 273623, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1169, + "op": "PUSH2", + "gas": 273620, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1172, + "op": "SWAP2", + "gas": 273617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1173, + "op": "SWAP1", + "gas": 273614, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1174, + "op": "PUSH2", + "gas": 273611, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1177, + "op": "JUMP", + "gas": 273608, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6694, + "op": "JUMPDEST", + "gas": 273600, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6695, + "op": "PUSH0", + "gas": 273599, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6696, + "op": "PUSH2", + "gas": 273597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6699, + "op": "DUP3", + "gas": 273594, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6700, + "op": "PUSH2", + "gas": 273591, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6703, + "op": "JUMP", + "gas": 273588, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 273580, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 273579, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 273577, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 273574, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 273571, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 273569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 273566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 273563, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 273561, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6704, + "op": "JUMPDEST", + "gas": 273553, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6705, + "op": "SWAP2", + "gas": 273552, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6706, + "op": "POP", + "gas": 273549, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6707, + "op": "PUSH2", + "gas": 273547, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6710, + "op": "DUP4", + "gas": 273544, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6711, + "op": "PUSH2", + "gas": 273541, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6714, + "op": "JUMP", + "gas": 273538, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 273530, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 273529, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 273527, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 273524, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 273521, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 273519, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 273516, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 273513, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 273511, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6715, + "op": "JUMPDEST", + "gas": 273503, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6716, + "op": "SWAP3", + "gas": 273502, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6717, + "op": "POP", + "gas": 273499, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6718, + "op": "DUP3", + "gas": 273497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6719, + "op": "DUP3", + "gas": 273494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6720, + "op": "MUL", + "gas": 273491, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6721, + "op": "PUSH2", + "gas": 273486, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6724, + "op": "DUP2", + "gas": 273483, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6725, + "op": "PUSH2", + "gas": 273480, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6728, + "op": "JUMP", + "gas": 273477, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 273469, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 273468, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 273466, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 273463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 273460, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 273458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 273455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 273452, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 273450, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6729, + "op": "JUMPDEST", + "gas": 273442, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6730, + "op": "SWAP2", + "gas": 273441, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6731, + "op": "POP", + "gas": 273438, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6732, + "op": "DUP3", + "gas": 273436, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6733, + "op": "DUP3", + "gas": 273433, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6734, + "op": "DIV", + "gas": 273430, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6735, + "op": "DUP5", + "gas": 273425, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6736, + "op": "EQ", + "gas": 273422, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6737, + "op": "DUP4", + "gas": 273419, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6738, + "op": "ISZERO", + "gas": 273416, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6739, + "op": "OR", + "gas": 273413, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6740, + "op": "PUSH2", + "gas": 273410, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6743, + "op": "JUMPI", + "gas": 273407, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6752, + "op": "JUMPDEST", + "gas": 273397, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6753, + "op": "POP", + "gas": 273396, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6754, + "op": "SWAP3", + "gas": 273394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6755, + "op": "SWAP2", + "gas": 273391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6756, + "op": "POP", + "gas": 273388, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6757, + "op": "POP", + "gas": 273386, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6758, + "op": "JUMP", + "gas": 273384, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1178, + "op": "JUMPDEST", + "gas": 273376, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1179, + "op": "PUSH8", + "gas": 273375, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1188, + "op": "DUP2", + "gas": 273372, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1189, + "op": "GT", + "gas": 273369, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1190, + "op": "ISZERO", + "gas": 273366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1191, + "op": "PUSH2", + "gas": 273363, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1194, + "op": "JUMPI", + "gas": 273360, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1203, + "op": "JUMPDEST", + "gas": 273350, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1204, + "op": "PUSH1", + "gas": 273349, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1206, + "op": "MLOAD", + "gas": 273346, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1207, + "op": "SWAP1", + "gas": 273343, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1208, + "op": "DUP1", + "gas": 273340, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1209, + "op": "DUP3", + "gas": 273337, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1210, + "op": "MSTORE", + "gas": 273334, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1211, + "op": "DUP1", + "gas": 273331, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1212, + "op": "PUSH1", + "gas": 273328, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1214, + "op": "ADD", + "gas": 273325, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1215, + "op": "PUSH1", + "gas": 273322, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1217, + "op": "NOT", + "gas": 273319, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1218, + "op": "AND", + "gas": 273316, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1219, + "op": "PUSH1", + "gas": 273313, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1221, + "op": "ADD", + "gas": 273310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1222, + "op": "DUP3", + "gas": 273307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1223, + "op": "ADD", + "gas": 273304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1224, + "op": "PUSH1", + "gas": 273301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1226, + "op": "MSTORE", + "gas": 273298, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1227, + "op": "DUP1", + "gas": 273295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1228, + "op": "ISZERO", + "gas": 273292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1229, + "op": "PUSH2", + "gas": 273289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1232, + "op": "JUMPI", + "gas": 273286, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1233, + "op": "DUP2", + "gas": 273276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1234, + "op": "PUSH1", + "gas": 273273, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1236, + "op": "ADD", + "gas": 273270, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1237, + "op": "PUSH1", + "gas": 273267, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1239, + "op": "DUP3", + "gas": 273264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1240, + "op": "MUL", + "gas": 273261, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1241, + "op": "DUP1", + "gas": 273256, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1242, + "op": "CALLDATASIZE", + "gas": 273253, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1243, + "op": "DUP4", + "gas": 273251, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1244, + "op": "CALLDATACOPY", + "gas": 273248, + "gasCost": 185, + "depth": 1 + }, + { + "pc": 1245, + "op": "DUP1", + "gas": 273063, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1246, + "op": "DUP3", + "gas": 273060, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1247, + "op": "ADD", + "gas": 273057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1248, + "op": "SWAP2", + "gas": 273054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1249, + "op": "POP", + "gas": 273051, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1250, + "op": "POP", + "gas": 273049, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1251, + "op": "SWAP1", + "gas": 273047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1252, + "op": "POP", + "gas": 273044, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1253, + "op": "JUMPDEST", + "gas": 273042, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1254, + "op": "POP", + "gas": 273041, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1255, + "op": "SWAP1", + "gas": 273039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1256, + "op": "POP", + "gas": 273036, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1257, + "op": "PUSH0", + "gas": 273034, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1258, + "op": "PUSH1", + "gas": 273032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1260, + "op": "MLOAD", + "gas": 273029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1261, + "op": "DUP1", + "gas": 273026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1262, + "op": "PUSH1", + "gas": 273023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1264, + "op": "ADD", + "gas": 273020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1265, + "op": "PUSH1", + "gas": 273017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1267, + "op": "MSTORE", + "gas": 273014, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1268, + "op": "DUP1", + "gas": 273011, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1269, + "op": "PUSH1", + "gas": 273008, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1271, + "op": "DUP2", + "gas": 273005, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1272, + "op": "MSTORE", + "gas": 273002, + "gasCost": 7, + "depth": 1 + }, + { + "pc": 1273, + "op": "PUSH1", + "gas": 272995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1275, + "op": "ADD", + "gas": 272992, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1276, + "op": "PUSH1", + "gas": 272989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1278, + "op": "DUP2", + "gas": 272986, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1279, + "op": "MSTORE", + "gas": 272983, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 1280, + "op": "POP", + "gas": 272977, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1281, + "op": "SWAP1", + "gas": 272975, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1282, + "op": "POP", + "gas": 272972, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1283, + "op": "PUSH0", + "gas": 272970, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1284, + "op": "PUSH1", + "gas": 272968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1286, + "op": "MLOAD", + "gas": 272965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1287, + "op": "DUP1", + "gas": 272962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1288, + "op": "PUSH1", + "gas": 272959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1290, + "op": "ADD", + "gas": 272956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1291, + "op": "PUSH1", + "gas": 272953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1293, + "op": "MSTORE", + "gas": 272950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1294, + "op": "DUP1", + "gas": 272947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1295, + "op": "PUSH32", + "gas": 272944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1328, + "op": "DUP2", + "gas": 272941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1329, + "op": "MSTORE", + "gas": 272938, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 1330, + "op": "PUSH1", + "gas": 272932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1332, + "op": "ADD", + "gas": 272929, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1333, + "op": "PUSH32", + "gas": 272926, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1366, + "op": "DUP2", + "gas": 272923, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1367, + "op": "MSTORE", + "gas": 272920, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 1368, + "op": "PUSH1", + "gas": 272914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1370, + "op": "ADD", + "gas": 272911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1371, + "op": "PUSH32", + "gas": 272908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1404, + "op": "DUP2", + "gas": 272905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1405, + "op": "MSTORE", + "gas": 272902, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 1406, + "op": "PUSH1", + "gas": 272896, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1408, + "op": "ADD", + "gas": 272893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1409, + "op": "PUSH32", + "gas": 272890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1442, + "op": "DUP2", + "gas": 272887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1443, + "op": "MSTORE", + "gas": 272884, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 1444, + "op": "POP", + "gas": 272878, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1445, + "op": "SWAP1", + "gas": 272876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1446, + "op": "POP", + "gas": 272873, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1447, + "op": "PUSH0", + "gas": 272871, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1448, + "op": "JUMPDEST", + "gas": 272869, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1449, + "op": "DUP7", + "gas": 272868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1450, + "op": "DUP2", + "gas": 272865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1451, + "op": "LT", + "gas": 272862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1452, + "op": "ISZERO", + "gas": 272859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1453, + "op": "PUSH2", + "gas": 272856, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1456, + "op": "JUMPI", + "gas": 272853, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1457, + "op": "PUSH0", + "gas": 272843, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1458, + "op": "PUSH1", + "gas": 272841, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1460, + "op": "DUP3", + "gas": 272838, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1461, + "op": "PUSH2", + "gas": 272835, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1464, + "op": "SWAP2", + "gas": 272832, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1465, + "op": "SWAP1", + "gas": 272829, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1466, + "op": "PUSH2", + "gas": 272826, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1469, + "op": "JUMP", + "gas": 272823, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6694, + "op": "JUMPDEST", + "gas": 272815, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6695, + "op": "PUSH0", + "gas": 272814, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6696, + "op": "PUSH2", + "gas": 272812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6699, + "op": "DUP3", + "gas": 272809, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6700, + "op": "PUSH2", + "gas": 272806, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6703, + "op": "JUMP", + "gas": 272803, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 272795, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 272794, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 272792, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 272789, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 272786, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 272784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 272781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 272778, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 272776, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6704, + "op": "JUMPDEST", + "gas": 272768, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6705, + "op": "SWAP2", + "gas": 272767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6706, + "op": "POP", + "gas": 272764, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6707, + "op": "PUSH2", + "gas": 272762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6710, + "op": "DUP4", + "gas": 272759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6711, + "op": "PUSH2", + "gas": 272756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6714, + "op": "JUMP", + "gas": 272753, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 272745, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 272744, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 272742, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 272739, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 272736, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 272734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 272731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 272728, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 272726, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6715, + "op": "JUMPDEST", + "gas": 272718, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6716, + "op": "SWAP3", + "gas": 272717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6717, + "op": "POP", + "gas": 272714, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6718, + "op": "DUP3", + "gas": 272712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6719, + "op": "DUP3", + "gas": 272709, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6720, + "op": "MUL", + "gas": 272706, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6721, + "op": "PUSH2", + "gas": 272701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6724, + "op": "DUP2", + "gas": 272698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6725, + "op": "PUSH2", + "gas": 272695, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6728, + "op": "JUMP", + "gas": 272692, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 272684, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 272683, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 272681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 272678, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 272675, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 272673, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 272670, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 272667, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 272665, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6729, + "op": "JUMPDEST", + "gas": 272657, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6730, + "op": "SWAP2", + "gas": 272656, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6731, + "op": "POP", + "gas": 272653, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6732, + "op": "DUP3", + "gas": 272651, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6733, + "op": "DUP3", + "gas": 272648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6734, + "op": "DIV", + "gas": 272645, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6735, + "op": "DUP5", + "gas": 272640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6736, + "op": "EQ", + "gas": 272637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6737, + "op": "DUP4", + "gas": 272634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6738, + "op": "ISZERO", + "gas": 272631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6739, + "op": "OR", + "gas": 272628, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6740, + "op": "PUSH2", + "gas": 272625, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6743, + "op": "JUMPI", + "gas": 272622, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6752, + "op": "JUMPDEST", + "gas": 272612, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6753, + "op": "POP", + "gas": 272611, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6754, + "op": "SWAP3", + "gas": 272609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6755, + "op": "SWAP2", + "gas": 272606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6756, + "op": "POP", + "gas": 272603, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6757, + "op": "POP", + "gas": 272601, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6758, + "op": "JUMP", + "gas": 272599, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1470, + "op": "JUMPDEST", + "gas": 272591, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1471, + "op": "SWAP1", + "gas": 272590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1472, + "op": "POP", + "gas": 272587, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1473, + "op": "PUSH0", + "gas": 272585, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 272583, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 272582, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 272579, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 272576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 272573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 272570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 272567, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 272557, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 272554, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 272551, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 272546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 272543, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 272540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 272537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 272534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 272531, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 272526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 272523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 272520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 272517, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 272514, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 272511, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 272508, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 272505, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 272502, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 272499, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 272496, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 272493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 272490, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 272488, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 272486, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 272483, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 272475, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 272474, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 272471, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 272468, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 272465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 272462, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 272459, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 272449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 272446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 272443, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 272438, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 272435, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 272432, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 272429, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 272426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 272423, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 272418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 272415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 272412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 272409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 272406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 272403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 272400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 272397, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 272394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 272391, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 272388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 272385, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 272382, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 272380, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 272378, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 272375, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 272367, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 272366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 272363, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 272360, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 272357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 272354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 272351, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1515, + "op": "JUMPDEST", + "gas": 272341, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1516, + "op": "POP", + "gas": 272340, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1517, + "op": "PUSH0", + "gas": 272338, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 272336, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 272335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 272332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 272329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 272326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 272323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 272320, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 272310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 272307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 272304, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 272299, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 272296, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 272293, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 272290, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 272287, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 272284, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 272279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 272276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 272273, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 272270, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 272267, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 272264, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 272261, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 272258, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 272255, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 272252, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 272249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 272246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 272243, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 272240, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 272237, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 272235, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 272233, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 272230, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 272222, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 272221, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 272218, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 272215, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 272212, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 272209, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 272206, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 272196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 272193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 272190, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 272185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 272182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 272179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 272176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 272173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 272170, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 272165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 272162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 272159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 272156, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 272153, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 272150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 272147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 272144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 272141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 272138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 272135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 272132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 272129, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 272126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 272123, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 272121, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 272119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 272116, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 272108, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 272107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 272104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 272101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 272098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 272095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 272092, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 272082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 272079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 272076, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 272071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 272068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 272065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 272062, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 272059, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 272056, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 272051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 272048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 272045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 272042, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 272039, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 272036, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 272033, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 272030, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 272027, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 272024, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 272021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 272018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 272015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 272012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 272009, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 272007, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 272005, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 272002, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 271994, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 271993, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 271990, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 271987, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 271984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 271981, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 271978, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 271968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 271965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 271962, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 271957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 271954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 271951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 271948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 271945, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 271942, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 271937, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 271934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 271931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 271928, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 271925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 271922, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 271919, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 271916, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 271913, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 271910, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 271907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 271904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 271901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 271898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 271895, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 271893, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 271891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 271888, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 271880, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 271879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 271876, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 271873, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 271870, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 271867, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 271864, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1562, + "op": "JUMPDEST", + "gas": 271854, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1563, + "op": "POP", + "gas": 271853, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1564, + "op": "POP", + "gas": 271851, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1565, + "op": "DUP1", + "gas": 271849, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1566, + "op": "DUP1", + "gas": 271846, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1567, + "op": "PUSH1", + "gas": 271843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1569, + "op": "ADD", + "gas": 271840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1570, + "op": "SWAP2", + "gas": 271837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1571, + "op": "POP", + "gas": 271834, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1572, + "op": "POP", + "gas": 271832, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1573, + "op": "PUSH2", + "gas": 271830, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1576, + "op": "JUMP", + "gas": 271827, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1448, + "op": "JUMPDEST", + "gas": 271819, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1449, + "op": "DUP7", + "gas": 271818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1450, + "op": "DUP2", + "gas": 271815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1451, + "op": "LT", + "gas": 271812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1452, + "op": "ISZERO", + "gas": 271809, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1453, + "op": "PUSH2", + "gas": 271806, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1456, + "op": "JUMPI", + "gas": 271803, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1457, + "op": "PUSH0", + "gas": 271793, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1458, + "op": "PUSH1", + "gas": 271791, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1460, + "op": "DUP3", + "gas": 271788, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1461, + "op": "PUSH2", + "gas": 271785, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1464, + "op": "SWAP2", + "gas": 271782, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1465, + "op": "SWAP1", + "gas": 271779, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1466, + "op": "PUSH2", + "gas": 271776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1469, + "op": "JUMP", + "gas": 271773, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6694, + "op": "JUMPDEST", + "gas": 271765, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6695, + "op": "PUSH0", + "gas": 271764, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6696, + "op": "PUSH2", + "gas": 271762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6699, + "op": "DUP3", + "gas": 271759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6700, + "op": "PUSH2", + "gas": 271756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6703, + "op": "JUMP", + "gas": 271753, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 271745, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 271744, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 271742, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 271739, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 271736, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 271734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 271731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 271728, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 271726, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6704, + "op": "JUMPDEST", + "gas": 271718, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6705, + "op": "SWAP2", + "gas": 271717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6706, + "op": "POP", + "gas": 271714, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6707, + "op": "PUSH2", + "gas": 271712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6710, + "op": "DUP4", + "gas": 271709, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6711, + "op": "PUSH2", + "gas": 271706, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6714, + "op": "JUMP", + "gas": 271703, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 271695, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 271694, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 271692, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 271689, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 271686, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 271684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 271681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 271678, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 271676, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6715, + "op": "JUMPDEST", + "gas": 271668, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6716, + "op": "SWAP3", + "gas": 271667, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6717, + "op": "POP", + "gas": 271664, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6718, + "op": "DUP3", + "gas": 271662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6719, + "op": "DUP3", + "gas": 271659, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6720, + "op": "MUL", + "gas": 271656, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6721, + "op": "PUSH2", + "gas": 271651, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6724, + "op": "DUP2", + "gas": 271648, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6725, + "op": "PUSH2", + "gas": 271645, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6728, + "op": "JUMP", + "gas": 271642, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 271634, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 271633, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 271631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 271628, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 271625, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 271623, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 271620, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 271617, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 271615, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6729, + "op": "JUMPDEST", + "gas": 271607, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6730, + "op": "SWAP2", + "gas": 271606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6731, + "op": "POP", + "gas": 271603, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6732, + "op": "DUP3", + "gas": 271601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6733, + "op": "DUP3", + "gas": 271598, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6734, + "op": "DIV", + "gas": 271595, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6735, + "op": "DUP5", + "gas": 271590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6736, + "op": "EQ", + "gas": 271587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6737, + "op": "DUP4", + "gas": 271584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6738, + "op": "ISZERO", + "gas": 271581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6739, + "op": "OR", + "gas": 271578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6740, + "op": "PUSH2", + "gas": 271575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6743, + "op": "JUMPI", + "gas": 271572, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6752, + "op": "JUMPDEST", + "gas": 271562, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6753, + "op": "POP", + "gas": 271561, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6754, + "op": "SWAP3", + "gas": 271559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6755, + "op": "SWAP2", + "gas": 271556, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6756, + "op": "POP", + "gas": 271553, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6757, + "op": "POP", + "gas": 271551, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6758, + "op": "JUMP", + "gas": 271549, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1470, + "op": "JUMPDEST", + "gas": 271541, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1471, + "op": "SWAP1", + "gas": 271540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1472, + "op": "POP", + "gas": 271537, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1473, + "op": "PUSH0", + "gas": 271535, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 271533, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 271532, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 271529, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 271526, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 271523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 271520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 271517, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 271507, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 271504, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 271501, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 271496, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 271493, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 271490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 271487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 271484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 271481, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 271476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 271473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 271470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 271467, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 271464, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 271461, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 271458, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 271455, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 271452, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 271449, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 271446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 271443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 271440, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 271438, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 271436, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 271433, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 271425, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 271424, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 271421, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 271418, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 271415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 271412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 271409, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 271399, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 271396, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 271393, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 271388, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 271385, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 271382, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 271379, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 271376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 271373, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 271368, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 271365, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 271362, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 271359, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 271356, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 271353, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 271350, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 271347, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 271344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 271341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 271338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 271335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 271332, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 271330, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 271328, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 271325, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 271317, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 271316, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 271313, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 271310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 271307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 271304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 271301, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1515, + "op": "JUMPDEST", + "gas": 271291, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1516, + "op": "POP", + "gas": 271290, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1517, + "op": "PUSH0", + "gas": 271288, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 271286, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 271285, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 271282, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 271279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 271276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 271273, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 271270, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 271260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 271257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 271254, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 271249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 271246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 271243, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 271240, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 271237, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 271234, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 271229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 271226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 271223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 271220, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 271217, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 271214, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 271211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 271208, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 271205, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 271202, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 271199, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 271196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 271193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 271190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 271187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 271185, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 271183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 271180, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 271172, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 271171, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 271168, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 271165, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 271162, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 271159, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 271156, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 271146, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 271143, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 271140, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 271135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 271132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 271129, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 271126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 271123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 271120, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 271115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 271112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 271109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 271106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 271103, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 271100, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 271097, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 271094, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 271091, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 271088, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 271085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 271082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 271079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 271076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 271073, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 271071, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 271069, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 271066, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 271058, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 271057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 271054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 271051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 271048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 271045, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 271042, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 271032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 271029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 271026, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 271021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 271018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 271015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 271012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 271009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 271006, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 271001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 270998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 270995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 270992, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 270989, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 270986, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 270983, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 270980, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 270977, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 270974, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 270971, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 270968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 270965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 270962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 270959, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 270957, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 270955, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 270952, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 270944, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 270943, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 270940, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 270937, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 270934, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 270931, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 270928, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 270918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 270915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 270912, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 270907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 270904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 270901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 270898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 270895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 270892, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 270887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 270884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 270881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 270878, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 270875, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 270872, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 270869, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 270866, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 270863, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 270860, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 270857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 270854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 270851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 270848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 270845, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 270843, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 270841, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 270838, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 270830, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 270829, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 270826, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 270823, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 270820, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 270817, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 270814, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1562, + "op": "JUMPDEST", + "gas": 270804, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1563, + "op": "POP", + "gas": 270803, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1564, + "op": "POP", + "gas": 270801, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1565, + "op": "DUP1", + "gas": 270799, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1566, + "op": "DUP1", + "gas": 270796, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1567, + "op": "PUSH1", + "gas": 270793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1569, + "op": "ADD", + "gas": 270790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1570, + "op": "SWAP2", + "gas": 270787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1571, + "op": "POP", + "gas": 270784, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1572, + "op": "POP", + "gas": 270782, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1573, + "op": "PUSH2", + "gas": 270780, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1576, + "op": "JUMP", + "gas": 270777, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1448, + "op": "JUMPDEST", + "gas": 270769, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1449, + "op": "DUP7", + "gas": 270768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1450, + "op": "DUP2", + "gas": 270765, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1451, + "op": "LT", + "gas": 270762, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1452, + "op": "ISZERO", + "gas": 270759, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1453, + "op": "PUSH2", + "gas": 270756, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1456, + "op": "JUMPI", + "gas": 270753, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1457, + "op": "PUSH0", + "gas": 270743, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1458, + "op": "PUSH1", + "gas": 270741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1460, + "op": "DUP3", + "gas": 270738, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1461, + "op": "PUSH2", + "gas": 270735, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1464, + "op": "SWAP2", + "gas": 270732, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1465, + "op": "SWAP1", + "gas": 270729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1466, + "op": "PUSH2", + "gas": 270726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1469, + "op": "JUMP", + "gas": 270723, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6694, + "op": "JUMPDEST", + "gas": 270715, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6695, + "op": "PUSH0", + "gas": 270714, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6696, + "op": "PUSH2", + "gas": 270712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6699, + "op": "DUP3", + "gas": 270709, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6700, + "op": "PUSH2", + "gas": 270706, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6703, + "op": "JUMP", + "gas": 270703, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 270695, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 270694, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 270692, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 270689, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 270686, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 270684, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 270681, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 270678, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 270676, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6704, + "op": "JUMPDEST", + "gas": 270668, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6705, + "op": "SWAP2", + "gas": 270667, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6706, + "op": "POP", + "gas": 270664, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6707, + "op": "PUSH2", + "gas": 270662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6710, + "op": "DUP4", + "gas": 270659, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6711, + "op": "PUSH2", + "gas": 270656, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6714, + "op": "JUMP", + "gas": 270653, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 270645, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 270644, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 270642, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 270639, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 270636, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 270634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 270631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 270628, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 270626, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6715, + "op": "JUMPDEST", + "gas": 270618, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6716, + "op": "SWAP3", + "gas": 270617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6717, + "op": "POP", + "gas": 270614, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6718, + "op": "DUP3", + "gas": 270612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6719, + "op": "DUP3", + "gas": 270609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6720, + "op": "MUL", + "gas": 270606, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6721, + "op": "PUSH2", + "gas": 270601, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6724, + "op": "DUP2", + "gas": 270598, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6725, + "op": "PUSH2", + "gas": 270595, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6728, + "op": "JUMP", + "gas": 270592, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 270584, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 270583, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 270581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 270578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 270575, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 270573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 270570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 270567, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 270565, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6729, + "op": "JUMPDEST", + "gas": 270557, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6730, + "op": "SWAP2", + "gas": 270556, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6731, + "op": "POP", + "gas": 270553, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6732, + "op": "DUP3", + "gas": 270551, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6733, + "op": "DUP3", + "gas": 270548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6734, + "op": "DIV", + "gas": 270545, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6735, + "op": "DUP5", + "gas": 270540, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6736, + "op": "EQ", + "gas": 270537, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6737, + "op": "DUP4", + "gas": 270534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6738, + "op": "ISZERO", + "gas": 270531, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6739, + "op": "OR", + "gas": 270528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6740, + "op": "PUSH2", + "gas": 270525, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6743, + "op": "JUMPI", + "gas": 270522, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6752, + "op": "JUMPDEST", + "gas": 270512, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6753, + "op": "POP", + "gas": 270511, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6754, + "op": "SWAP3", + "gas": 270509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6755, + "op": "SWAP2", + "gas": 270506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6756, + "op": "POP", + "gas": 270503, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6757, + "op": "POP", + "gas": 270501, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6758, + "op": "JUMP", + "gas": 270499, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1470, + "op": "JUMPDEST", + "gas": 270491, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1471, + "op": "SWAP1", + "gas": 270490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1472, + "op": "POP", + "gas": 270487, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1473, + "op": "PUSH0", + "gas": 270485, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 270483, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 270482, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 270479, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 270476, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 270473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 270470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 270467, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 270457, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 270454, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 270451, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 270446, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 270443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 270440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 270437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 270434, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 270431, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 270426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 270423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 270420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 270417, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 270414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 270411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 270408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 270405, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 270402, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 270399, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 270396, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 270393, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 270390, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 270388, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 270386, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 270383, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 270375, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 270374, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 270371, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 270368, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 270365, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 270362, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 270359, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 270349, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 270346, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 270343, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 270338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 270335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 270332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 270329, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 270326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 270323, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 270318, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 270315, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 270312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 270309, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 270306, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 270303, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 270300, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 270297, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 270294, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 270291, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 270288, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 270285, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 270282, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 270280, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 270278, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 270275, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 270267, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 270266, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 270263, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 270260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 270257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 270254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 270251, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1515, + "op": "JUMPDEST", + "gas": 270241, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1516, + "op": "POP", + "gas": 270240, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1517, + "op": "PUSH0", + "gas": 270238, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 270236, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 270235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 270232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 270229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 270226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 270223, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 270220, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 270210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 270207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 270204, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 270199, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 270196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 270193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 270190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 270187, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 270184, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 270179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 270176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 270173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 270170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 270167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 270164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 270161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 270158, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 270155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 270152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 270149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 270146, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 270143, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 270140, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 270137, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 270135, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 270133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 270130, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 270122, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 270121, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 270118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 270115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 270112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 270109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 270106, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 270096, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 270093, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 270090, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 270085, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 270082, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 270079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 270076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 270073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 270070, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 270065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 270062, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 270059, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 270056, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 270053, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 270050, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 270047, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 270044, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 270041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 270038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 270035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 270032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 270029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 270026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 270023, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 270021, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 270019, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 270016, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 270008, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 270007, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 270004, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 270001, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 269998, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 269995, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 269992, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 269982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 269979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 269976, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 269971, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 269968, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 269965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 269962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 269959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 269956, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 269951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 269948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 269945, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 269942, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 269939, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 269936, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 269933, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 269930, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 269927, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 269924, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 269921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 269918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 269915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 269912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 269909, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 269907, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 269905, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 269902, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 269894, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 269893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 269890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 269887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 269884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 269881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 269878, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 269868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 269865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 269862, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 269857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 269854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 269851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 269848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 269845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 269842, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 269837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 269834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 269831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 269828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 269825, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 269822, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 269819, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 269816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 269813, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 269810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 269807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 269804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 269801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 269798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 269795, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 269793, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 269791, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 269788, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 269780, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 269779, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 269776, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 269773, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 269770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 269767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 269764, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1562, + "op": "JUMPDEST", + "gas": 269754, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1563, + "op": "POP", + "gas": 269753, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1564, + "op": "POP", + "gas": 269751, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1565, + "op": "DUP1", + "gas": 269749, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1566, + "op": "DUP1", + "gas": 269746, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1567, + "op": "PUSH1", + "gas": 269743, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1569, + "op": "ADD", + "gas": 269740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1570, + "op": "SWAP2", + "gas": 269737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1571, + "op": "POP", + "gas": 269734, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1572, + "op": "POP", + "gas": 269732, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1573, + "op": "PUSH2", + "gas": 269730, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1576, + "op": "JUMP", + "gas": 269727, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1448, + "op": "JUMPDEST", + "gas": 269719, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1449, + "op": "DUP7", + "gas": 269718, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1450, + "op": "DUP2", + "gas": 269715, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1451, + "op": "LT", + "gas": 269712, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1452, + "op": "ISZERO", + "gas": 269709, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1453, + "op": "PUSH2", + "gas": 269706, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1456, + "op": "JUMPI", + "gas": 269703, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1457, + "op": "PUSH0", + "gas": 269693, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1458, + "op": "PUSH1", + "gas": 269691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1460, + "op": "DUP3", + "gas": 269688, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1461, + "op": "PUSH2", + "gas": 269685, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1464, + "op": "SWAP2", + "gas": 269682, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1465, + "op": "SWAP1", + "gas": 269679, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1466, + "op": "PUSH2", + "gas": 269676, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1469, + "op": "JUMP", + "gas": 269673, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6694, + "op": "JUMPDEST", + "gas": 269665, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6695, + "op": "PUSH0", + "gas": 269664, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6696, + "op": "PUSH2", + "gas": 269662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6699, + "op": "DUP3", + "gas": 269659, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6700, + "op": "PUSH2", + "gas": 269656, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6703, + "op": "JUMP", + "gas": 269653, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 269645, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 269644, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 269642, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 269639, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 269636, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 269634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 269631, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 269628, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 269626, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6704, + "op": "JUMPDEST", + "gas": 269618, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6705, + "op": "SWAP2", + "gas": 269617, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6706, + "op": "POP", + "gas": 269614, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6707, + "op": "PUSH2", + "gas": 269612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6710, + "op": "DUP4", + "gas": 269609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6711, + "op": "PUSH2", + "gas": 269606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6714, + "op": "JUMP", + "gas": 269603, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 269595, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 269594, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 269592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 269589, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 269586, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 269584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 269581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 269578, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 269576, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6715, + "op": "JUMPDEST", + "gas": 269568, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6716, + "op": "SWAP3", + "gas": 269567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6717, + "op": "POP", + "gas": 269564, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6718, + "op": "DUP3", + "gas": 269562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6719, + "op": "DUP3", + "gas": 269559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6720, + "op": "MUL", + "gas": 269556, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6721, + "op": "PUSH2", + "gas": 269551, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6724, + "op": "DUP2", + "gas": 269548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6725, + "op": "PUSH2", + "gas": 269545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6728, + "op": "JUMP", + "gas": 269542, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 269534, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 269533, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 269531, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 269528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 269525, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 269523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 269520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 269517, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 269515, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6729, + "op": "JUMPDEST", + "gas": 269507, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6730, + "op": "SWAP2", + "gas": 269506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6731, + "op": "POP", + "gas": 269503, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6732, + "op": "DUP3", + "gas": 269501, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6733, + "op": "DUP3", + "gas": 269498, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6734, + "op": "DIV", + "gas": 269495, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6735, + "op": "DUP5", + "gas": 269490, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6736, + "op": "EQ", + "gas": 269487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6737, + "op": "DUP4", + "gas": 269484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6738, + "op": "ISZERO", + "gas": 269481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6739, + "op": "OR", + "gas": 269478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6740, + "op": "PUSH2", + "gas": 269475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6743, + "op": "JUMPI", + "gas": 269472, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6752, + "op": "JUMPDEST", + "gas": 269462, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6753, + "op": "POP", + "gas": 269461, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6754, + "op": "SWAP3", + "gas": 269459, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6755, + "op": "SWAP2", + "gas": 269456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6756, + "op": "POP", + "gas": 269453, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6757, + "op": "POP", + "gas": 269451, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6758, + "op": "JUMP", + "gas": 269449, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1470, + "op": "JUMPDEST", + "gas": 269441, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1471, + "op": "SWAP1", + "gas": 269440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1472, + "op": "POP", + "gas": 269437, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1473, + "op": "PUSH0", + "gas": 269435, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 269433, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 269432, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 269429, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 269426, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 269423, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 269420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 269417, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 269407, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 269404, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 269401, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 269396, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 269393, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 269390, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 269387, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 269384, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 269381, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 269376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 269373, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 269370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 269367, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 269364, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 269361, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 269358, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 269355, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 269352, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 269349, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 269346, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 269343, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 269340, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 269338, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 269336, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 269333, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 269325, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 269324, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 269321, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 269318, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 269315, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 269312, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 269309, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 269299, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 269296, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 269293, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 269288, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 269285, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 269282, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 269279, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 269276, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 269273, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 269268, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 269265, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 269262, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 269259, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 269256, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 269253, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 269250, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 269247, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 269244, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 269241, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 269238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 269235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 269232, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 269230, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 269228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 269225, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 269217, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 269216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 269213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 269210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 269207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 269204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 269201, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1515, + "op": "JUMPDEST", + "gas": 269191, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1516, + "op": "POP", + "gas": 269190, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1517, + "op": "PUSH0", + "gas": 269188, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 269186, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 269185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 269182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 269179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 269176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 269173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 269170, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 269160, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 269157, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 269154, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 269149, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 269146, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 269143, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 269140, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 269137, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 269134, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 269129, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 269126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 269123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 269120, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 269117, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 269114, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 269111, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 269108, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 269105, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 269102, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 269099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 269096, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 269093, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 269090, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 269087, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 269085, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 269083, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 269080, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 269072, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 269071, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 269068, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 269065, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 269062, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 269059, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 269056, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 269046, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 269043, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 269040, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 269035, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 269032, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 269029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 269026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 269023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 269020, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 269015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 269012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 269009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 269006, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 269003, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 269000, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 268997, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 268994, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 268991, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 268988, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 268985, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 268982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 268979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 268976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 268973, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 268971, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 268969, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 268966, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 268958, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 268957, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 268954, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 268951, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 268948, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 268945, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 268942, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 268932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 268929, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 268926, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 268921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 268918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 268915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 268912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 268909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 268906, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 268901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 268898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 268895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 268892, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 268889, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 268886, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 268883, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 268880, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 268877, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 268874, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 268871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 268868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 268865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 268862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 268859, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 268857, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 268855, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 268852, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 268844, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 268843, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 268840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 268837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 268834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 268831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 268828, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 268818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 268815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 268812, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 268807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 268804, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 268801, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 268798, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 268795, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 268792, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 268787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 268784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 268781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 268778, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 268775, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 268772, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 268769, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 268766, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 268763, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 268760, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 268757, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 268754, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 268751, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 268748, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 268745, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 268743, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 268741, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 268738, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 268730, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 268729, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 268726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 268723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 268720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 268717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 268714, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1562, + "op": "JUMPDEST", + "gas": 268704, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1563, + "op": "POP", + "gas": 268703, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1564, + "op": "POP", + "gas": 268701, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1565, + "op": "DUP1", + "gas": 268699, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1566, + "op": "DUP1", + "gas": 268696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1567, + "op": "PUSH1", + "gas": 268693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1569, + "op": "ADD", + "gas": 268690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1570, + "op": "SWAP2", + "gas": 268687, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1571, + "op": "POP", + "gas": 268684, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1572, + "op": "POP", + "gas": 268682, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1573, + "op": "PUSH2", + "gas": 268680, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1576, + "op": "JUMP", + "gas": 268677, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1448, + "op": "JUMPDEST", + "gas": 268669, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1449, + "op": "DUP7", + "gas": 268668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1450, + "op": "DUP2", + "gas": 268665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1451, + "op": "LT", + "gas": 268662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1452, + "op": "ISZERO", + "gas": 268659, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1453, + "op": "PUSH2", + "gas": 268656, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1456, + "op": "JUMPI", + "gas": 268653, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1457, + "op": "PUSH0", + "gas": 268643, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1458, + "op": "PUSH1", + "gas": 268641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1460, + "op": "DUP3", + "gas": 268638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1461, + "op": "PUSH2", + "gas": 268635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1464, + "op": "SWAP2", + "gas": 268632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1465, + "op": "SWAP1", + "gas": 268629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1466, + "op": "PUSH2", + "gas": 268626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1469, + "op": "JUMP", + "gas": 268623, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6694, + "op": "JUMPDEST", + "gas": 268615, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6695, + "op": "PUSH0", + "gas": 268614, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6696, + "op": "PUSH2", + "gas": 268612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6699, + "op": "DUP3", + "gas": 268609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6700, + "op": "PUSH2", + "gas": 268606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6703, + "op": "JUMP", + "gas": 268603, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 268595, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 268594, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 268592, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 268589, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 268586, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 268584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 268581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 268578, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 268576, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6704, + "op": "JUMPDEST", + "gas": 268568, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6705, + "op": "SWAP2", + "gas": 268567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6706, + "op": "POP", + "gas": 268564, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6707, + "op": "PUSH2", + "gas": 268562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6710, + "op": "DUP4", + "gas": 268559, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6711, + "op": "PUSH2", + "gas": 268556, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6714, + "op": "JUMP", + "gas": 268553, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 268545, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 268544, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 268542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 268539, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 268536, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 268534, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 268531, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 268528, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 268526, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6715, + "op": "JUMPDEST", + "gas": 268518, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6716, + "op": "SWAP3", + "gas": 268517, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6717, + "op": "POP", + "gas": 268514, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6718, + "op": "DUP3", + "gas": 268512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6719, + "op": "DUP3", + "gas": 268509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6720, + "op": "MUL", + "gas": 268506, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6721, + "op": "PUSH2", + "gas": 268501, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6724, + "op": "DUP2", + "gas": 268498, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6725, + "op": "PUSH2", + "gas": 268495, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6728, + "op": "JUMP", + "gas": 268492, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 268484, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 268483, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 268481, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 268478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 268475, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 268473, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 268470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 268467, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 268465, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6729, + "op": "JUMPDEST", + "gas": 268457, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6730, + "op": "SWAP2", + "gas": 268456, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6731, + "op": "POP", + "gas": 268453, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6732, + "op": "DUP3", + "gas": 268451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6733, + "op": "DUP3", + "gas": 268448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6734, + "op": "DIV", + "gas": 268445, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6735, + "op": "DUP5", + "gas": 268440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6736, + "op": "EQ", + "gas": 268437, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6737, + "op": "DUP4", + "gas": 268434, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6738, + "op": "ISZERO", + "gas": 268431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6739, + "op": "OR", + "gas": 268428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6740, + "op": "PUSH2", + "gas": 268425, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6743, + "op": "JUMPI", + "gas": 268422, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6752, + "op": "JUMPDEST", + "gas": 268412, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6753, + "op": "POP", + "gas": 268411, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6754, + "op": "SWAP3", + "gas": 268409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6755, + "op": "SWAP2", + "gas": 268406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6756, + "op": "POP", + "gas": 268403, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6757, + "op": "POP", + "gas": 268401, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6758, + "op": "JUMP", + "gas": 268399, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1470, + "op": "JUMPDEST", + "gas": 268391, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1471, + "op": "SWAP1", + "gas": 268390, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1472, + "op": "POP", + "gas": 268387, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1473, + "op": "PUSH0", + "gas": 268385, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 268383, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 268382, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 268379, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 268376, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 268373, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 268370, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 268367, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 268357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 268354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 268351, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 268346, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 268343, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 268340, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 268337, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 268334, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 268331, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 268326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 268323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 268320, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 268317, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 268314, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 268311, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 268308, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 268305, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 268302, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 268299, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 268296, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 268293, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 268290, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 268288, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 268286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 268283, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 268275, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 268274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 268271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 268268, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 268265, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 268262, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 268259, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1484, + "op": "PUSH1", + "gas": 268249, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1486, + "op": "DUP2", + "gas": 268246, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1487, + "op": "MUL", + "gas": 268243, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1488, + "op": "DUP6", + "gas": 268238, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1489, + "op": "ADD", + "gas": 268235, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1490, + "op": "MLOAD", + "gas": 268232, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1491, + "op": "PUSH1", + "gas": 268229, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1493, + "op": "DUP3", + "gas": 268226, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1494, + "op": "MUL", + "gas": 268223, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1495, + "op": "DUP4", + "gas": 268218, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1496, + "op": "ADD", + "gas": 268215, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1497, + "op": "PUSH1", + "gas": 268212, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1499, + "op": "DUP9", + "gas": 268209, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1500, + "op": "ADD", + "gas": 268206, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1501, + "op": "ADD", + "gas": 268203, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1502, + "op": "MSTORE", + "gas": 268200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1503, + "op": "DUP1", + "gas": 268197, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1504, + "op": "DUP1", + "gas": 268194, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1505, + "op": "PUSH1", + "gas": 268191, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1507, + "op": "ADD", + "gas": 268188, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1508, + "op": "SWAP2", + "gas": 268185, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1509, + "op": "POP", + "gas": 268182, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1510, + "op": "POP", + "gas": 268180, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1511, + "op": "PUSH2", + "gas": 268178, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1514, + "op": "JUMP", + "gas": 268175, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1474, + "op": "JUMPDEST", + "gas": 268167, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1475, + "op": "PUSH1", + "gas": 268166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1477, + "op": "DUP2", + "gas": 268163, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1478, + "op": "LT", + "gas": 268160, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1479, + "op": "ISZERO", + "gas": 268157, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1480, + "op": "PUSH2", + "gas": 268154, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1483, + "op": "JUMPI", + "gas": 268151, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1515, + "op": "JUMPDEST", + "gas": 268141, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1516, + "op": "POP", + "gas": 268140, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1517, + "op": "PUSH0", + "gas": 268138, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 268136, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 268135, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 268132, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 268129, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 268126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 268123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 268120, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 268110, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 268107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 268104, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 268099, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 268096, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 268093, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 268090, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 268087, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 268084, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 268079, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 268076, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 268073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 268070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 268067, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 268064, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 268061, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 268058, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 268055, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 268052, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 268049, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 268046, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 268043, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 268040, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 268037, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 268035, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 268033, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 268030, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 268022, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 268021, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 268018, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 268015, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 268012, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 268009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 268006, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 267996, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 267993, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 267990, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 267985, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 267982, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 267979, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 267976, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 267973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 267970, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 267965, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 267962, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 267959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 267956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 267953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 267950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 267947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 267944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 267941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 267938, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 267935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 267932, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 267929, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 267926, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 267923, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 267921, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 267919, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 267916, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 267908, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 267907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 267904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 267901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 267898, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 267895, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 267892, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 267882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 267879, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 267876, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 267871, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 267868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 267865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 267862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 267859, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 267856, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 267851, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 267848, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 267845, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 267842, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 267839, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 267836, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 267833, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 267830, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 267827, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 267824, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 267821, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 267818, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 267815, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 267812, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 267809, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 267807, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 267805, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 267802, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 267794, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 267793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 267790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 267787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 267784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 267781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 267778, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1528, + "op": "PUSH1", + "gas": 267768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1530, + "op": "DUP2", + "gas": 267765, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1531, + "op": "MUL", + "gas": 267762, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1532, + "op": "DUP5", + "gas": 267757, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1533, + "op": "ADD", + "gas": 267754, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1534, + "op": "MLOAD", + "gas": 267751, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1535, + "op": "PUSH1", + "gas": 267748, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1537, + "op": "DUP3", + "gas": 267745, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1538, + "op": "MUL", + "gas": 267742, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1539, + "op": "PUSH1", + "gas": 267737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1541, + "op": "DUP5", + "gas": 267734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1542, + "op": "ADD", + "gas": 267731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1543, + "op": "ADD", + "gas": 267728, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1544, + "op": "PUSH1", + "gas": 267725, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1546, + "op": "DUP9", + "gas": 267722, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1547, + "op": "ADD", + "gas": 267719, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1548, + "op": "ADD", + "gas": 267716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1549, + "op": "MSTORE", + "gas": 267713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1550, + "op": "DUP1", + "gas": 267710, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1551, + "op": "DUP1", + "gas": 267707, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1552, + "op": "PUSH1", + "gas": 267704, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1554, + "op": "ADD", + "gas": 267701, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1555, + "op": "SWAP2", + "gas": 267698, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1556, + "op": "POP", + "gas": 267695, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1557, + "op": "POP", + "gas": 267693, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1558, + "op": "PUSH2", + "gas": 267691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1561, + "op": "JUMP", + "gas": 267688, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1518, + "op": "JUMPDEST", + "gas": 267680, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1519, + "op": "PUSH1", + "gas": 267679, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1521, + "op": "DUP2", + "gas": 267676, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1522, + "op": "LT", + "gas": 267673, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1523, + "op": "ISZERO", + "gas": 267670, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1524, + "op": "PUSH2", + "gas": 267667, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1527, + "op": "JUMPI", + "gas": 267664, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1562, + "op": "JUMPDEST", + "gas": 267654, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1563, + "op": "POP", + "gas": 267653, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1564, + "op": "POP", + "gas": 267651, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1565, + "op": "DUP1", + "gas": 267649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1566, + "op": "DUP1", + "gas": 267646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1567, + "op": "PUSH1", + "gas": 267643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1569, + "op": "ADD", + "gas": 267640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1570, + "op": "SWAP2", + "gas": 267637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1571, + "op": "POP", + "gas": 267634, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1572, + "op": "POP", + "gas": 267632, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1573, + "op": "PUSH2", + "gas": 267630, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1576, + "op": "JUMP", + "gas": 267627, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1448, + "op": "JUMPDEST", + "gas": 267619, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1449, + "op": "DUP7", + "gas": 267618, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1450, + "op": "DUP2", + "gas": 267615, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1451, + "op": "LT", + "gas": 267612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1452, + "op": "ISZERO", + "gas": 267609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1453, + "op": "PUSH2", + "gas": 267606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1456, + "op": "JUMPI", + "gas": 267603, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1577, + "op": "JUMPDEST", + "gas": 267593, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1578, + "op": "POP", + "gas": 267592, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1579, + "op": "PUSH0", + "gas": 267590, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1580, + "op": "DUP1", + "gas": 267588, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1581, + "op": "PUSH1", + "gas": 267585, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1583, + "op": "PUSH20", + "gas": 267582, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1604, + "op": "AND", + "gas": 267579, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1605, + "op": "PUSH3", + "gas": 267576, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1609, + "op": "DUP7", + "gas": 267573, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1610, + "op": "PUSH1", + "gas": 267570, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1612, + "op": "MLOAD", + "gas": 267567, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1613, + "op": "PUSH2", + "gas": 267564, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1616, + "op": "SWAP2", + "gas": 267561, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1617, + "op": "SWAP1", + "gas": 267558, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1618, + "op": "PUSH2", + "gas": 267555, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1621, + "op": "JUMP", + "gas": 267552, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5617, + "op": "JUMPDEST", + "gas": 267544, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5618, + "op": "PUSH0", + "gas": 267543, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5619, + "op": "PUSH2", + "gas": 267541, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5622, + "op": "DUP3", + "gas": 267538, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5623, + "op": "DUP5", + "gas": 267535, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5624, + "op": "PUSH2", + "gas": 267532, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5627, + "op": "JUMP", + "gas": 267529, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5569, + "op": "JUMPDEST", + "gas": 267521, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5570, + "op": "PUSH0", + "gas": 267520, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5571, + "op": "PUSH2", + "gas": 267518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5574, + "op": "DUP3", + "gas": 267515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5575, + "op": "PUSH2", + "gas": 267512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5578, + "op": "JUMP", + "gas": 267509, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5082, + "op": "JUMPDEST", + "gas": 267501, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5083, + "op": "PUSH0", + "gas": 267500, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5084, + "op": "DUP2", + "gas": 267498, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5085, + "op": "MLOAD", + "gas": 267495, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5086, + "op": "SWAP1", + "gas": 267492, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5087, + "op": "POP", + "gas": 267489, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5088, + "op": "SWAP2", + "gas": 267487, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5089, + "op": "SWAP1", + "gas": 267484, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5090, + "op": "POP", + "gas": 267481, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5091, + "op": "JUMP", + "gas": 267479, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5579, + "op": "JUMPDEST", + "gas": 267471, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5580, + "op": "PUSH2", + "gas": 267470, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5583, + "op": "DUP2", + "gas": 267467, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5584, + "op": "DUP6", + "gas": 267464, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5585, + "op": "PUSH2", + "gas": 267461, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5588, + "op": "JUMP", + "gas": 267458, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5559, + "op": "JUMPDEST", + "gas": 267450, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5560, + "op": "PUSH0", + "gas": 267449, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5561, + "op": "DUP2", + "gas": 267447, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5562, + "op": "SWAP1", + "gas": 267444, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5563, + "op": "POP", + "gas": 267441, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5564, + "op": "SWAP3", + "gas": 267439, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5565, + "op": "SWAP2", + "gas": 267436, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5566, + "op": "POP", + "gas": 267433, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5567, + "op": "POP", + "gas": 267431, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5568, + "op": "JUMP", + "gas": 267429, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5589, + "op": "JUMPDEST", + "gas": 267421, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5590, + "op": "SWAP4", + "gas": 267420, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5591, + "op": "POP", + "gas": 267417, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5592, + "op": "PUSH2", + "gas": 267415, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5595, + "op": "DUP2", + "gas": 267412, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5596, + "op": "DUP6", + "gas": 267409, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5597, + "op": "PUSH1", + "gas": 267406, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5599, + "op": "DUP7", + "gas": 267403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5600, + "op": "ADD", + "gas": 267400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5601, + "op": "PUSH2", + "gas": 267397, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5604, + "op": "JUMP", + "gas": 267394, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5108, + "op": "JUMPDEST", + "gas": 267386, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5109, + "op": "DUP3", + "gas": 267385, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5110, + "op": "DUP2", + "gas": 267382, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP4", + "gas": 267379, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "opcode 0x5e not defined", + "gas": 267376, + "gasCost": 190, + "depth": 1 + }, + { + "pc": 5113, + "op": "PUSH0", + "gas": 267186, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5114, + "op": "DUP4", + "gas": 267184, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5115, + "op": "DUP4", + "gas": 267181, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "ADD", + "gas": 267178, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "MSTORE", + "gas": 267175, + "gasCost": 7, + "depth": 1 + }, + { + "pc": 5118, + "op": "POP", + "gas": 267168, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5119, + "op": "POP", + "gas": 267166, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5120, + "op": "POP", + "gas": 267164, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "JUMP", + "gas": 267162, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5605, + "op": "JUMPDEST", + "gas": 267154, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5606, + "op": "DUP1", + "gas": 267153, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5607, + "op": "DUP5", + "gas": 267150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5608, + "op": "ADD", + "gas": 267147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5609, + "op": "SWAP2", + "gas": 267144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5610, + "op": "POP", + "gas": 267141, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5611, + "op": "POP", + "gas": 267139, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5612, + "op": "SWAP3", + "gas": 267137, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5613, + "op": "SWAP2", + "gas": 267134, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5614, + "op": "POP", + "gas": 267131, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5615, + "op": "POP", + "gas": 267129, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5616, + "op": "JUMP", + "gas": 267127, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5628, + "op": "JUMPDEST", + "gas": 267119, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5629, + "op": "SWAP2", + "gas": 267118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5630, + "op": "POP", + "gas": 267115, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5631, + "op": "DUP2", + "gas": 267113, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5632, + "op": "SWAP1", + "gas": 267110, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5633, + "op": "POP", + "gas": 267107, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5634, + "op": "SWAP3", + "gas": 267105, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5635, + "op": "SWAP2", + "gas": 267102, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5636, + "op": "POP", + "gas": 267099, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5637, + "op": "POP", + "gas": 267097, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5638, + "op": "JUMP", + "gas": 267095, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1622, + "op": "JUMPDEST", + "gas": 267087, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1623, + "op": "PUSH0", + "gas": 267086, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1624, + "op": "PUSH1", + "gas": 267084, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1626, + "op": "MLOAD", + "gas": 267081, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1627, + "op": "DUP1", + "gas": 267078, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1628, + "op": "DUP4", + "gas": 267075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1629, + "op": "SUB", + "gas": 267072, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1630, + "op": "DUP2", + "gas": 267069, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1631, + "op": "DUP7", + "gas": 267066, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1632, + "op": "DUP7", + "gas": 267063, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1633, + "op": "STATICCALL", + "gas": 267060, + "gasCost": 262889, + "depth": 1 + }, + { + "pc": 1634, + "op": "SWAP3", + "gas": 51960, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1635, + "op": "POP", + "gas": 51957, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1636, + "op": "POP", + "gas": 51955, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1637, + "op": "POP", + "gas": 51953, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1638, + "op": "RETURNDATASIZE", + "gas": 51951, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1639, + "op": "DUP1", + "gas": 51949, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1640, + "op": "PUSH0", + "gas": 51946, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1641, + "op": "DUP2", + "gas": 51944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1642, + "op": "EQ", + "gas": 51941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1643, + "op": "PUSH2", + "gas": 51938, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1646, + "op": "JUMPI", + "gas": 51935, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1647, + "op": "PUSH1", + "gas": 51925, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1649, + "op": "MLOAD", + "gas": 51922, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1650, + "op": "SWAP2", + "gas": 51919, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1651, + "op": "POP", + "gas": 51916, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1652, + "op": "PUSH1", + "gas": 51914, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1654, + "op": "NOT", + "gas": 51911, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1655, + "op": "PUSH1", + "gas": 51908, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1657, + "op": "RETURNDATASIZE", + "gas": 51905, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1658, + "op": "ADD", + "gas": 51903, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1659, + "op": "AND", + "gas": 51900, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1660, + "op": "DUP3", + "gas": 51897, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1661, + "op": "ADD", + "gas": 51894, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1662, + "op": "PUSH1", + "gas": 51891, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1664, + "op": "MSTORE", + "gas": 51888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1665, + "op": "RETURNDATASIZE", + "gas": 51885, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1666, + "op": "DUP3", + "gas": 51883, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1667, + "op": "MSTORE", + "gas": 51880, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1668, + "op": "RETURNDATASIZE", + "gas": 51877, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1669, + "op": "PUSH0", + "gas": 51875, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1670, + "op": "PUSH1", + "gas": 51873, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1672, + "op": "DUP5", + "gas": 51870, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1673, + "op": "ADD", + "gas": 51867, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1674, + "op": "RETURNDATACOPY", + "gas": 51864, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 1675, + "op": "PUSH2", + "gas": 51858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1678, + "op": "JUMP", + "gas": 51855, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1684, + "op": "JUMPDEST", + "gas": 51847, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1685, + "op": "POP", + "gas": 51846, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1686, + "op": "SWAP2", + "gas": 51844, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1687, + "op": "POP", + "gas": 51841, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1688, + "op": "SWAP2", + "gas": 51839, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1689, + "op": "POP", + "gas": 51836, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1690, + "op": "DUP2", + "gas": 51834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1691, + "op": "PUSH0", + "gas": 51831, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1692, + "op": "DUP8", + "gas": 51829, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1693, + "op": "PUSH1", + "gas": 51826, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1695, + "op": "MLOAD", + "gas": 51823, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1696, + "op": "PUSH2", + "gas": 51820, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1699, + "op": "SWAP2", + "gas": 51817, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1700, + "op": "SWAP1", + "gas": 51814, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1701, + "op": "PUSH2", + "gas": 51811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1704, + "op": "JUMP", + "gas": 51808, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5639, + "op": "JUMPDEST", + "gas": 51800, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5640, + "op": "PUSH0", + "gas": 51799, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5641, + "op": "PUSH2", + "gas": 51797, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5644, + "op": "DUP3", + "gas": 51794, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5645, + "op": "DUP5", + "gas": 51791, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5646, + "op": "PUSH2", + "gas": 51788, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5649, + "op": "JUMP", + "gas": 51785, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5478, + "op": "JUMPDEST", + "gas": 51777, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5479, + "op": "PUSH0", + "gas": 51776, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5480, + "op": "PUSH2", + "gas": 51774, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5483, + "op": "DUP3", + "gas": 51771, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5484, + "op": "PUSH2", + "gas": 51768, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5487, + "op": "JUMP", + "gas": 51765, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5468, + "op": "JUMPDEST", + "gas": 51757, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5469, + "op": "PUSH0", + "gas": 51756, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5470, + "op": "DUP2", + "gas": 51754, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5471, + "op": "MLOAD", + "gas": 51751, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5472, + "op": "SWAP1", + "gas": 51748, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5473, + "op": "POP", + "gas": 51745, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5474, + "op": "SWAP2", + "gas": 51743, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5475, + "op": "SWAP1", + "gas": 51740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5476, + "op": "POP", + "gas": 51737, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5477, + "op": "JUMP", + "gas": 51735, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5488, + "op": "JUMPDEST", + "gas": 51727, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5489, + "op": "PUSH2", + "gas": 51726, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5492, + "op": "DUP2", + "gas": 51723, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5493, + "op": "DUP6", + "gas": 51720, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5494, + "op": "PUSH2", + "gas": 51717, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5497, + "op": "JUMP", + "gas": 51714, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5384, + "op": "JUMPDEST", + "gas": 51706, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5385, + "op": "PUSH0", + "gas": 51705, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5386, + "op": "DUP2", + "gas": 51703, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5387, + "op": "SWAP1", + "gas": 51700, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5388, + "op": "POP", + "gas": 51697, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5389, + "op": "SWAP3", + "gas": 51695, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5390, + "op": "SWAP2", + "gas": 51692, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5391, + "op": "POP", + "gas": 51689, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5392, + "op": "POP", + "gas": 51687, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5393, + "op": "JUMP", + "gas": 51685, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5498, + "op": "JUMPDEST", + "gas": 51677, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP4", + "gas": 51676, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 51673, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "PUSH2", + "gas": 51671, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5504, + "op": "DUP2", + "gas": 51668, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5505, + "op": "DUP6", + "gas": 51665, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH1", + "gas": 51662, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5508, + "op": "DUP7", + "gas": 51659, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5509, + "op": "ADD", + "gas": 51656, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "PUSH2", + "gas": 51653, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5513, + "op": "JUMP", + "gas": 51650, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5108, + "op": "JUMPDEST", + "gas": 51642, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5109, + "op": "DUP3", + "gas": 51641, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5110, + "op": "DUP2", + "gas": 51638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP4", + "gas": 51635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "opcode 0x5e not defined", + "gas": 51632, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5113, + "op": "PUSH0", + "gas": 51626, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5114, + "op": "DUP4", + "gas": 51624, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5115, + "op": "DUP4", + "gas": 51621, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "ADD", + "gas": 51618, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "MSTORE", + "gas": 51615, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5118, + "op": "POP", + "gas": 51612, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5119, + "op": "POP", + "gas": 51610, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5120, + "op": "POP", + "gas": 51608, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "JUMP", + "gas": 51606, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMPDEST", + "gas": 51598, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5515, + "op": "DUP1", + "gas": 51597, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5516, + "op": "DUP5", + "gas": 51594, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5517, + "op": "ADD", + "gas": 51591, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5518, + "op": "SWAP2", + "gas": 51588, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "POP", + "gas": 51585, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5520, + "op": "POP", + "gas": 51583, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5521, + "op": "SWAP3", + "gas": 51581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5522, + "op": "SWAP2", + "gas": 51578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5523, + "op": "POP", + "gas": 51575, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5524, + "op": "POP", + "gas": 51573, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMP", + "gas": 51571, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5650, + "op": "JUMPDEST", + "gas": 51563, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5651, + "op": "SWAP2", + "gas": 51562, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5652, + "op": "POP", + "gas": 51559, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5653, + "op": "DUP2", + "gas": 51557, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5654, + "op": "SWAP1", + "gas": 51554, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5655, + "op": "POP", + "gas": 51551, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5656, + "op": "SWAP3", + "gas": 51549, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5657, + "op": "SWAP2", + "gas": 51546, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5658, + "op": "POP", + "gas": 51543, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5659, + "op": "POP", + "gas": 51541, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5660, + "op": "JUMP", + "gas": 51539, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1705, + "op": "JUMPDEST", + "gas": 51531, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1706, + "op": "SWAP1", + "gas": 51530, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1707, + "op": "DUP2", + "gas": 51527, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1708, + "op": "MSTORE", + "gas": 51524, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1709, + "op": "PUSH1", + "gas": 51521, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1711, + "op": "ADD", + "gas": 51518, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1712, + "op": "PUSH1", + "gas": 51515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1714, + "op": "MLOAD", + "gas": 51512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1715, + "op": "DUP1", + "gas": 51509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1716, + "op": "SWAP2", + "gas": 51506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1717, + "op": "SUB", + "gas": 51503, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1718, + "op": "SWAP1", + "gas": 51500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1719, + "op": "SHA3", + "gas": 51497, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 1720, + "op": "PUSH0", + "gas": 51455, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1721, + "op": "PUSH2", + "gas": 51453, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1724, + "op": "EXP", + "gas": 51450, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 1725, + "op": "DUP2", + "gas": 51440, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1726, + "op": "SLOAD", + "gas": 51437, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 1727, + "op": "DUP2", + "gas": 49337, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1728, + "op": "PUSH1", + "gas": 49334, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1730, + "op": "MUL", + "gas": 49331, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1731, + "op": "NOT", + "gas": 49326, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1732, + "op": "AND", + "gas": 49323, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1733, + "op": "SWAP1", + "gas": 49320, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1734, + "op": "DUP4", + "gas": 49317, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1735, + "op": "ISZERO", + "gas": 49314, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1736, + "op": "ISZERO", + "gas": 49311, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1737, + "op": "MUL", + "gas": 49308, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 1738, + "op": "OR", + "gas": 49303, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1739, + "op": "SWAP1", + "gas": 49300, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1740, + "op": "SSTORE", + "gas": 49297, + "gasCost": 20000, + "depth": 1 + }, + { + "pc": 1741, + "op": "POP", + "gas": 29297, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1742, + "op": "DUP1", + "gas": 29295, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1743, + "op": "PUSH1", + "gas": 29292, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1745, + "op": "DUP8", + "gas": 29289, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1746, + "op": "PUSH1", + "gas": 29286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1748, + "op": "MLOAD", + "gas": 29283, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1749, + "op": "PUSH2", + "gas": 29280, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1752, + "op": "SWAP2", + "gas": 29277, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1753, + "op": "SWAP1", + "gas": 29274, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1754, + "op": "PUSH2", + "gas": 29271, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1757, + "op": "JUMP", + "gas": 29268, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5639, + "op": "JUMPDEST", + "gas": 29260, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5640, + "op": "PUSH0", + "gas": 29259, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5641, + "op": "PUSH2", + "gas": 29257, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5644, + "op": "DUP3", + "gas": 29254, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5645, + "op": "DUP5", + "gas": 29251, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5646, + "op": "PUSH2", + "gas": 29248, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5649, + "op": "JUMP", + "gas": 29245, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5478, + "op": "JUMPDEST", + "gas": 29237, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5479, + "op": "PUSH0", + "gas": 29236, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5480, + "op": "PUSH2", + "gas": 29234, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5483, + "op": "DUP3", + "gas": 29231, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5484, + "op": "PUSH2", + "gas": 29228, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5487, + "op": "JUMP", + "gas": 29225, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5468, + "op": "JUMPDEST", + "gas": 29217, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5469, + "op": "PUSH0", + "gas": 29216, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5470, + "op": "DUP2", + "gas": 29214, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5471, + "op": "MLOAD", + "gas": 29211, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5472, + "op": "SWAP1", + "gas": 29208, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5473, + "op": "POP", + "gas": 29205, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5474, + "op": "SWAP2", + "gas": 29203, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5475, + "op": "SWAP1", + "gas": 29200, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5476, + "op": "POP", + "gas": 29197, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5477, + "op": "JUMP", + "gas": 29195, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5488, + "op": "JUMPDEST", + "gas": 29187, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5489, + "op": "PUSH2", + "gas": 29186, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5492, + "op": "DUP2", + "gas": 29183, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5493, + "op": "DUP6", + "gas": 29180, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5494, + "op": "PUSH2", + "gas": 29177, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5497, + "op": "JUMP", + "gas": 29174, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5384, + "op": "JUMPDEST", + "gas": 29166, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5385, + "op": "PUSH0", + "gas": 29165, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5386, + "op": "DUP2", + "gas": 29163, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5387, + "op": "SWAP1", + "gas": 29160, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5388, + "op": "POP", + "gas": 29157, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5389, + "op": "SWAP3", + "gas": 29155, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5390, + "op": "SWAP2", + "gas": 29152, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5391, + "op": "POP", + "gas": 29149, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5392, + "op": "POP", + "gas": 29147, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5393, + "op": "JUMP", + "gas": 29145, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5498, + "op": "JUMPDEST", + "gas": 29137, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5499, + "op": "SWAP4", + "gas": 29136, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5500, + "op": "POP", + "gas": 29133, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5501, + "op": "PUSH2", + "gas": 29131, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5504, + "op": "DUP2", + "gas": 29128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5505, + "op": "DUP6", + "gas": 29125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5506, + "op": "PUSH1", + "gas": 29122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5508, + "op": "DUP7", + "gas": 29119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5509, + "op": "ADD", + "gas": 29116, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5510, + "op": "PUSH2", + "gas": 29113, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5513, + "op": "JUMP", + "gas": 29110, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5108, + "op": "JUMPDEST", + "gas": 29102, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5109, + "op": "DUP3", + "gas": 29101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5110, + "op": "DUP2", + "gas": 29098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP4", + "gas": 29095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "opcode 0x5e not defined", + "gas": 29092, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5113, + "op": "PUSH0", + "gas": 29086, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5114, + "op": "DUP4", + "gas": 29084, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5115, + "op": "DUP4", + "gas": 29081, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "ADD", + "gas": 29078, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "MSTORE", + "gas": 29075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5118, + "op": "POP", + "gas": 29072, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5119, + "op": "POP", + "gas": 29070, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5120, + "op": "POP", + "gas": 29068, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "JUMP", + "gas": 29066, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5514, + "op": "JUMPDEST", + "gas": 29058, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5515, + "op": "DUP1", + "gas": 29057, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5516, + "op": "DUP5", + "gas": 29054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5517, + "op": "ADD", + "gas": 29051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5518, + "op": "SWAP2", + "gas": 29048, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5519, + "op": "POP", + "gas": 29045, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5520, + "op": "POP", + "gas": 29043, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5521, + "op": "SWAP3", + "gas": 29041, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5522, + "op": "SWAP2", + "gas": 29038, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5523, + "op": "POP", + "gas": 29035, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5524, + "op": "POP", + "gas": 29033, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5525, + "op": "JUMP", + "gas": 29031, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5650, + "op": "JUMPDEST", + "gas": 29023, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5651, + "op": "SWAP2", + "gas": 29022, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5652, + "op": "POP", + "gas": 29019, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5653, + "op": "DUP2", + "gas": 29017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5654, + "op": "SWAP1", + "gas": 29014, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5655, + "op": "POP", + "gas": 29011, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5656, + "op": "SWAP3", + "gas": 29009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5657, + "op": "SWAP2", + "gas": 29006, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5658, + "op": "POP", + "gas": 29003, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5659, + "op": "POP", + "gas": 29001, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5660, + "op": "JUMP", + "gas": 28999, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1758, + "op": "JUMPDEST", + "gas": 28991, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1759, + "op": "SWAP1", + "gas": 28990, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1760, + "op": "DUP2", + "gas": 28987, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1761, + "op": "MSTORE", + "gas": 28984, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1762, + "op": "PUSH1", + "gas": 28981, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1764, + "op": "ADD", + "gas": 28978, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1765, + "op": "PUSH1", + "gas": 28975, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1767, + "op": "MLOAD", + "gas": 28972, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1768, + "op": "DUP1", + "gas": 28969, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1769, + "op": "SWAP2", + "gas": 28966, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1770, + "op": "SUB", + "gas": 28963, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1771, + "op": "SWAP1", + "gas": 28960, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1772, + "op": "SHA3", + "gas": 28957, + "gasCost": 42, + "depth": 1 + }, + { + "pc": 1773, + "op": "SWAP1", + "gas": 28915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1774, + "op": "DUP2", + "gas": 28912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1775, + "op": "PUSH2", + "gas": 28909, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1778, + "op": "SWAP2", + "gas": 28906, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1779, + "op": "SWAP1", + "gas": 28903, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1780, + "op": "PUSH2", + "gas": 28900, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1783, + "op": "JUMP", + "gas": 28897, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6167, + "op": "JUMPDEST", + "gas": 28889, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6168, + "op": "PUSH2", + "gas": 28888, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6171, + "op": "DUP3", + "gas": 28885, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6172, + "op": "PUSH2", + "gas": 28882, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6175, + "op": "JUMP", + "gas": 28879, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5082, + "op": "JUMPDEST", + "gas": 28871, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5083, + "op": "PUSH0", + "gas": 28870, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5084, + "op": "DUP2", + "gas": 28868, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5085, + "op": "MLOAD", + "gas": 28865, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5086, + "op": "SWAP1", + "gas": 28862, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5087, + "op": "POP", + "gas": 28859, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5088, + "op": "SWAP2", + "gas": 28857, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5089, + "op": "SWAP1", + "gas": 28854, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5090, + "op": "POP", + "gas": 28851, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5091, + "op": "JUMP", + "gas": 28849, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6176, + "op": "JUMPDEST", + "gas": 28841, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6177, + "op": "PUSH8", + "gas": 28840, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6186, + "op": "DUP2", + "gas": 28837, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6187, + "op": "GT", + "gas": 28834, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6188, + "op": "ISZERO", + "gas": 28831, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6189, + "op": "PUSH2", + "gas": 28828, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6192, + "op": "JUMPI", + "gas": 28825, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6201, + "op": "JUMPDEST", + "gas": 28815, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6202, + "op": "PUSH2", + "gas": 28814, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6205, + "op": "DUP3", + "gas": 28811, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6206, + "op": "SLOAD", + "gas": 28808, + "gasCost": 2100, + "depth": 1 + }, + { + "pc": 6207, + "op": "PUSH2", + "gas": 26708, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6210, + "op": "JUMP", + "gas": 26705, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5706, + "op": "JUMPDEST", + "gas": 26697, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5707, + "op": "PUSH0", + "gas": 26696, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5708, + "op": "PUSH1", + "gas": 26694, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5710, + "op": "DUP3", + "gas": 26691, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5711, + "op": "DIV", + "gas": 26688, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 5712, + "op": "SWAP1", + "gas": 26683, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5713, + "op": "POP", + "gas": 26680, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5714, + "op": "PUSH1", + "gas": 26678, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5716, + "op": "DUP3", + "gas": 26675, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5717, + "op": "AND", + "gas": 26672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5718, + "op": "DUP1", + "gas": 26669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5719, + "op": "PUSH2", + "gas": 26666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5722, + "op": "JUMPI", + "gas": 26663, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5723, + "op": "PUSH1", + "gas": 26653, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5725, + "op": "DUP3", + "gas": 26650, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5726, + "op": "AND", + "gas": 26647, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5727, + "op": "SWAP2", + "gas": 26644, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5728, + "op": "POP", + "gas": 26641, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5729, + "op": "JUMPDEST", + "gas": 26639, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5730, + "op": "PUSH1", + "gas": 26638, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5732, + "op": "DUP3", + "gas": 26635, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5733, + "op": "LT", + "gas": 26632, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5734, + "op": "DUP2", + "gas": 26629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5735, + "op": "SUB", + "gas": 26626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5736, + "op": "PUSH2", + "gas": 26623, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5739, + "op": "JUMPI", + "gas": 26620, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 5748, + "op": "JUMPDEST", + "gas": 26610, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5749, + "op": "POP", + "gas": 26609, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5750, + "op": "SWAP2", + "gas": 26607, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5751, + "op": "SWAP1", + "gas": 26604, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5752, + "op": "POP", + "gas": 26601, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5753, + "op": "JUMP", + "gas": 26599, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6211, + "op": "JUMPDEST", + "gas": 26591, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6212, + "op": "PUSH2", + "gas": 26590, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6215, + "op": "DUP3", + "gas": 26587, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6216, + "op": "DUP3", + "gas": 26584, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6217, + "op": "DUP6", + "gas": 26581, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6218, + "op": "PUSH2", + "gas": 26578, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6221, + "op": "JUMP", + "gas": 26575, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6030, + "op": "JUMPDEST", + "gas": 26567, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6031, + "op": "PUSH1", + "gas": 26566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6033, + "op": "DUP3", + "gas": 26563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6034, + "op": "GT", + "gas": 26560, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6035, + "op": "ISZERO", + "gas": 26557, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6036, + "op": "PUSH2", + "gas": 26554, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6039, + "op": "JUMPI", + "gas": 26551, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6095, + "op": "JUMPDEST", + "gas": 26541, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6096, + "op": "POP", + "gas": 26540, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6097, + "op": "POP", + "gas": 26538, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6098, + "op": "POP", + "gas": 26536, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6099, + "op": "JUMP", + "gas": 26534, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6222, + "op": "JUMPDEST", + "gas": 26526, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6223, + "op": "PUSH0", + "gas": 26525, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6224, + "op": "PUSH1", + "gas": 26523, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6226, + "op": "SWAP1", + "gas": 26520, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6227, + "op": "POP", + "gas": 26517, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6228, + "op": "PUSH1", + "gas": 26515, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6230, + "op": "DUP4", + "gas": 26512, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6231, + "op": "GT", + "gas": 26509, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6232, + "op": "PUSH1", + "gas": 26506, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6234, + "op": "DUP2", + "gas": 26503, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6235, + "op": "EQ", + "gas": 26500, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6236, + "op": "PUSH2", + "gas": 26497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6239, + "op": "JUMPI", + "gas": 26494, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6271, + "op": "JUMPDEST", + "gas": 26484, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6272, + "op": "PUSH1", + "gas": 26483, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6274, + "op": "NOT", + "gas": 26480, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6275, + "op": "DUP5", + "gas": 26477, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6276, + "op": "AND", + "gas": 26474, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6277, + "op": "PUSH2", + "gas": 26471, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6280, + "op": "DUP7", + "gas": 26468, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6281, + "op": "PUSH2", + "gas": 26465, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6284, + "op": "JUMP", + "gas": 26462, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5754, + "op": "JUMPDEST", + "gas": 26454, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5755, + "op": "PUSH0", + "gas": 26453, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5756, + "op": "DUP2", + "gas": 26451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5757, + "op": "SWAP1", + "gas": 26448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5758, + "op": "POP", + "gas": 26445, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5759, + "op": "DUP2", + "gas": 26443, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5760, + "op": "PUSH0", + "gas": 26440, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5761, + "op": "MSTORE", + "gas": 26438, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5762, + "op": "PUSH1", + "gas": 26435, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5764, + "op": "PUSH0", + "gas": 26432, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5765, + "op": "SHA3", + "gas": 26430, + "gasCost": 36, + "depth": 1 + }, + { + "pc": 5766, + "op": "SWAP1", + "gas": 26394, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5767, + "op": "POP", + "gas": 26391, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5768, + "op": "SWAP2", + "gas": 26389, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5769, + "op": "SWAP1", + "gas": 26386, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5770, + "op": "POP", + "gas": 26383, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5771, + "op": "JUMP", + "gas": 26381, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6285, + "op": "JUMPDEST", + "gas": 26373, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6286, + "op": "PUSH0", + "gas": 26372, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6287, + "op": "JUMPDEST", + "gas": 26370, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6288, + "op": "DUP3", + "gas": 26369, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6289, + "op": "DUP2", + "gas": 26366, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6290, + "op": "LT", + "gas": 26363, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6291, + "op": "ISZERO", + "gas": 26360, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6292, + "op": "PUSH2", + "gas": 26357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6295, + "op": "JUMPI", + "gas": 26354, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6296, + "op": "DUP5", + "gas": 26344, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6297, + "op": "DUP10", + "gas": 26341, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6298, + "op": "ADD", + "gas": 26338, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6299, + "op": "MLOAD", + "gas": 26335, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6300, + "op": "DUP3", + "gas": 26332, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6301, + "op": "SSTORE", + "gas": 26329, + "gasCost": 2200, + "depth": 1 + }, + { + "pc": 6302, + "op": "PUSH1", + "gas": 24129, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6304, + "op": "DUP3", + "gas": 24126, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6305, + "op": "ADD", + "gas": 24123, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6306, + "op": "SWAP2", + "gas": 24120, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6307, + "op": "POP", + "gas": 24117, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6308, + "op": "PUSH1", + "gas": 24115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6310, + "op": "DUP6", + "gas": 24112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6311, + "op": "ADD", + "gas": 24109, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6312, + "op": "SWAP5", + "gas": 24106, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6313, + "op": "POP", + "gas": 24103, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6314, + "op": "PUSH1", + "gas": 24101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6316, + "op": "DUP2", + "gas": 24098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6317, + "op": "ADD", + "gas": 24095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6318, + "op": "SWAP1", + "gas": 24092, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6319, + "op": "POP", + "gas": 24089, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6320, + "op": "PUSH2", + "gas": 24087, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6323, + "op": "JUMP", + "gas": 24084, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6287, + "op": "JUMPDEST", + "gas": 24076, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6288, + "op": "DUP3", + "gas": 24075, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6289, + "op": "DUP2", + "gas": 24072, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6290, + "op": "LT", + "gas": 24069, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6291, + "op": "ISZERO", + "gas": 24066, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6292, + "op": "PUSH2", + "gas": 24063, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6295, + "op": "JUMPI", + "gas": 24060, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6324, + "op": "JUMPDEST", + "gas": 24050, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6325, + "op": "DUP7", + "gas": 24049, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6326, + "op": "DUP4", + "gas": 24046, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6327, + "op": "LT", + "gas": 24043, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6328, + "op": "ISZERO", + "gas": 24040, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6329, + "op": "PUSH2", + "gas": 24037, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6332, + "op": "JUMPI", + "gas": 24034, + "gasCost": 10, + "depth": 1 + }, + { + "pc": 6353, + "op": "JUMPDEST", + "gas": 24024, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6354, + "op": "PUSH1", + "gas": 24023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6356, + "op": "PUSH1", + "gas": 24020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6358, + "op": "DUP9", + "gas": 24017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6359, + "op": "MUL", + "gas": 24014, + "gasCost": 5, + "depth": 1 + }, + { + "pc": 6360, + "op": "ADD", + "gas": 24009, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6361, + "op": "DUP9", + "gas": 24006, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6362, + "op": "SSTORE", + "gas": 24003, + "gasCost": 20000, + "depth": 1 + }, + { + "pc": 6363, + "op": "POP", + "gas": 4003, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6364, + "op": "POP", + "gas": 4001, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6365, + "op": "POP", + "gas": 3999, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6366, + "op": "JUMPDEST", + "gas": 3997, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6367, + "op": "POP", + "gas": 3996, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6368, + "op": "POP", + "gas": 3994, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6369, + "op": "POP", + "gas": 3992, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6370, + "op": "POP", + "gas": 3990, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6371, + "op": "POP", + "gas": 3988, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6372, + "op": "POP", + "gas": 3986, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6373, + "op": "JUMP", + "gas": 3984, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1784, + "op": "JUMPDEST", + "gas": 3976, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1785, + "op": "POP", + "gas": 3975, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1786, + "op": "PUSH32", + "gas": 3973, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1819, + "op": "DUP7", + "gas": 3970, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1820, + "op": "DUP4", + "gas": 3967, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1821, + "op": "DUP4", + "gas": 3964, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1822, + "op": "TIMESTAMP", + "gas": 3961, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1823, + "op": "PUSH1", + "gas": 3959, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1825, + "op": "MLOAD", + "gas": 3956, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1826, + "op": "PUSH2", + "gas": 3953, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1829, + "op": "SWAP5", + "gas": 3950, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1830, + "op": "SWAP4", + "gas": 3947, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1831, + "op": "SWAP3", + "gas": 3944, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1832, + "op": "SWAP2", + "gas": 3941, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1833, + "op": "SWAP1", + "gas": 3938, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1834, + "op": "PUSH2", + "gas": 3935, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1837, + "op": "JUMP", + "gas": 3932, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6461, + "op": "JUMPDEST", + "gas": 3924, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6462, + "op": "PUSH0", + "gas": 3923, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6463, + "op": "PUSH1", + "gas": 3921, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6465, + "op": "DUP3", + "gas": 3918, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6466, + "op": "ADD", + "gas": 3915, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6467, + "op": "SWAP1", + "gas": 3912, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6468, + "op": "POP", + "gas": 3909, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6469, + "op": "DUP2", + "gas": 3907, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6470, + "op": "DUP2", + "gas": 3904, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6471, + "op": "SUB", + "gas": 3901, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6472, + "op": "PUSH0", + "gas": 3898, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6473, + "op": "DUP4", + "gas": 3896, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6474, + "op": "ADD", + "gas": 3893, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6475, + "op": "MSTORE", + "gas": 3890, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6476, + "op": "PUSH2", + "gas": 3887, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6479, + "op": "DUP2", + "gas": 3884, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6480, + "op": "DUP8", + "gas": 3881, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6481, + "op": "PUSH2", + "gas": 3878, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6484, + "op": "JUMP", + "gas": 3875, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6390, + "op": "JUMPDEST", + "gas": 3867, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6391, + "op": "PUSH0", + "gas": 3866, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6392, + "op": "PUSH2", + "gas": 3864, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6395, + "op": "DUP3", + "gas": 3861, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6396, + "op": "PUSH2", + "gas": 3858, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6399, + "op": "JUMP", + "gas": 3855, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5468, + "op": "JUMPDEST", + "gas": 3847, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5469, + "op": "PUSH0", + "gas": 3846, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5470, + "op": "DUP2", + "gas": 3844, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5471, + "op": "MLOAD", + "gas": 3841, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5472, + "op": "SWAP1", + "gas": 3838, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5473, + "op": "POP", + "gas": 3835, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5474, + "op": "SWAP2", + "gas": 3833, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5475, + "op": "SWAP1", + "gas": 3830, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5476, + "op": "POP", + "gas": 3827, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5477, + "op": "JUMP", + "gas": 3825, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6400, + "op": "JUMPDEST", + "gas": 3817, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6401, + "op": "PUSH2", + "gas": 3816, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6404, + "op": "DUP2", + "gas": 3813, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6405, + "op": "DUP6", + "gas": 3810, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6406, + "op": "PUSH2", + "gas": 3807, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6409, + "op": "JUMP", + "gas": 3804, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6374, + "op": "JUMPDEST", + "gas": 3796, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6375, + "op": "PUSH0", + "gas": 3795, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6376, + "op": "DUP3", + "gas": 3793, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6377, + "op": "DUP3", + "gas": 3790, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6378, + "op": "MSTORE", + "gas": 3787, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6379, + "op": "PUSH1", + "gas": 3784, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6381, + "op": "DUP3", + "gas": 3781, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6382, + "op": "ADD", + "gas": 3778, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6383, + "op": "SWAP1", + "gas": 3775, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6384, + "op": "POP", + "gas": 3772, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6385, + "op": "SWAP3", + "gas": 3770, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6386, + "op": "SWAP2", + "gas": 3767, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6387, + "op": "POP", + "gas": 3764, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6388, + "op": "POP", + "gas": 3762, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6389, + "op": "JUMP", + "gas": 3760, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6410, + "op": "JUMPDEST", + "gas": 3752, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6411, + "op": "SWAP4", + "gas": 3751, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6412, + "op": "POP", + "gas": 3748, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6413, + "op": "PUSH2", + "gas": 3746, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6416, + "op": "DUP2", + "gas": 3743, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6417, + "op": "DUP6", + "gas": 3740, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6418, + "op": "PUSH1", + "gas": 3737, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6420, + "op": "DUP7", + "gas": 3734, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6421, + "op": "ADD", + "gas": 3731, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6422, + "op": "PUSH2", + "gas": 3728, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6425, + "op": "JUMP", + "gas": 3725, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5108, + "op": "JUMPDEST", + "gas": 3717, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5109, + "op": "DUP3", + "gas": 3716, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5110, + "op": "DUP2", + "gas": 3713, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP4", + "gas": 3710, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "opcode 0x5e not defined", + "gas": 3707, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5113, + "op": "PUSH0", + "gas": 3701, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5114, + "op": "DUP4", + "gas": 3699, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5115, + "op": "DUP4", + "gas": 3696, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "ADD", + "gas": 3693, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "MSTORE", + "gas": 3690, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5118, + "op": "POP", + "gas": 3687, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5119, + "op": "POP", + "gas": 3685, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5120, + "op": "POP", + "gas": 3683, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "JUMP", + "gas": 3681, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6426, + "op": "JUMPDEST", + "gas": 3673, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6427, + "op": "PUSH2", + "gas": 3672, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6430, + "op": "DUP2", + "gas": 3669, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6431, + "op": "PUSH2", + "gas": 3666, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6434, + "op": "JUMP", + "gas": 3663, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4423, + "op": "JUMPDEST", + "gas": 3655, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4424, + "op": "PUSH0", + "gas": 3654, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4425, + "op": "PUSH1", + "gas": 3652, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4427, + "op": "NOT", + "gas": 3649, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4428, + "op": "PUSH1", + "gas": 3646, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4430, + "op": "DUP4", + "gas": 3643, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4431, + "op": "ADD", + "gas": 3640, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4432, + "op": "AND", + "gas": 3637, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4433, + "op": "SWAP1", + "gas": 3634, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4434, + "op": "POP", + "gas": 3631, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4435, + "op": "SWAP2", + "gas": 3629, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4436, + "op": "SWAP1", + "gas": 3626, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4437, + "op": "POP", + "gas": 3623, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4438, + "op": "JUMP", + "gas": 3621, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6435, + "op": "JUMPDEST", + "gas": 3613, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6436, + "op": "DUP5", + "gas": 3612, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6437, + "op": "ADD", + "gas": 3609, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6438, + "op": "SWAP2", + "gas": 3606, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6439, + "op": "POP", + "gas": 3603, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6440, + "op": "POP", + "gas": 3601, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6441, + "op": "SWAP3", + "gas": 3599, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6442, + "op": "SWAP2", + "gas": 3596, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6443, + "op": "POP", + "gas": 3593, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6444, + "op": "POP", + "gas": 3591, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6445, + "op": "JUMP", + "gas": 3589, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6485, + "op": "JUMPDEST", + "gas": 3581, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6486, + "op": "SWAP1", + "gas": 3580, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6487, + "op": "POP", + "gas": 3577, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6488, + "op": "PUSH2", + "gas": 3575, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6491, + "op": "PUSH1", + "gas": 3572, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6493, + "op": "DUP4", + "gas": 3569, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6494, + "op": "ADD", + "gas": 3566, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6495, + "op": "DUP7", + "gas": 3563, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6496, + "op": "PUSH2", + "gas": 3560, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6499, + "op": "JUMP", + "gas": 3557, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4813, + "op": "JUMPDEST", + "gas": 3549, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4814, + "op": "PUSH2", + "gas": 3548, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4817, + "op": "DUP2", + "gas": 3545, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4818, + "op": "PUSH2", + "gas": 3542, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4821, + "op": "JUMP", + "gas": 3539, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4802, + "op": "JUMPDEST", + "gas": 3531, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4803, + "op": "PUSH0", + "gas": 3530, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4804, + "op": "DUP2", + "gas": 3528, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4805, + "op": "ISZERO", + "gas": 3525, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4806, + "op": "ISZERO", + "gas": 3522, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4807, + "op": "SWAP1", + "gas": 3519, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4808, + "op": "POP", + "gas": 3516, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4809, + "op": "SWAP2", + "gas": 3514, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4810, + "op": "SWAP1", + "gas": 3511, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4811, + "op": "POP", + "gas": 3508, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4812, + "op": "JUMP", + "gas": 3506, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4822, + "op": "JUMPDEST", + "gas": 3498, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4823, + "op": "DUP3", + "gas": 3497, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4824, + "op": "MSTORE", + "gas": 3494, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4825, + "op": "POP", + "gas": 3491, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4826, + "op": "POP", + "gas": 3489, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4827, + "op": "JUMP", + "gas": 3487, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6500, + "op": "JUMPDEST", + "gas": 3479, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6501, + "op": "DUP2", + "gas": 3478, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6502, + "op": "DUP2", + "gas": 3475, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6503, + "op": "SUB", + "gas": 3472, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6504, + "op": "PUSH1", + "gas": 3469, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6506, + "op": "DUP4", + "gas": 3466, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6507, + "op": "ADD", + "gas": 3463, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6508, + "op": "MSTORE", + "gas": 3460, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6509, + "op": "PUSH2", + "gas": 3457, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6512, + "op": "DUP2", + "gas": 3454, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6513, + "op": "DUP6", + "gas": 3451, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6514, + "op": "PUSH2", + "gas": 3448, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6517, + "op": "JUMP", + "gas": 3445, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5122, + "op": "JUMPDEST", + "gas": 3437, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5123, + "op": "PUSH0", + "gas": 3436, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5124, + "op": "PUSH2", + "gas": 3434, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5127, + "op": "DUP3", + "gas": 3431, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5128, + "op": "PUSH2", + "gas": 3428, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5131, + "op": "JUMP", + "gas": 3425, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5082, + "op": "JUMPDEST", + "gas": 3417, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5083, + "op": "PUSH0", + "gas": 3416, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5084, + "op": "DUP2", + "gas": 3414, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5085, + "op": "MLOAD", + "gas": 3411, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5086, + "op": "SWAP1", + "gas": 3408, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5087, + "op": "POP", + "gas": 3405, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5088, + "op": "SWAP2", + "gas": 3403, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5089, + "op": "SWAP1", + "gas": 3400, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5090, + "op": "POP", + "gas": 3397, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5091, + "op": "JUMP", + "gas": 3395, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5132, + "op": "JUMPDEST", + "gas": 3387, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5133, + "op": "PUSH2", + "gas": 3386, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5136, + "op": "DUP2", + "gas": 3383, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5137, + "op": "DUP6", + "gas": 3380, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5138, + "op": "PUSH2", + "gas": 3377, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5141, + "op": "JUMP", + "gas": 3374, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5092, + "op": "JUMPDEST", + "gas": 3366, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5093, + "op": "PUSH0", + "gas": 3365, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5094, + "op": "DUP3", + "gas": 3363, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5095, + "op": "DUP3", + "gas": 3360, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5096, + "op": "MSTORE", + "gas": 3357, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5097, + "op": "PUSH1", + "gas": 3354, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5099, + "op": "DUP3", + "gas": 3351, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5100, + "op": "ADD", + "gas": 3348, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5101, + "op": "SWAP1", + "gas": 3345, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5102, + "op": "POP", + "gas": 3342, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5103, + "op": "SWAP3", + "gas": 3340, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5104, + "op": "SWAP2", + "gas": 3337, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5105, + "op": "POP", + "gas": 3334, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5106, + "op": "POP", + "gas": 3332, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5107, + "op": "JUMP", + "gas": 3330, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5142, + "op": "JUMPDEST", + "gas": 3322, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5143, + "op": "SWAP4", + "gas": 3321, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5144, + "op": "POP", + "gas": 3318, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5145, + "op": "PUSH2", + "gas": 3316, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5148, + "op": "DUP2", + "gas": 3313, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5149, + "op": "DUP6", + "gas": 3310, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5150, + "op": "PUSH1", + "gas": 3307, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5152, + "op": "DUP7", + "gas": 3304, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5153, + "op": "ADD", + "gas": 3301, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5154, + "op": "PUSH2", + "gas": 3298, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5157, + "op": "JUMP", + "gas": 3295, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5108, + "op": "JUMPDEST", + "gas": 3287, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5109, + "op": "DUP3", + "gas": 3286, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5110, + "op": "DUP2", + "gas": 3283, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5111, + "op": "DUP4", + "gas": 3280, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5112, + "op": "opcode 0x5e not defined", + "gas": 3277, + "gasCost": 6, + "depth": 1 + }, + { + "pc": 5113, + "op": "PUSH0", + "gas": 3271, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5114, + "op": "DUP4", + "gas": 3269, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5115, + "op": "DUP4", + "gas": 3266, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5116, + "op": "ADD", + "gas": 3263, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5117, + "op": "MSTORE", + "gas": 3260, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5118, + "op": "POP", + "gas": 3257, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5119, + "op": "POP", + "gas": 3255, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5120, + "op": "POP", + "gas": 3253, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5121, + "op": "JUMP", + "gas": 3251, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5158, + "op": "JUMPDEST", + "gas": 3243, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5159, + "op": "PUSH2", + "gas": 3242, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5162, + "op": "DUP2", + "gas": 3239, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5163, + "op": "PUSH2", + "gas": 3236, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5166, + "op": "JUMP", + "gas": 3233, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4423, + "op": "JUMPDEST", + "gas": 3225, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4424, + "op": "PUSH0", + "gas": 3224, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4425, + "op": "PUSH1", + "gas": 3222, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4427, + "op": "NOT", + "gas": 3219, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4428, + "op": "PUSH1", + "gas": 3216, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4430, + "op": "DUP4", + "gas": 3213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4431, + "op": "ADD", + "gas": 3210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4432, + "op": "AND", + "gas": 3207, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4433, + "op": "SWAP1", + "gas": 3204, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4434, + "op": "POP", + "gas": 3201, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4435, + "op": "SWAP2", + "gas": 3199, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4436, + "op": "SWAP1", + "gas": 3196, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4437, + "op": "POP", + "gas": 3193, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4438, + "op": "JUMP", + "gas": 3191, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5167, + "op": "JUMPDEST", + "gas": 3183, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5168, + "op": "DUP5", + "gas": 3182, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5169, + "op": "ADD", + "gas": 3179, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5170, + "op": "SWAP2", + "gas": 3176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5171, + "op": "POP", + "gas": 3173, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5172, + "op": "POP", + "gas": 3171, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5173, + "op": "SWAP3", + "gas": 3169, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5174, + "op": "SWAP2", + "gas": 3166, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5175, + "op": "POP", + "gas": 3163, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5176, + "op": "POP", + "gas": 3161, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5177, + "op": "JUMP", + "gas": 3159, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6518, + "op": "JUMPDEST", + "gas": 3151, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6519, + "op": "SWAP1", + "gas": 3150, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6520, + "op": "POP", + "gas": 3147, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6521, + "op": "PUSH2", + "gas": 3145, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6524, + "op": "PUSH1", + "gas": 3142, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6526, + "op": "DUP4", + "gas": 3139, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6527, + "op": "ADD", + "gas": 3136, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6528, + "op": "DUP5", + "gas": 3133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6529, + "op": "PUSH2", + "gas": 3130, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6532, + "op": "JUMP", + "gas": 3127, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6446, + "op": "JUMPDEST", + "gas": 3119, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6447, + "op": "PUSH2", + "gas": 3118, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6450, + "op": "DUP2", + "gas": 3115, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6451, + "op": "PUSH2", + "gas": 3112, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6454, + "op": "JUMP", + "gas": 3109, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 5210, + "op": "JUMPDEST", + "gas": 3101, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 5211, + "op": "PUSH0", + "gas": 3100, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5212, + "op": "DUP2", + "gas": 3098, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5213, + "op": "SWAP1", + "gas": 3095, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5214, + "op": "POP", + "gas": 3092, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5215, + "op": "SWAP2", + "gas": 3090, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5216, + "op": "SWAP1", + "gas": 3087, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 5217, + "op": "POP", + "gas": 3084, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 5218, + "op": "JUMP", + "gas": 3082, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6455, + "op": "JUMPDEST", + "gas": 3074, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6456, + "op": "DUP3", + "gas": 3073, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6457, + "op": "MSTORE", + "gas": 3070, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6458, + "op": "POP", + "gas": 3067, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6459, + "op": "POP", + "gas": 3065, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6460, + "op": "JUMP", + "gas": 3063, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 6533, + "op": "JUMPDEST", + "gas": 3055, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 6534, + "op": "SWAP6", + "gas": 3054, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6535, + "op": "SWAP5", + "gas": 3051, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 6536, + "op": "POP", + "gas": 3048, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6537, + "op": "POP", + "gas": 3046, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6538, + "op": "POP", + "gas": 3044, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6539, + "op": "POP", + "gas": 3042, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6540, + "op": "POP", + "gas": 3040, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 6541, + "op": "JUMP", + "gas": 3038, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 1838, + "op": "JUMPDEST", + "gas": 3030, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 1839, + "op": "PUSH1", + "gas": 3029, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1841, + "op": "MLOAD", + "gas": 3026, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1842, + "op": "DUP1", + "gas": 3023, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1843, + "op": "SWAP2", + "gas": 3020, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1844, + "op": "SUB", + "gas": 3017, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1845, + "op": "SWAP1", + "gas": 3014, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1846, + "op": "LOG1", + "gas": 3011, + "gasCost": 2798, + "depth": 1 + }, + { + "pc": 1847, + "op": "DUP2", + "gas": 213, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1848, + "op": "SWAP7", + "gas": 210, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1849, + "op": "POP", + "gas": 207, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1850, + "op": "POP", + "gas": 205, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1851, + "op": "POP", + "gas": 203, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1852, + "op": "POP", + "gas": 201, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1853, + "op": "POP", + "gas": 199, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1854, + "op": "POP", + "gas": 197, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1855, + "op": "POP", + "gas": 195, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1856, + "op": "SWAP2", + "gas": 193, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1857, + "op": "SWAP1", + "gas": 190, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 1858, + "op": "POP", + "gas": 187, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 1859, + "op": "JUMP", + "gas": 185, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 282, + "op": "JUMPDEST", + "gas": 177, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 283, + "op": "PUSH1", + "gas": 176, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 285, + "op": "MLOAD", + "gas": 173, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 286, + "op": "PUSH2", + "gas": 170, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 289, + "op": "SWAP2", + "gas": 167, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 290, + "op": "SWAP1", + "gas": 164, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 291, + "op": "PUSH2", + "gas": 161, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 294, + "op": "JUMP", + "gas": 158, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4828, + "op": "JUMPDEST", + "gas": 150, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4829, + "op": "PUSH0", + "gas": 149, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4830, + "op": "PUSH1", + "gas": 147, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4832, + "op": "DUP3", + "gas": 144, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4833, + "op": "ADD", + "gas": 141, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4834, + "op": "SWAP1", + "gas": 138, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4835, + "op": "POP", + "gas": 135, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4836, + "op": "PUSH2", + "gas": 133, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4839, + "op": "PUSH0", + "gas": 130, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4840, + "op": "DUP4", + "gas": 128, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4841, + "op": "ADD", + "gas": 125, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4842, + "op": "DUP5", + "gas": 122, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4843, + "op": "PUSH2", + "gas": 119, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4846, + "op": "JUMP", + "gas": 116, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4813, + "op": "JUMPDEST", + "gas": 108, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4814, + "op": "PUSH2", + "gas": 107, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4817, + "op": "DUP2", + "gas": 104, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4818, + "op": "PUSH2", + "gas": 101, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4821, + "op": "JUMP", + "gas": 98, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4802, + "op": "JUMPDEST", + "gas": 90, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4803, + "op": "PUSH0", + "gas": 89, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4804, + "op": "DUP2", + "gas": 87, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4805, + "op": "ISZERO", + "gas": 84, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4806, + "op": "ISZERO", + "gas": 81, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4807, + "op": "SWAP1", + "gas": 78, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4808, + "op": "POP", + "gas": 75, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4809, + "op": "SWAP2", + "gas": 73, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4810, + "op": "SWAP1", + "gas": 70, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4811, + "op": "POP", + "gas": 67, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4812, + "op": "JUMP", + "gas": 65, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4822, + "op": "JUMPDEST", + "gas": 57, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4823, + "op": "DUP3", + "gas": 56, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4824, + "op": "MSTORE", + "gas": 53, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4825, + "op": "POP", + "gas": 50, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4826, + "op": "POP", + "gas": 48, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4827, + "op": "JUMP", + "gas": 46, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 4847, + "op": "JUMPDEST", + "gas": 38, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 4848, + "op": "SWAP3", + "gas": 37, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4849, + "op": "SWAP2", + "gas": 34, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 4850, + "op": "POP", + "gas": 31, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4851, + "op": "POP", + "gas": 29, + "gasCost": 2, + "depth": 1 + }, + { + "pc": 4852, + "op": "JUMP", + "gas": 27, + "gasCost": 8, + "depth": 1 + }, + { + "pc": 295, + "op": "JUMPDEST", + "gas": 19, + "gasCost": 1, + "depth": 1 + }, + { + "pc": 296, + "op": "PUSH1", + "gas": 18, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 298, + "op": "MLOAD", + "gas": 15, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 299, + "op": "DUP1", + "gas": 12, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 300, + "op": "SWAP2", + "gas": 9, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 301, + "op": "SUB", + "gas": 6, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 302, + "op": "SWAP1", + "gas": 3, + "gasCost": 3, + "depth": 1 + }, + { + "pc": 303, + "op": "RETURN", + "gas": 0, + "gasCost": 0, + "depth": 1 + } + ], + "callTrace": { + "from": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "gas": "0x48953", + "gasUsed": "0x48953", + "to": "0x34118801d76b7082ab065e23496c692d002eaf24", + "input": "0x447a4c620000000000000000000000000000000000000000000000000000000000000005", + "output": "0x0000000000000000000000000000000000000000000000000000000000000001", + "calls": [ + { + "from": "0x34118801d76b7082ab065e23496c692d002eaf24", + "gas": "0x40285", + "gasUsed": "0x347d8", + "to": "0x0000000000000000000000000000000000000008", + "input": "0x00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa", + "output": "0x0000000000000000000000000000000000000000000000000000000000000000", + "type": "STATICCALL" + } + ], + "value": "0x0", + "type": "CALL" + } + } + ], + "withdraw_trie_root": "0xf15fe55ccda900eb1a64fa9abee8054e44b6915dae17e21aef095f4cd49d2a67", + "sequencer_set_verify_hash": "0x72fce9da9f9cca9ae7f43acbcc6060e82ef37152a13cee828b492343ec19eebc", + "startL1QueueIndex": 1321206 + } + ] +] \ No newline at end of file diff --git a/prover/tests/algebra/client/elf/riscv32im-succinct-zkvm-elf b/prover/tests/algebra/client/elf/riscv32im-succinct-zkvm-elf index 94f2f57db082980f09854f5d1008302344e76540..84053a890785c8639539d935d8bde34428af8eb3 100755 GIT binary patch literal 106780 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 literal 117204 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

    DP0o#vi) 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�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

    JD=wvS!zv4+YziO6YI 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 z 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 diff --git a/prover/tests/keccak256/client/elf/riscv32im-succinct-zkvm-elf b/prover/tests/keccak256/client/elf/riscv32im-succinct-zkvm-elf index b8b0eba9a347a697aed1a7ffac663f60939832de..66714c8e614dc6a830884d729315668cf642cfe3 100755 GIT binary patch literal 113776 zcmeEv33ycHx&L?8S+c@`1QB&)lCX#nn1lgr?L;yGEOif9>lMPu1X3}fSy;LbOeSF~ z#U4Owy%x=a*w$(Xh_<%Inh7rbtGzW~dtInuv8~rqH6cRC{D1Fv&LoonF1Nk+|2+Sv zd7hIqbI!NC-@Cu>x6F6^3yTCnVDUeZeZc73zDr#!5BDd2VZO^_E@opBSrT(F70>Bi z9!k=61fS`Wt!uC~`XsPXxY0%LSvozzpPeojzqW@Nqf4RZ*8A<>#j}5R@oP#hV{|3f zZ~GNvZEv{vMb%!%MQ~C58;{kL(#PR{{5>8@jIH{&Uk|>$93SbT_Bm{Wum1JvUl{lo z2L6SCe_`NX82JAZ1DYV5b?1x_-C65J_xQU-x9f7rJ$1U^o>CyVC*LTzCzc5AoUaLZ zFBo+y(;O-@HYrS#aXEd=+w5Y7Gx~;>l+KK#Tv1DQu}bC>LfHi@6b&=|-dcygO;$BU zU`E)%G}Xb3dYRqhV(diFcVEaaF#Q3)Afdd@6jeXczLApW^LRUP)q$%qe z@FXn{GS-UmYW2}S8DWfJ6^(&;364+^a1&OT9#mzNjRB_^YX);?J;Uo5;m&Sv3+md6 zj%%uq8R~j=&r+)2W&;e=z7TKU2=DBnGMPGK%US48QcD#0QJAq>74-Yi&uUfF$Eqwd zMDL~bnK$$Mar6G{-_TaSd+G=lngALBCL=tLxu-mC!J)kG&U%~~%6h>)9(Qqj{P_n2 zpP}yJcg?Q;oqx9%eW`#DMKtCeEOyifbi*T<8ZPA|s80!HahhIv+ zApF&QeBU(T4!viMqnE~-IhT)V1l2uf+`OK&&MN;`tNw>nFNDjhvS1_{1^$CfKNEp=bBro$rM8PY zfe*A92EC6S2hM`b*p(B<;~yg711!{x`a$4dElS{lXqU+Y9dBzY$w^!4u=jtl-v1fz z1-wrl`rd!Sd`~=-OYfb;k4Cum9r_;UBMa}pHs6hYPg9o;dpGx~q3tTi%y!kIX1hMc ztb6RQn!0;f-Ov-}yYPPzUkvT@*#m?89zJQdS^qcmpUCg8#p@6qfZsEa6&du!GIQlS78M;LdWfjQKEu__{~tk zcX1iixE!TfxaPbJTtole4SBv?&^AF<>wqWVY7n2M{8}_f0xm_pG)vHA=x+zgLicGZ z^dHA*+fAC{;Cz6wGK`gBtONQi)5B%liLrkGIwzy=Wb~bkzEfall3-_&U}utGXOdcp zt}Wp|xgS-IxPPJ?AsuJJq}a?cx4pq>8V*DMhA~F;qcWQbhwoY`8~QuD0DQ1sloqU4 zwMDgpv1=#uoakUi=1!)Knaw=!*aU6#Xx3_nJ=$nL>8Twp7>65#NO?E&)Q-WsFv>nD zc>c1789PTaPdDBlsuv<(?Zo>`{$9(d7d&^iFi$v30RHWodQx(;{Y+1Oo@qrNNt!a6 z=wji=H$755N6`G6z-OzNr~E5|{+DKM4>c9^BRgX9`h1MX2Azd+@w&k)wa!gKqwPVb z*69%3{Jx1bst-Ed>hvV781EFkE5{WNfQcykFXFq*2yBrqD))Vz<9Yu4Q9F3 zz!%DeCah;#Ch%Eyn0bx^?}r-DMhnvj$H$K|ʩo=Fp*Va7eEd*TG6vfAQ}%(Dh< zEZ!)1mY-sgH4oE!7Mdss+L(<(WO*;>c!C*+H?jz|@fx0;unC^the6kkEHu7AFz!X& zckH~Z_Sy#KS&KGa+aP#Wj1eNe4>7!Fk{f=^_csWUcSiEE#;qY1K^w+RAw0X4MXDMZ z-m{P!_D#dHWj8Y_Yy1bwz5fu?evfBwF9TmRGR`YTNbnqMWFEa3wv@r&U<~HT`b_ev zCVVGdo%lT$?`;Y1eR!Yv{RX_ZC%lIq4JUqIh4+&6emC!%c*pFYzEl5+-_ie&@6>6i4BK|*rtd3zoDp@mPdhae^^Y-+dfcb2?uZ%P z-DzGM_{5f(9tj^4-MbGkPeTWDPi^hjm-X1)4;^6cCR~$S`_UGBTRbo8QQa+g_AstT zaQy_=_||@R7OotWJ5|Jt6W~v^$EVqu=$?o=D^)2{-vhW$3e?9yyTjXg^Z@jd+HcgW zV%N%peO&jR$|s%JZ!|zR+u>t4ZBunwEizWGMtgXs^u*vhrjjkww;pgBqKoO97uhu_ zm+2eJR6~L-s$VS|_8XX9mmz7XOPRjCW1aM}jTsG@%!qm6=bnIl=!pRjOy8E4Aw{is zJ@gJT6Mq*}GeYrq@6)^1!FL@|GmTew>zbS85nO4Gthry z@EF>8FQzqQ12?I5sRPd&W-^WXUk@GC0Gz9D#&mm{8hRPe8~k`*gg#HjH1(yJzEzZ^ zDCpdDxpx^emn?lrar>XxvbXcLBV6G^R623_VwdcdMB}xDAaK zv z_@OGtAD8=jRn}}a`G5O4?-PCNa%RdoeQyIyX>piR0c#r96WTTv{B5)I@(Mk-blEmF z8Rf094Jn_F^6BR(KMLhXnf(qaKL+K;oTvOalpl9ad7I4znRRugXLd&#K$GwENF?ie z)hP*nhGvNP7Y47!b#Q}CgbyJav6x^;Cz;;+ffRaZ9(;e;x8{Q^)MA5-1<#-FWswzO7C9P)zO4i< zrwQ(+%LI4Jk1!^$V1&Jbo_s9DJrVheoC4%1kgphDBDh^&6Qm!HW}!!lne@m`7TVj% zLJyA?q&>w#XwObT`vdjgDHs=TVa6?61nt$$g7(ABOuJ*VV2s86zD|Cm26~ zzwy^n!61L5^cMJi*P%=U(;mRJxPkkQ+I@hx)PsJr1y9$l@Ffod_IZG%7BKBZyb(Yi zB@CPgfct#GJvAG)SrLt}B6f{C)*YIJSc`YHImiWMfYwrSB3;jikI;)YCcOySy)c1EFL+t#`FWuE zVisy&&ZPD=;G=t3=;b|3dbyQ_UOLF6mku-O*%P4kDexJ1lC2RM*>b@xEEXDtd4gN? z3XS3f!7bgx8YR4!*TDB&%-qT;_@pNUw|ZD;R1d;uUCtV9txU>#MhGE?Buy$1&O2Vn z1$2m@Lx;rqI`r}cz~cox^8gQc@7d)n)Uk$O0l%Ry0euPROGIBH`jXI>bePMKW@`Xm z?9k!h>*q2#&xU^Ewd!VK9IdQTSj=Tgv(1A%A%_t~*_UCPY!jFpc8Tl+$x|0oe@n7N za^z;G24qRUa;-EQtK;EzV#zxg9f?DEhn#ey?|jHfE#zcB$qD-JCOHuxCk%4JASVLkgh5UO$cX?sK}^HtM6l$9 zCCCZjY!DzP@Y^9T_tgvkb8^ztpU7j8hPMSz!`}pty4nX?{8l5KR-GC%wz)x*382Yg zfpl3!gdPit&|`B!mkFjGdjQvB*rUU^->3f5X`_7)I_$FRArr^@ zD^D&tPJV9X$?M-sq*LX|%Oa*7hAb&o>{D;!J`BpfZ`f_9vt%>fjWo*fUe<8W-;czM z_0R0cTu=Fecj5L^qcWac(gm~L9~@l`6K9Yij|RD zo`}zr1v3w>D3>6Y6VH);i~N1c!@7|_c29=Qop?Fy6l_&i0c@{|7|~_=LC8VsW1{IC z_MGUSLOJ0-QS1yGpROt4KS>J|#O+M>sM!U2O}l8031yUQvLodSt9cH;R_-%uK9saYrOZ>;3?D`1Fc~Uf-BT}y_H>9^7&g&xidk6y+A$*Hba2Tc!o)^k8wZ7 zq=|o|nM3zIh1ffd{9g?|2hk0FH2+SYTPYW^VP|?gR;6cN70<-7bgE;Pfxok%ct{!a z#q(txrm4yiip|_p_8%ddv>tPO6?xY(ch-K^x_|jEjd1Zh?i_sXuK1i0&i1+|(&y`& zjd1hL?#cLEoO+`X?w)}9thHA8p%IR5bWg?SW1-88@c#SUuKi+b=aH`<_y0Th`2CIARy8?Q-;)h2Z;>nHWfhg@`Ayji{?7eS9omOX1o^xQ zY`&QfL_2(L1NZaF1LgG0HrP?#wvx}Zby^vst~Erj1ilfsK5ogduYWiWq%1#j zoTgqOcr>LAddnAw=V4t|MCg(r=!tv+e7`KrD`0--99*D|fx7qPQtmdGkA99qSB!l=Ugd_u*ME#lp=;^bB!}Xb`@@ z=jdk!V7VBuTnxFo7;<$n`W;93&{f1-g76+-NCyn*fFT_)jDWrx;m#@;!C@h~I~eBw zKp*FN8SSG##%0Fhv$wS{^aY+vMcuJb5qzq7$6}#*oiXH08RZkTOxPPM@8>Byh`1;U zp7UdTe)vuPvzp@~e1;C?@UnySIYIwKjZF@@Yt*J*jAI1GF#_WlfpLt0en^LYNY?~m zB#j66fm}E7m!`HQgSK(Gc}-J-c6UxwGS}y0nv&5TrxEIXEUy9=;4j1(t`g{QjL$zh zh0lqCPDJ}gyNouW&p7;TPe_y7@tuJW0e)f9C9#O zf3G>+a5$j5nZv+BB`qnKY<~AajtAO{L^drbh_`9fJDL8@0!9DoA5!&-A16nYAN%wp z{t*%74?g`Je^SKxN6e2p`y%zPGLO;(-F}N8b*P|;!aPO5Jp=CRGl1{W$R!+rjmG?G z>6g<8UXSC;1(CX2IBbzH;CwGXNw1i#=yeV;g0?*Mc|xc|X3{~0MT!nX<~x~D2Y(he zv};FuzbCvGW9E20M+Qlchb9*w)&ai`l}9g^!}{=S;6yZaJ4-d6DfxsabFQOpiI?P6 z4PRyEKEU664#and`CQ4<6sPs9O&@p$-ZaYvms$1a(3~)r53@e$ypxcDRLDRoWFQqX zkOmn@1Kra=_q4c7!k6cKnjmk#k^Fb35D!S%LJH;~Qaqc0w{K=SIDOx39?NCNAyYnn z1eM|We~hUy`I%(>-R3d6bN{%IpJaAD{E`;%7GnGyv@>r%^eysbDC=g&nSQ)ELznlD zH6R=0!-V|M+fl_%c~xytcJ4;3mBM*%qL2(Y1Ot7OEAVy&&-!*NL^=X|%3DU(td(@HyqE=@VSgE@M7zuOD-A(CN@` z(q8nb!saUuM(Zs?%?pr|!1EU5OYrQTBjkg&L3Z2FzK`<}U^qwqF&5E;QS##R1$+Vl z{tvU0KcM$TMQLvx@<%e$$L;0q(i#+V4N2SW8bDQJxDES5YvTVg1M?UzzuAj>w$7%4J zo=uaG`-1Nd9=Z@tIgKH^@pU#PeuAH;KA_uAUkKN3*fdQRFmI}`(4;V5A4BkvUDKCE ziJc+(K*C*hUp>VN01F~nrb{WBT3iHEuch-74=7;TW*X0h(58K>R3T%MQ zL9j{wPVk=sUL)LN-rL3Jy{{!%AUm#??YDS>^*1Ip^%C5n<~kN?f}NU#xMs?}Uf9xJ z@+VF(@Jx1LZzx;t_2z7O5^Hr@J$}SWMJG|Zc-@wDvoJp-$Ln&LSHjnk z-0115EakMH3gy(D@-CiLi#*oPJw?Zvx4|Q7wtE^Q9mn~+sy+^K7)I_DYg=foN+i4w zV^vt|QTWMw>)vutZR&Nq_MO(5!zE>tPc|C!{ZBG|zCz#O!(^SodMo&bz}wjU7~>}B zlm*}~#Lf3}8zFl4yHGC-9}GHUD{x#7S=>hN+Q6S!Lo?;<`$z66?WZ-h<|Fsi_S0z3*@|~q=kvM&J?54> zU)RFX*P&-J$R`XA*<(ZAZ&whXlk5Nv7uFcu3z)#a7Vo!07uaD3?V+p!JM5qx zcF+ddvq7F5raq{9%Uoa3c0KV$A}@5^uDn^D&f2(L;3i*{kTVwnsbjEuoZz|=W zX`g#y;aTDZ(6i4yMecJ?#kiYk+~IP5w}n?43UH{lW8EHX9d9!@60n?xPbI^rlHpUy z@TnB|R0{Nt0-s8OFRehv)mG3(I;j4MVmh~Y6g&i4Y;3_g5L=dke2E5~FEwMW3G5Ep z9QXL9K2C2%c@4g1pF3w?Un}U3cp^ZwbWd&voG3#uD&e^(e_Bfd{8^=E+>>RrUx+$Q zrwwN=ax=G_(UkTxnp$|;P+;GJ&>8;rGty+aPygzVQ+0cBn$-L}o`Du5GcPoc)W^Wz zPm?j$56@EDoCg%;3xMUc*{9z}Fw!`PU+CVL*3@V4^7~G=f@d%Xfb#eZ7y&oR18y1% z`Zd54G$zOq+TgI^*&uA8EGh%p z6JOzLhv3Tr+Cp~S6Nx5;&@qs+0elsn4rSGy?&{n7F7m=O$-yG^Uig#i3>xa&POl6_p@p$KY75$rXfjH)iq}QOA&ziXi-y>4C zd=~cZtdvuDmde3ynz95wbT?t$>_g~#cN1h0wiPy3YLPKsyvstl@$G%?-H0EEwhuKS z?C^0lE`)At?~`)sP#5zLIfbYnjnj6a+to?Fjs$*?zz-7eB6FPvo+o~@ z^yTHGA8E~}eqWTyPrv>)~d@4}dC1)Z7+ zS0?S;F3@Kx^a__x<%>jzVfea-^f7Ea@KtvfV*t*G4rqV!tDprwHvwM{y$YPcMklN{ z2CS0B#|vp(;2plcRL?l1;@yB>j4{AI6D>_TOA|1j$$)R71$&&v6BN({Wtzjte+|Nq zJW;=uXWEMX1>kdF?JnmH)E~(Gd3auMEczdaH-Jaj$IHn_L@riA{>z_0(;#T!WB0s5 zzQ1oR{4?0aY{44Wmna8@J_qt&kZFqf%^VA-W6+|bPf6^P`r`5e-i^Z+Z-?re>k6MG zS@{Tlqw3CDuL4dLaN6KED)1W>tSeO96S-}%k?kPbnZAJkh!oMi&b+gYPO__YeOA1DJ$&17q`zRhPMh`(_G~I_ zmjd6(1-T_(Lka(xYzx;@igF{hNim5#C+jTnHQGC4+6@=C*QQ@0!@i*((=I=XHLYht zS%vUdU_*{JJ9RNTiTr^Oe8D)ZG$-IuqOkEjm@~neC)hUVHnN@Pfv@f~htE&&!6pyD z7hd$=fUjv7e5`9^_Nh;8-#9D>*MR)TZ-T_4${y74Jj@*c?`TkKHJ3o@3=R>hHi!r2pGs7nZBV&VaP z_lAis{w%a@&1or1$d}U;@Cf`Q_jnn02zmoLpX+ZI*`;>am>R5?DvaBwEnL_6+bw=& zXRQ7Q^aaUoYw@gFtkL~BpA!jtu-0K`BcCf7UHLHfLZo1h1A2blEcib%$y1_ia~+?c zf2chx&d`yo2M!^l*k6!XC(})OD|GcaIs~@if_akPQ=a76sfq1aeGlkf*k91%a)IXU z0LLfiB+_}F{pSC#a}uVm|HK>sXu;=NINyiC|CCeY`0?faQ*#m~JYW5XauOV_w#mbC z5<_^Je5gcTF>TP?*N5{Q*>SR~S_A9>c$MbVG!<)05_5E>oqh8ksCyCWp0jrXwod|| zn)79T<#pH}the6>IWFXKJ)i?1+ot}BR+66PI>3rMAoK8{EFECQ9*FCZk1Fi5V##YM zHVS1~@yF3-B&&D8s*yL)M-L`0wPm@qG`UO?Ugc&(+=RL&T?uCCUD@pCLVU zp7DI`lg2~iHWYsiaMEYZ8*CsQ5B>fIA#_4!gxaDBYrYJKaTzf>=4B+(47)=C-I~#6#=*K!Sxq9()E$*81j?I z&T&3e{k5RSSwnTj{rVb{PMsg}_qH&9uc`3;RpeoENzb-L2>RY!~yJsDs?V z2pYFO_K=hN*5FS~?OqF?t=~{@h~opcua3_d7z)NoWo+TqREEZC;bVL&p2P00<@VB6 zw2s48ABU^WWtL+_@N=A)yJT)>9RH)c&Hm69_Yc_`-iK=TVSqN)m=;=nEk~X}B^nyG zFnr>;KJkCuo%JAaEF;#W`wfg>F~p*8@VmOmq>;UTHUDmJ`G%%0#aQ6;xKKU}9>E$8 z%SXKpyg3m6A$E|UPekyT6$jFs3TVi6H=944_bFH7JwUjuzfT*TZO*CXU=JUj8TB1a zo^T8Jn&?4&p3k3nb^+SFpf5o4ZbUEe6Vpp+%?5N}u$knS$5${z8yncoDS<-D^dpGPq_7mo+p9-(|N{K`JvneULY+xtS< z@EgZt9v69I@TfrVLRsy7ZZ=!ckM2#>`4^ZE&eT4meqzi)Jp`gV>!AX>Rq*xI$YbQV6 z%v;bJsJJd*n=!|0C;h?Wz~d;>QvW9Tv(lc9Hw_zjOTnD_0mMxz)<2zy0`J{S7i}u` zpuFjB>3Ea!oY;5rru&hOH$#*=LGHtioRPjml_{@6Isvp6VMmATOU76vuAc!**LFv* zhC7cZOrL6m8CNjb#8vp0pNy;M(}TETl&2lwb@Fx1c9ag1ZH>k|z6m)8=o|1m;tJ$V z;y4d?ki45X52m15(or z{ne)oK6#gg zlL0^Ie13_k+tueT7!ztdm-TPM`O&fo&wqTqXTSV${P{ns``dUf&7Y_XFR1&Ur5HAJ z&4plfTXVaiEbwK*T=RM7b~#_R?fi%0C`NkMw|uNgKhNxM4aPP=XQKOX zT2uZJ`Uq=5DZh#J*3d43X(!d^StmBF6T@Fk9eWr=uDT(kW!V^Lsp3kcQu7v(4eYXCCs0$e| z_5S(#Cp$I-fAMkPxsdq*&tuHzetrwa*y2a789q%u_Lw0D<>~2!?!@?LUD+_5OM0Gs zAk1CBH$^?n8^BM%9!#=t$0#p~{bs7j+inJq375N@v0j-z%Q4gD1mCk@AMkt7j~V+9 zgS)l(uR7MgVtq04KY_b-D@D$Pyn59CRbpX@%9^fCMS{5|mn<7`GBHXAJboFc!i|n?%08q3rDDd{&%|6(6%?VrsUmPyezHLFhA^iSv zF*W3G$b89gUxMb2^@Z4L2){1WTtxCJhnnk&H)N>=`5EAxVtS$%KbywXA^$~r0P?Y* zTV#?Q;!WDm1-xS38t;I2x652Zr3YnoAjYKj2tR~JlP1UGZFSwRoOX}T7R+{nXwz)x zeE1{W#oMR0x-NC}U@t@;o}c5>l0WOIhpbi{;A^HRSEXGvn(3=^Y```4CT80V|3@*S zvs*x{3!k+ReYeAhgAIp#kUxi50P%MrY&ziPdc5r~66OJsLxK;3oDj|D?amSa>k!`* z@R)unoehM(y55cUYK|a__t!O6=_MbYc+G6rcNeusv9a}i<%PyXaz|sK^(&y8osX#p zWBG57Dfq@`8WVWN98>m3A3r9xbm*Aa5{zjG50h@fyv-5dZ@}ISw{>LaG}`OZpi;bs zx#9MHOJ;s&K;MEs*x!x(K`zfTFCX3q<$L&C=!U4Nv!U0CPZRqzZQ9(Y6Q5adoL9GU z8{voSWT7qSf`59f%VorO;4}C;k>TSe-a5~CK5IPudmayS9n|*Z|I>Jw<78<3Z|Rc8 zgn0OmpB&@)|C7gfoL|~Jz}p3BEVYD%&;ro8$&b86M?4pXHCyTCd?41$nd|SkJrVVK zTGzzwhd}xrd8s$xM=7NHXnkGRIEBu@Ima#lhV%Lcmd-h69+>za@m<$>=sQHdB+HK> zU4EXj1LG!sCVN8b0u0E8?mWcw4D4OsL3*CYOM?D@x$a780X~}jSho>{&Tj9Qa)6_v zgMu{gFy@5zSvd#gDEOw|TKAHPcCo&oslV06g1mf3RFDpKqW*_g`RK8P@}q!{^XhY& zE9PsSS^y{XAjQ~ZBWaFN$}YtE4#eLdw{~%)LV6qJ>iRFZcJWv<=mwb{hxXBSd>tY3 zA1dudkaC`3$PSo(7Nb1#5ZZ%Ag2_L@zn(8IPy2Fto)5fn&trU@^6ErcAf6x|Mvm#7 zPtJEJekbvxbG^FXES;1`mA86KIm@+^Ybl$ z%?Ey6%{*$G&(qU^&#>!dhp->x0Mp-&ilq0kZ@{OoJisCf&P^fTU)}ACbPufa9)dG# zy#K}Jt3LWJ-I3#e-%uU{ooZs{_}HU>ePC@a#^<2Cs)l&Wura_^hkXgV$tMzx`qheN z!}%kl!&o;R6&lkH;XDF5>%#^aL;2O+tgHV(AI?~ikh?f*AXniDcVn+gvx$2(ia8(T zbXB5*-O6>ajlc_E;|MtTnnn(1ee^@BZ{~^HXx{hJ!iX~+{)sS}e$ux-8OC7VIWU5s z&&4D5YsK+c?8kb+^WgC00Xka-IDG4qacII<{VCv^{2Aagarn=Jul!TM=K_2KI{X|T zUtPu5uj@w-h}zCo8C(vRK`VQ>1L+o-7+F5*1@H8C9{x0~B_bAxceNc!r^zd^) z8pZa0%E!5-qy3H2hgL4ML!kQFJz?wvH|rvw2^(+#`-G0g+@jo1ZHJ05cO6xjdxYFi zInhQLIReUeDzDfK$8M~{-q){xbN1zilGX32&xX!wQ{3zj#?wrC;UaG>$MG?~uBlc{ zr!`{UZ2qhkvFBKNk9YhI`uIVgi?oa$rWb++z(3K!lyl!P(j%ago%WczAIicRh(5&i zh}()UVv)d;IL9p8JfG~4-@1pbyMnXJqSz+|nj9KR6QlcB4Evr3Y0`soooJ^!YT|<0 z3J=nRp2ul|=c1Oe>HIXwgzZeENhbE{52K0EnLv{atPulkIZZOL2Ft3e)qZ61#-^b( zAw4{lCKSWPY0}iMSIu^4L=!c8kS1golpAb~Y5PIH$85A;hUliLySe>0ZDX+5jeX*c z;XJ}`oL1R1H{sqPGq-{3`?SWBx!gOO$X;L2$Ky6eRYsGIAUavHv=g#C#1=_dmr3gu z4YJb|i`NhJ;mrNYA<8G5cg+LV`$<^uCt1mFvek#ew(y68ptkXzt$Ziz|R zFJdmaz0d8W^`S@m5Z8+OeUQP?`JnS&l=1U@76yE4)QxdCu@+EIUrqZ*B{LqTe(Bvl zz79`MU5))4UySML^^&$Tp`Ci*6S)h>8QP`KsE0M&1AV~{ruN*}i-C2?eaOL|p|uVA zC?#2QZf3@2XFtX&c0J%ciN0;2N09H_>Qtpi>VO~c0LM>0@PiBZF*Yr*a5M)w2I$K~ zyfi;Qh?h}{N_dliE8ZtVpU5*9n>L}(%`xh`YrC_L^0)d|aTYL+=coOX{QK8;i^u~b zzk%}{9obkX8pk`+(YXKh=+&PcaIx*R(!x~Zt^e|sfim`3Lc&~^G z+BYv|tahm^&%#NJx7VD+bEcsw;K8candQSuKB`Y|Ci76WVQmiqDZ5YRl zt+-wv$K}chgOa*eV2&hT84fS)>+TYje$W0L0({O7Keo+X z%KIA08m%38_*d8${!{Yx|8CSJGtd6}ss2gO@4S8-=>~By4WLz zS{#B#F$8P_je*B=#K*)}<5W?%J4C7Rd3+z>t8;7;_{z*jgLg>A$gcnmE?kcAe4f}G zYwRHN1(12117Mwx4w;uiIbfOzVHP=Y9Pk51g1yc*3UmL-v}WI<{($$Zr`lx1PN_Io zGR?5lp8qz%*f0ii{e*coP59?NW1|RK*hIbVIeTb>oprq;_8afNpQgX_KGXjqqWpY1 z3+Jq{VIs`~_Zb^z(f2+>gwEak8(FGHefVzB4QSsdX{&qEH1vrx21WhkPUw~=nWO?n z+sQNfwFkM4(8rRU2nt>I?c_ONo$}#z;3edB^`MHqWqyKR&`O;2a3(4&V}VN|DV^`t)lLtC&-=b6o-bM7oP;%l$ayAgncpwI-iBS=W(#iRlHEjptS{t`3Pv~V-44q6nYawKU>_3C zJ9dsFy$=}@J^7E}&dyUNiZbb3F9A=V+MWT2@+alp&!H3P#PiU~$iE2j5a?Bh^;)|f ztg-IN^XfMA8PC0*lXHygHPU62ZwyVaaIuH@W6+m55ya>GvEYv#{caKKfUpm=QN)}v z)(!KyOXvejhMx~%o<}Mw?1#UAxk%uAjH-sRWR%6{?ai{}zonn(Aw}B-trj%M01Ysw z4?hp*o5g96t;O*hw_Ti8=akDIC`Yp8$%oH7ESDIUE8syo-`oqWQ6)LhMO8G{QWo>y zVuBaM-3a{V#tN4Tm3lY{BC@J8^~{ z{5UF8+bwwl`*99u3+Z6N*crfQTGPPrIf~B*&@c3sg7xU(B*Xx9*4`N38`wic{-GUb ztE5Z*eUSC0K992Bhc?p;;=$DYsn9KFBI;9ueq@o`*b2RrU3exEE*A7{i0e*YD@fo6 zz3a8< zZyKnh!A5q~D{oRAPyTLv&xcR()*F%fdYl;te|1vf8R-i7jQ*EJDSDj~i!|)={mjW1D>a_ zh1248pL`Q5x4ehO4m|W)Wm1Xee0|42nP4;891l88k{}5+d7|LK(^izvvYab1J>$EooBV4qo+TDgT!vk!v% z&M41)knphFkBP5&z}KhF{lM2jd=7m&mB-_VdqIayq@PSZ*{a0)jm_PEYaQ)$YFnCj z!|pSRB`H>>J>l?2VBcsD%ttY6Z8vi@mntK>zMuCI+eU$}&3h|R}S7m7r&M9ejA#UpAz6Hq{ zxAEY6^1Dg5klwdo`}p`YZ1S0#?PXFUVq~<1@m#o$854YJzl3~|&^$lv3G53leTVH* z?hDpIMkirREze^vyqMANC1}Vk>DzH8`b^CE;k+1*cL^n$;sUC*%{kSz`<8S$Lo`#CSfK+cwCDK0SIwH<)pnoM)$l*{CLlWg}m#R(ZT zbHW3@Y%`B1NcN#K9A!c+Bh%$Q`%X`1GlXNi{vk+ z^F8>SFSk*kE&a9v`P<}^5BIy{>uGtc(+r-9$7B5Ln=p@U2geeR$J*e#4u3ZohZ&|E z@K`uxt@Vw=09Zef|2f|mL3SsDAF=lUzq>X{g8YVZo)cr66g|!+|xM&)Q1W`mdc_I_1~DXgP*H} zHDTcKeK@}cJdSgmLVo1ECP2STSiq!-;PHvzaXME7yz5TghuHim^7XUNJ^*vaRhO<7K;3Kz#Z%rP6PYR!+@GNZB*+IM~@~yeY#8A3NN;&43B+j=P zmi{8&1o8^{Ni8pM9GHHU**;&(g0bS9U+^2nk??UofzRUnh5LE+E$9Uw2fPQGA=Wf$ zMtp}pVBZ{(yf*SPaYhn+48-dCuBaUH@1(pu?$4X?|NRvIZ^C@S0_dipu_w{MjJxAH z8e;^$c#id)I%XV7J{#@z<2qd?oHzgv_Iq4FM`LX9*nEgDY3)}?zud)OJ|B)3QVblI+YHsVazP7yh7%q`KG`1pM+ z4eLJi7a$up8_k{i^g}$3k#)OG!S87mNFA8VXqbTCPwBDI??%yi*Ss8H()_UR_uFt5 z14EmGc3P{2Kb4r@fJg z%E-jJ)?DT>qj+>e{qR_`zUngT7fsRBHq`eeYj)ST^VG)~)O|4{tVBI3*3ut?t*lo% z3HGk99{SMR(}yz~7QIO4n;XbabS=d*^(>y{++jX*-O*Kc=zVVne>RpsTZDaUw)8J` z{pI*coK-i$P*1Y1(nBY`GpWq+(Pq6P)c$+g>SM9i4iSAGU*9Ftccs6zg}$p5UCu-A zdKXchvaM#FrPTkst;*jp#{gKBvjq2Lk^KGeSAX=E;dG$fzDd{oDq4$V=8}RxMY(}o zBjjCnTl2QGW)q+Ly=!h!W{;n3#Lv6H z8aD-N!+5UH_uxO+*Sb&NSMa`ntgrAlKYd?q#`$nB?Ay-_^o=0PVF{b1>$qf15?r z!;okE4krA0qebmAI>1{fA89y@@(21`6|8BgADxak46@Um<_YhCuJDmhBt^u0{oVN^ldzo1W&jTxfKa>k@jS*fp`z{ZD+~aM)+Pw zGq8@DB^x6rGDCt)9Pc@8^on1I*fRzECJ>XRVou_0m-sA7Im-}PdlJDSmJ1SVD;w?d%_AHC^zr;MLZweef ztDbQO)p^sbBLQZ>-j$(!g!TJ;evJ0hM3i&!Lop5ECsE$XUn2Z!YoANg#!O@${7#DY zgqrNJvw}#EDi}R8ktfT6{YTCmzhz<|4l`a`%d}fp;P(#k8xU)s18zWHTQ7e1RPFQh zwDRBMh;+A-&SlyzMIc!CZ&rkx&(X2qnSne7d&S=to;DvP8l zQY7`w0_{im{fZ^i1W(#!lCk76d`=Uz@BHmMk?$=LBis55JZW7*==#f;@xY~m@n)(Z zU7vo3oKq}g&+{o8wFEmOhT znh8Q{CSYr5o#(Ng61Byd0{Bmj;4^sIhu?_A8b*{;kH=bDq1PKubQ6z;=8ZPvd;6%f z9{Y3ny^vnaF+U9XAl&a}`nQjvfBFqJytg559#ACu?KRjkiGFvI+Vi44&4%`rJ&1$N z_6(GdG#q4&!4u3K+=KUKeZ#g&#B(3{EaXd23~lX^>;aGP`7hAt{JCtu0$ZrSp79uW zU|z_yKT_9lT_EM4d~r`f1bI%_f1g%_aV+Ywa#^5xJ$%>%`)k>;bI&k=A9mq>Lv)_T z5Iv6bBQdTh|+!I}m(fc7Y>7us-I8fCvY%%421<%IAKCJ=ylJ|RL?bb2K z!@P#yD4ob6HmvP?*oNP=d;)QW_WGrecD(AE0{@-1!L_v(8837p3{hVqwZ=ng$1 z>c#P^B!Y`;p-ttP41Jj3V%e9_|z~jh`#-ID9 z0l&!6;XL6fI8S&o&J&)9^MrGzJD|Uu6laE-qk`50`G${`yc@)6l+=dXf)$D#LBK`&O08m zv*gQb@wMeANpCRP2R_99Vebf?O(;O`Ku5jWFXcq}`8d)9KVo*p+*ilX*gOio)WrQz z4LaC8wh8l|b!V+LmQM|Dm-GtO^P!APIcMk})Sqo@#ybbQFa^4K~pq-(5 zY``yWKaXErH|Q6WOexA!pRBjya@9t^EkAJHB4o)1AG;TO)OwL~=%qO|4-YkCjREp@n9If7u#7wf&Z3FyTIA^P>?6|g<}>J8 z?+?K9kXYW-LqS@1F%19hz3{`3!+Et=Khmv+>^Rff ze)5cA%Vqj?V}y_$^PD!!1OQ(=SZ%HxkagH% z!m(c13%iFL6Y&b!!IKA&qdgRhw06K>JcYTCgSclfz27Eq7*ypyXkQEc#A zPDy&z!?N^T4)zZ$N4(K1A)ZR3-`Unzj+Uh8%)xnidQbE6$M#^)1I6?sSeLrL2QnyV zn4k9qy3t=7({@I&S7Hx*G{8W==RkU)0^?k?A36ejN#lf{9l?CF5zgoF2+^6=HG?KR zS2>i{csD@n=qZvf&J)B_oae$gbC&c0_>6J_aecyb0y4?BnG@hL8GXUzi5tj2dJ}6t z=zQrRau+H>j_e?4d+%|aVM+cwd}8Fox<;w!gAMVA$$ro?x_iRMeTlv@e>c4CbA0K! zy-Sl^tQXgATy405xW**ASRSs|@%aYa%Sy^u21;Eum98~ao%mc`WByxNzO1UGYTdNzn$l_2 zRr<8@%4v61mQJmzX6z{H&O{pzLKd=cr$5=cc3^$M0x%l=#h<;3-_lr6vASesd1-M? z*(`sBURhdRv3y9Grol4TR93Exm$9nNT~SgMf5fW|v|UR5nQh-vvOHdr9&U&4szm#hvf3{)(ySuq5rLbN>> zuPg5w+UIUOr@#343IRJGSXEVJ6(8o3+Eq(xDg*R=$x8H6SsM6ac}3}+xXNl*uDrSO zu7K-vpLf+%)dsGstO&U9hxUGpcH?cjK-2gbN@~h0D_kaZEt;(^2j~?w)28YrRm&@< zEibQ`rmqO-cUIQcR8Om3HT}xj`MF+i>9Rl|e>S!hP0yb;V|H2Dtl4GL^s17YK=rh* z-?{p(X`r!1TTa(|f8=7f0S+4O6kPw*z5s32x>c3s0GimTdR?_%vT|khv=t>QYtXyA z+r?I*&x>)5#D#K!s)~}8E{?=GE>sUxfw^ldssbhYijrmEY(i_i-c_iBDg6H(n9D0U zzMcTgUqzpn;kp{vmjZWHR;_cbB=&Lz*6M*kDIlJhyVg4^m;X&-Ebl=V8;`R8E4aOj z1H@rnihe85?^IlbCnmet!jg617e8?+J>h=>{U7gQs{^{Lyc)Ws(zOyS7AUC(H*!8) zx-w8!cTzo zdq%?dV!WS*?}PX?<$R8-w7O<0bjQR=q$waW=9hRox1nB2LOT(BzdYglkMTV_;rlE2 zJ|W@zbNGG*zJCtNzvQk!De*7pQ&d@7QF==`9$a5rgChLTHF4QG=nPk3prmwVrG974 z3dmroYr+KAs*;Lw{Z24>NsVic(}~jKnq16|dlv4gxX-|y>`fl-)LunpO<;}-Cdaj= zyk>=K=}pBq-?HSIg1KM3<)(tU{?AWe3LaWrUR7Cf7bM=bx&&IBL>)G*w7h!N%93@i z64$a4z))492hicIX!km_`|uaU4;u~;_8xRFcHMfrM0|AJ~|p2%6^D`F2a5IcoH$-v=B4!Y|RQ7WY?;yN<9Ek zK*RjaR9C#CsZKVr*@SzbU3~YTAFC<7q_!I9t*ETHvbJIkMC<&mFcw6;D^ahkqy|b8 z_^kmE;@7I2~76R3}Eumf~DZ#z|Mi2N@42cXI-tGJ^9kU)qQ z7w6+wfa5qFf}eA-QCFFCFtq~IjjOWEwT!r|dXB4RMZg6XCq<)|RDd;HRRO)Ws=9o2 zU?m8xf33E>D&V@SwkEK471}2_*>JxEh6Ki>LZ8NqO{=I}Vxq2^t3CDu)FWFq3K!`; zQzg1!dMb6(t^yvH$=@cLoa{B!8I7|4g*)-^kk|Mgf1kX^#bt0fNW5`$KLziR=4Pc} zeCqpp_)hdETi2>DxacdF3zCiBUgKh~;8`4hqkJyFTU}kUJTRc7Fs zrmw;c=G;p7bUNwln*wFTLWvKm12yw2t80n}P3d)k8gl;=r)0_Dv6{RZ!mKV67VpVO8 z^|=tju$Wxo+X7XUH=|!*vIzbcI=VR!xRW%?V9PhwR@RjGEvrqBZ>g+YNT%0=Gs+QN1Qd8MyAnHC%=h!X4(C>*C`ixqWT{U@3C3pUii$5>kP8mDF&X0fPju zul%l6D+5GjQ@2zFYHF)0$UatBs+N0Ar1zi!163>6kv^}kfxz4a14oL!2DbCZF184L zoqWW!Ia6$m>!Zq50XXjz3sl$YWKs}IR0Yr(oG)|@)ee-RF44vEX+A!-(<`e2+-cDR zD_2gdL`cDvW*gd=gEq3Dl&-;jIBrY@YlVY@wq+KO_-R?zO;O;}Jk$F;1y zrg{|&HoW2$uxMcINk0Ky&~`HJm*D;?kW0LBS4nvVZfqRzOuRK5=ZVituSG08&&7^{ z7N0g=7(N!$B3D(v1~^DpM=@sN@1cGP9^j8)p=%s;@9=gK`6cHc`o(@ z@TQl5Ps(f7xhm05*~-c_D6{ra=n358IOq12^KDhhnk9%-z_mM2W*o}U_(|_vD7IO# znEF^rd6K12?6oUv=FEX-RaLTT;-sZ6h!!MuDXi^M_?|0k1Lt;0z6ScU{mjI5CHQ4V z0&D{!Rd!d+w2IohNT702_F|MN$CZgIcP*m9>A5p7MC%)AOg#obH`IYx?XNxihBEm@&gMBX36jjF~gMGiJ@0?aB2__ssBkJb9jc&rFZk zGs`nOFE?*`-i$m?US3{)-po92-mE+%0P?5j&&c=W=jG?;&&>Dc&&r=YGk50nnKNd3 zX6DVzpE+};cjl~_v%R_A>E0P$k2lYo@15!OdS`iO&&r)Oeb$Uwo>>TTX3d=Coi%IL z?AZWuHoBjUre~wtY&=3-a~pX5D<6Mtz1_u1amCBkC47!Q`$zBho~O-Kcorw%5W1L& ztg@1o)q&?8GiigR^(+UpiGSaP?_=?u{^EM*C#zt`s==@8;ER64HN`c@<@$zmit}5p zZ%v%&oHFU0z5>W`tTJ_K-s3Lb-j~oG@#i^Zp)@IO^9R2exKTotpWsF#iM1j|fZ z@$V#aSKwkQCiw+fRBSfUj=j!KB}q(`(}fY@NJSelN*FC>iWjAfQ!cSzCS(a;mG2aP zCOs}bCB7{FPJA`F({V^VEdEhAqWnobA-^NO=Q=6(il?PBLh^*GuD+FqkG`?R z*!9rQe^LLqYIDr|{MCy-c;$EUs4+9Wixz+9kw<^_tNbG)8#ZlwKu$>=F>=!MygB}& z1=n78eQDtK1FaX2v)P?VqcUgCp7ZeD*Z$z}Zom6soAaux%gVp^{SlQ*o__Cdw=Mgy zFLv`S_x*6{v8CYFCqzM_)4M3;r8h_Wbt$?6zGrc6|2LUpVpZ z-(t}Y+2zj8ndq4{Xa2PdZ@9U5(XF@Le#cThP%~8hMdER=ic`H&6>!Lb65O)v()o60u;q^N{v@ZG zqRmmAGpERz!6!dgdUNu8hqK6k@qGKuDGO}QU{8_r5^3H7uas(cskdtJJal5cCr!9SO_lBIw{DW}R8k~|E&cmT=Q(OV7wmCX+gFV)`ueEkQOS!P z7X=&E&y&K}q>Zk-;WAYXc3z=eeYvpeN@=VtuJ>IwVvZuLe`WH9vU z`1#;(KBo$Dv2t;qxIT4?T$;Sd8GLlsB`H&6hfPdXgZG7AlSfD?(i(Y*nk)-x$?_}= zZlZnsb?a|Qz67w$w5Ot|!xnro+lj3Nw1*6*MB7xm%`w6`F6pA=u_@`P$!T)BG;*Zo z$PhB+F~UXCSlh+IIPtO!mvn`6Wztk3SDr4;5cY_B#Yf~H+fR#Ul(S;L6m$G^?Yb@B zeJFSFty{KkANNLT+7}m|>6<$33%CEgnvP4AXxYFr+)o(=i!ro4~4fhwfy?&=)sr&_@DFd{nh{J zc6famqVex{A^qz2&N+8Icfa?%|MRE6)wXVY`_G=7 zd(hDE{s;8EyZ37jJm~lnPF_X*zwn~FzWK-xAK$U_kE3H(jBonz>(WQw z{JFco`XAr>(UTu@7JuX#_lkpl@W_AFPF{89n`iXwKJTz2fB*c@aCpqI$1T6|18X*H zdhpv1fB&%`|IgoQPO9&aOP=h$WLeLC-P8BD`1ZM5Z<}_|%!~Ky+NUScePnm0dq!7c z#`GC`%(_M36qjO6s!%<1i3 z+I0llr#+_cKIf?J0}ky=ZR~#Ap<5rEcF7%G`%b^)uU%)%*n8&unbf$qO`kP=-|1(} zIDFdivlewjIl8>ri@NunKD%q{?I0cL{d3pWn|hA!+P&-O8Tp>Wr(IIpV}8$(dmPbq z@a_lizV-6%OFpvC?7g;MHSNf0Z-lDNpSkrbhm6nJ`sltF&zrXO$=QGSm#%Q;#b@og z^`4%s-<>vV{u{eyP0#ln-!o_W`0N9_&g?#8=GJ%4-+$KLGgo$Reb4mUZkqF&ZtsTf zi+}RE8FQvh+xn?_7yofaBK3yppuVqr>sPw=>)L%cJB(O0!ZCS#7?E1fm3=de(5s^u zkBxGi&h^ohSqjkmpbk6uA_V2 zFh7wBA<*3eb(}FPc|hVQig)*bWma%db|q#LPXj|@&*a|dnZXUe zdlECcW+e|yyb-c{Jfu|)F&YY7> zA(4r$JctnNI;tm`yrwI$TVe(S>`H!Xv6J}5!A{rv66;gW^ns*<(^RQsZxZb{;=WIE zTH+(geP6X(;&nay%uaW?NLw;_SYj!1KAD_@bm3eld`%{&A>D6C_9TAKY)e2H=gpf3 zHB9_GaW%GEk;?9cUEPUK!ha{(+jabGulxK&Zui$CowK?;_&FnSOxJ>GiJpH-%t>Zu zqEkxrbulZEDT(V6T|IlLoJ}P5PRyOrHSHTcOw4PTt0*h-C6d2I+@|BXUvga!-@J|a z0czBRLY?N!OeFt^l7~hlu0(j@ZVRxS>hxmmGKFgQnJ?=$~9-<(dT z-%^S;3=DDmg8M=X*DnVT*CvXeNU3>Z%E+$4d$v1Vg|*Ei(tz1&s+huF->6_kDWaFbxr31R1u=bcyp;JBbStiT&mz)jO^!?0HJ9#&EFLpg#-x<(i(7{-^NnO3>GyTdQG7jQ-E-wQ&`3yc0Y(fhS{lq#sQ0BcR^{dXLVR zk;&4_&ho1BYPGG}uf@_YrY8mZ3!t-qWPIZE#h@=ZzgEk)psxr0XwX~f%vR9XgFcx) z+ytImE|^>&7}tluxBok8HReIHxIPE^0??0cL7#*CTHJ!3g3Kb&&jNiV@)!R1#`Rm3 zKX|rXX!2wIuK6_r`n90DE#hz`=(mHuz6Jdb(4PanS$;D7he4lrQS&sWK;HrSBG4~D zULXyNo26mTZlvMjT5T;@;`x}us|@J(fPTBCH?8NVgJp^c;<_zO0(ECAOro-4JuFNxBWpuV*TB|*$!`MZ~ z7l6L@U9EL|8R&y8=!`=J^lhNG%C80Bf%$1?&b!;|_#NQe3O-f$SL~`^4}*Rc=vSJw z#M_@8pm%St*Y|mG`aEKLrR2fL z+F5&fYaXU~0eHIK*IdU)Uk3Ud(2u5nvAB|60evCpE1S?$c(;vl0KJud&<|XTa2^Lw zvvQ#y4}$&_=#$mA=fLyu`%T}|r0-=o^LkLv-(E)UL)VE+(;h* zeHrAh)&B3=|ABr#=o!-{#LJ9++zFnCudLNl+K*l8>m!EVEUzg40_cxGeub8w5C_ut z#Gvsd&|Ar8IH>$U>-JzR=<`9}M*ow&6DleF9|!#c&~GAr+1x7=qERFLD*FGy*7Q3; z-v;{iU~4A-2{W?^5~5B{wm#kfj`xp=%8|3_zkY|h7bQ&PmSpe0ncOLF@4J7!Ck|< zX4Xe%t1wgGuYmu#>+55>UGkf0-433kZ@`$%=zX)aQaA1Z-~Kn&YG>g$<0n+dVLm?$ z`stuQr}KGzyL_gfFfrrI`&9GsB;&RK^aY?ljNb^;Z56kb;Cl#s%%gbR7|tN*kF^Mg zalah&=Rh~**xN4djNAQ?S$S)%b|-!#%%*b%#^+gv4ZgFqj;xRcZ5?V#VQ%d6#_A_d+Gc;|n%R(l4&8OLVhobBLw3_PvI(YJuU19UU*m{9JF z?}MN_chqXzb$oWAKMQ*Q=UcbiJ(%E*fIg_>xXV0XA?Wu`LSF%T&lg(D_k+F`^o-8` zUE;SL^!__*wOfq-OTA|LZUKGAU9HE>4}$J|vEHWd;{UUtF9e->)=W2ha2O;H`gTp< zHT|Gp5Bdcy=qo^f3H0?%@;?Qce$bD;2V(%8{_7JlC14sa2T$cot>>P%gMKaOrr&bo zdGrwI4}jjP44(si-j{2&ejUe=xI9csIj7&-y6;~EdN1f_>9%DT`IVqw{#Da(Q&d%EF33^fv`wlD+I%=H(Si6Mt7W{bpI=v3W<+XPM@Bc3;wI)OS zd0?K~Uymo{|7W&jBZEarNHw9{}Avp!T(X>St%z4e#Yl%g8|_Z&aZ%ZH^Rmj zW(^d!^Z=N5HPDO+{?-%sDf!{6YKL_SL8|@O#Z-Ac$o$5>Zy)Z}O{Txd_0JvAk zp8&iV*p~m>fq8$&@^1nD3h4Xd1^v4Tn0I?D{WHLifo}EXF<{>LvGk{bd!Qe9DET>< zqr51>3xQ>R9|OEq$S(!vT?#seKMK4J{_Sb-b-?37A30BYLE!%derUH8#o*wQ0l)^Cf?2DbN-=-<@_Tl&X=S^q7* z0hsz^@y)>0H;X?5%<{7M-+)=37XLdi+Xsuk3QT>n_?y7gAB(>WOntQY`@qy!i+=>n z^0)X2V3xPVzW}DbS^R5YmaoOn1GD@s{v$Bk4~zc-%=X9P1QdzwkHs^9+5T9(8!+1& zi}{U>0fF}craoBuLBP}(i*X&^vG<8s9=!%z`l-OwAB)cdKGGl@YH>=y4Y#xQ3>q5h z*Zz2kohWA~F!c+~g2K)^tzY8?_X~OU7xZiW+!P;h3Fi{fC4M*X{ZFJ66*a-R99YKZ z1HwNC{_%W}d!Oa+ay~BT4DZXp{UW^kfk#lkZ2kWY@K)f3DmF=H&si9o3Hq_XtdE0+ zK47qpVA2@@rhgWn3rznkz7UxHSq!sk6Vh`zaKr7a(KfGjjQ_vI@YjGxUX?N|3FlkD zGJn1s<9`IW|J4ot9}7Cm_h-O&9@wD&CWfB}zE{xy0{qksy1c1RhtEd)Am|?O11LZ0 zLjr%d0-p|ks6BAfxsCk5Hvb<5KI@F7rYD`VfEV15(h&3#a0d7g zydnSl4Au;=aRkitTKrMq^}s`TLH-8}w)F1+Ge0bT7?}B|UAOZnF!Nixr1LoN{GVAo z&G|X-HbZ53a$eYQJ8L~>Y5vW4iG5q=_kvFSn!6k7+rcR#0(<1Z&kD?W;|_rj0De*6 zLx83JEd*}3owc;U4DX~E|0#mb`h1$evvxpp*Zt0+avz82?s5C;z1almEsT|ILC<{@Vp6|96QGG5sf6 zgftsMVC@o40Q}4ijrqr0fcF>lGVq|l1He1LkB4esK7=2S-`K$S0nYwBTp{ z9Vam5qZt3$f=>Ro3rzlx0dE)KT_2PGl;Bt8B{1cG7~}t`pp*Y;fyqA$6Q3jN88F?M z$B9tg?X2xBF!_&-@h=y2`hSwZK>o&3KRnEcZ)(UbWzn-jmfgT4q%{v%@ifuPg>g23co7vq1kpp(BSF!|pR zg${7(ov`F|lW`D-!$X`Bew-Ok!< zfysXuu*}~h1fBi|0+WALjDMY=lmE>ElmFZp|2qVo{O=T){GW*Ne^SuNf1AMM|Bo2| ze+oMJ|65@4KOf`&qo9-jF9MVQHG56Wp96p!ZfEVa0+avP82@rXr~fAjO#Tfq{*8i8 z{xN~ce?^S{YC$Le#|0+;-7)_A1fBff5SaW=#`u3F=;Z&Mz~rBag%qhjyK`Zs?snGp z5}5p6j6W1~`hSeTk)2e?R^51|JE4)9fD5(?-rQ+{~hE1 zv7nRxNrB1#ml%J72lMJ~XKjYSHH!?X2x1F!^&a{-Xt*{vRhW z`TJu0k)V_RY=OzYJ;wijK_~xJ0+avqG5#+KI{CjWF!>*g@joHx5Wb8u%80XJcV=-eHaK z<^ew@=tlvs7q|lapuq13wze-ApL-0}2}nBk0W*AyzYfg!TKpft^xxwD1ZH|I{%>HW z*Ww=oGyWDo3C#3b{7YcQ&*I+#Gd&jX1eW^vC*X$LS^KNNET4V$gMVWFeGssee;shc zVSEBC*Pl)(YxxA2aD>_UIPgR8Ppy9dXM{Y%>jkFGjAh{G`aB)6b_wS?L${dE=LG#m z(21|Ydn+&Ld+$GypYlC#Nbv!u!`mwGe&8qO`9&hSKO4tv#~aOV(oN#CH|1% zxAcz!=ixsk)Oro@BTuAM%($L)=z%C7(0dG>az_U#KH#+f68C~%Vsi1Gt#%3LRL~_p z3-}KB&t`++zZ>{LU|atw$2+>(>F^}}0{A5+-y<=8-u2Z^%S(I@M+FTnFY*~qWg9fb8xflmQ;Kh-F&3xMwc zU6$X2g^BTz_-61+{2AaKkhkUW81R)pv+~oNp8-=JwM#nB0Miza#lHczHhEaSdx1o3 z>HFcQwLwGr@djJ^N?>clhxBs|w)A%ZQ-3XfCw^MnJmmkZ!Ipj}F!kBuFX1QkUAu1Q ze*C09YL|4rg`d<%iyy*ImaoM>z|Us|ehk>!>|yv_2WxEkX9BbQEZ!a1+TtPqQ3hN3 zV&Dw;1H2&pY=bTR?Z7O5i_ZnNHhIW@qrsMb3o!M;;?Dx#1DwSR^8eUiOMeoW@OtUeeFbk%F!N? zb_pj7I`Or5VZ)d74;i}U=aY6Hv`aYGfX?)2mvsIGm^O+mz6tnBfj9Ui z|03{%0^bWP%j@gF4Y#xQAh0a2LPdwC+LvU~IUkteB_M?BQO}XiQ$c7Z5B~~o(ElG(zlBIeF1cd z{|qeiqXyh?7~d|Km>(x^(DFxviRt?w;?MXjH25dL4BygcL*6>3=P=;Mo@neR^#b1u ze%@KI`a-N-!nxegE&d?zOE$kDaUbyhH#gevXMvXqOu3$8Q(9b=+C=>7LnmS~E{yTh z29$OQXCLr0{@Qgr2N5Gad*KD!i#Hjp>DZqIw)U<_Ki^AsEZn&Mb#Oo%O_s8C>^T+D*4A8A(dA=4{ z`uBQ4=X~kNn15M8xB4yf_Y}}2W?0sq7jyVj&?P3Fw!O4tt(=J84E{Ks_P?~#{1UGR zzr^J075r7uB_^Hr#kAA@NjwOCiARBNxi#h71Ob-UpMY0>x`8h`4CfGUw*DoZOMy=p z_`SgW0)GH_v%nt#-Y)QUz*h+TufSIcd@Jxx0)GzpPJ!ezEii3baoL&vUu3YQUka@3T^afv z23z_Uf%mwjF~4})U`ziWVA{#D^Nm-%USmt24@~=6vyJ~t4Yu?Xfj!W%jjrN1Zm^}F z2TZ$L+(u;lKWVU~-v&&ZTvq;3gDw4W;MJg8`5AA}*wS|crY$dS1JnP!!Iu6{z_jya z%V)q~OCJWN4KSO(A2Zm}uLq`mFmChF|L+=X>E8#Y?JzE@k^YjwmYzJ^QFg^_{Ejf# z(gR@H9JBfRR)a0Q0!&+EGmZaO7;NcR1Jh2~Y(u}_U`ziNFm0Gw`c8u_{ZGKOZ}u7^ zf5;+@Eqx&{ZJ*iruQAxt&j6-fG)v!Ru%*8Tm^RaF{@!JorWe-4;- z*5=>^^Y=AJXl&^R0MiDWtv@Raw)B&MX`hYT5R~6yu%%xF9D#20=hFsT`W?U{g8oy3 zE&XZW^FiOu_&+DDv8BHnc)O7QCxb10IWTR-O*8T%23z{Mz}E=>Z#3A_Zv|$1YVjSw zY)>t|8(8*FUjc5oowaWQ%kkccV~*;7TrhEba~m-GoAm}CGOqiRWd>gc%>LqNgEw!| z?ROHG_m=)KV7B+ujsH&ov%R@vYFUbGa0%ysL8rYw?XZ6hJmc>-69bevKV}5)SG6rgZvwx>y}-0}s2$Ev0pBC=S-`YoXz3;3mjvzyeoBmwhk)nY-ryexrj0@?e;)99 zfwuzp3;ZtN%>rKzjQ@?B?tG{L@DAq#fMt2TE5i9E#HSlnuHP;~`7wWZrHL%UPvDoBT(`vdC4LF~ z5|jTS!JqUdV$xp_bYg2alkw>Rzs&Eszzw&vwkNR6@86;QVEV2E6Z88rw*T<|DuZ|5 zpwqL};C+REHos)}InX7Bm~+R<6d!O2=Z&CC%(vH^oZ{ zYuxSZ0G9dje@L%8><`SCdNgXyvDYd1G0jAMFJz_hcw67TGKC9!r1 z=SoAjm`~a*)=uk##8-n~V)D^muXYLNW1tf+zzZ9mr2oLsEkB=+3;7>`E-~pl)};7= z)A5n`3Ghq&3*ZM(9(yQmj7QNi{1EtbgXzl!Yg2r{Y5ycHfM4Qcfu9Ax>aW0m4KVE& ztNb?d#M)uKHLK|s9|Y`vwxJ(y0=^ggi@;#>huHG}m!VtCC&Sk+;XDGm#6JOE4FC5B z1Lw=ra?l5XDYtE1iVwJi(%E$F~Qbus!cSTbDoEZ`QBxqCKa+-)?aKJ9U29_Wjeq z%pWWN95C}owFmGoy-nvgj=?DZM}V!JZie>-VCnw{MS56&?*eA|(SC>37g?TvGIV&) z5Y*p$PEDz2GyD?xB|Q;N%+Kk-4Ttlcz%oDg5Ol^bjL9D(=KqY)t2)e}dcZZ;F z13mS*iSi3hPmv8S;d~BshOb@HxyyuS@t1)aAB(>RY;D{#zRwwK>3;xbcox41e566l z-@gGj+|F9}8z<)PEMV)bzRCC=2D-%LeNdz)j*kF;oIZF)ifnMYd?XIQFEP31oSEVS zPV-A#0KdfKx?S)e3p(xmYnODE1FsbLB;d0IJ_Y!#0-pvf^Y1Od4Y#va2A2BS5B;S4 zgJ5ER@(W;wXZxRR@7Ce5CX#;Wb{)U{3?2~vGymTO%=FNfk=19JzMmMnj#I*U5_sVq zDGedmzea${V6`+63$0JmzZz24W#&h)9I1; zI`B(Ot``OWzk)6?>CV|H^|1a)d@J}RCgWK#eu+N^eu?j5c+gMVo<0futibed#c+xb zIGrAeXCAXF{Q|+iJLnSAmz5(aKH#)}67L0miOIED@b3q@#0LZ0Z&9%QJ;`9ov4)-k z{0pQI~_lXj{?8Mi-CKPKJ9Sc6L{k%8h9lz({JgkfnO`|>A=h{ zOMfdc^V4E}Q1T4|zYTbiz$3s%2z(Ckkpf=;>} zV5!f?U#7#i{o{6E#*aBi{r(Ox!?Sn}^qb*Xd^_};`8VJ2fAw;mKh{6zeLDRXF9BwH zEPf|2(`)_vCNRq<5C2$yt{3rVeYp>KQ!T^lcZU6dzLTTmicMwhr5ae>Ye& zB%QAUGklA`3C!><{x0w>0)HRa`9g#KBj5)FeggPicQ)w10De^9UjzT2yBhT8fn|CA z5xC)SKMYvr?`o76^N)7!ls*A7yj}>ge18ti@KT@?FStU7cZ9)JV5aAE!+#4f)ANAA zzX4`?zHayvi$O5XmZ!|$0~cd_Ao6FqWnGS5fC&K*m z47T(T*nU@p^pe4r-Ve%l;4)+0prT))H`@CRl%Ap-Z>i?fWx6bP4xX7H9u#!{PoXuuR`Wh#&o@T}^Pq`aqYM^alhz0$t*>f$vBDtMXK} z0O{GDq8MDlxf*ndKMwo@QC{Byepuk0z%K#Y`oI5j=mYQ!H8yV9k(p-V4n9wfFS0?hoh_&Q+b zm&N}IJnzN^z7^PhUxwj5VzA}^3Gg2vKNBxVpLT-AmOdMp(@=hk!IpjzFuz-4@uk4_J2B+H!(dDQA~4I#;(LL|foJ0d`TxgY zOaC3P{eBJU^H*qW=?4Pa@7a)kqQREF3Yg_>@jBo~fcM4=@^3ZR(%%J4{jvCR;BM&8 zet1FtyA8JV`+%um7Jma+wg=w^Zn&Mb?*Ys9et>2A_Y-u=A0LxHNzfU7Z%lrjpi_QpO#V_qr~G?j@>d8t z<-Zh@|Ei!<{(+eMw*{T@FT~{kEa;T~TTH&|q(<&gJ`F7OClGYX=YeJZ9V6(J?~loE z6m-gu#^lcxbjsftlfPNeDSvxR{_}!P`Nw1OPYXKbe-)Get)NqW@0AnNzaMbJ;rs}& zO#h*RPWj%L{5nBr_-DrC`vjfx?}^D@A?TF9DklF?L8m<9D*LksK$n>GJ>Qq&15WqH zg93jW{IdMN2i$P5zXdGQzu|-0|Mg(v`0A&EpYfUg&lCNd4cu@$Yx97me|rf!B!V)Ew;I^{nVlfO;SDSt;y{w_hM{8KUcUkWygMelJEC6me*tZ0h`qleZEx!OvZ12*7pW&Sm^Y5*K&iIyN{`Ctw-*HiM*!~t?tv%7 z#{fSo@CxAjffpM3YTy?I{VZVGtDa}*8-Z!BdXB*t0n=Xfo(6vynD(kI|7U@F;Gd;G z08IPXg9#m<9{|&y(CJ2g_jQQ>A$mW7@f`%_di|iGe;%0o{XIthPry8nu*lFCovPQn zU4!2b%=11s8T>n7p69W6$eveybPG<;cWPufoWg;MMJ*`c>UalKKv^%?bF-vzY9$J z@;%);yk%!$eIEI5_2XP%+6#Ty_;(91*V9%Q{6k=Ce|;W&eH>U779PaE2VMYvWSh#L zgWiH4$ZxVSzxsi>p4M;5<0jy1f0hE3^3$AKfq9-H15Ey%z&xL5)BAe#FFbF<@1Bu< z8ZhnCEjIjD0MkC*i^l)|1)g_U%DKkypV8;2^Dz9z73H@B^E`%4@ArToK>V#f&RRcF zKQ;nO{rFE{sUJra5&kHo|! z*5A%)=yx_k{eME2H}&h94bZg#pZ7riUJb?S21fBKee?#9pDR<& zvkA?A+}q&anudP9>1^!Jp#E|{kp4XaOnY4qn)IB3jH3N5tIv-D)1KD2p`W!8bYNSa zj{?&k7Qc;4|0+YMuZ2c^83w-R)RdDl^2ZMA{We=3TYu-?Sy`@r0v-EQz9Z=aZ- z?*^9T^=n|6pVy4S|A9t)9|q=m3Vv6N@tZTI&r3XG;`0|IjP@}uFy(j31&%sjxy{gD zeG%GAl!wjV7lFAywB68GT{^KnyB(P8yYmhGNnq|5@;hA&|I_c%=fzGp`E}^KC$@Lr z0+#LF?+_5rtL2SJdOX@Z?xaVDE5-4m zlaBiPs-wk?k&_-Pjg2{J^`|_%abq+@E`EzCT^t`D9Vl%Yk3b*WvT?jv!m}SAz1F|< z(>XgTmy2in*<4?FZ~)Tjk{^}*Y^D-b3%MX41xJ)OY{FNj`p!H#7#pwn1H;+VMhC{D z!nyq0R~#Jl!hX+-GH%Js29;c)RPZy)odugAlU`XI8XihlvsFKIqtNq9VW!~cN`-vY z%@xXSA&4@id?oF7%$Z?4GJfBJm1`F)SbhA0wF@@+?t(ZC!fVDaNc?bfM~b*DGZTIk%)sFQ+`C-cnD4p-mgJTDJ!_jtn-}Y3h4* zcvKNLjSZX^2`w+UK`zYYGljetxqhjtQXe+L7#SZ8y~^nDNZ-Iv-^gIG9I+mu3J;gl z>C*7#sFF?}H@ulIO9MmY;R>o#G&(vwnock0Fd4+r-EPA$(sMN%KWm(>F zruv;1nculW_yrYfU;Pc#-_F$=DMq?G56n~iI=4E{Uc?HaAf6Z)s1SYS4|*EDQB*&p zerMI+ocgOm@$>4pk`0t>pkxCj8z|X8$p%U`P_luN4U}x4WHU-OqhvFk_i#G+j0z^B zg2||0GC9ZZuWlOKTrB1@qnk$0DQt4zK0Z_`7tji*krGp^qRu~B-WkK^GtWEwoQ>&n zF<;7-i+(Yei%OA~F(WbvHi|BvDHqGRLXZoJ_>gDD^)l74n8}xN`GQ+=gLEVN+i^Ck zW;;$%BipfR9ni(;>GJe+fqJ?`Q9YP+&(F3=x94o!G&b0`G1@p5ji<{Z`|zqfvPHkr z<&C;FQXY*4`}zk^pgOzk3srCPHjgvR=)#({OO~G0w{{gPZWUuUuN($ZF&9MHg6^+9 z)w|WD@?%@Z%IM_AatM2Pbc+|_1&74LW&9o3FcektYzO*!SFM4Um3-DMmU6`~40B}+ zn3p$($mOD!#{e2VYTgeE#d01)4nHVVJl`$na+#3z!E_UCS(&|?(@^J51=yZJK(!3i zd}NgJf{KjaC>Z>G8Q!T%l~bCJd&wQgLe;;V(v)21p=q7UscIXlY8$GWgd45UC)~^A zUq#KkZB$FuMU`^(OQ&9GrK*wWi3SHs8`D9tQYlBdQnBDiQCQ9E>Zk%mLyX|ia!4MJaVyhMnjpvXfkmUHdP)bA#AL`ny!T9 zl7|_zoAZkKO10dWq2~%}+^r|VX7oK++%migQ{t8CsmAdgPMS02N)@w-Y?v*&<*-yz zBky`|82F`PE-GZp89#&mrc^3no?i*zN)@l-SJAkk-KdX}Of%3{sy_8>%c*r*DMWpo z&}k^Dn3|3#?8K*BLaHhO5|yudZZX&Bbam}OgNOpm6r9oGP^GWjU&R0ELXZzC0a|#k zQYlpYf)#>F=!%tdSSnlkMn(rV4vY_+6OE-a*-{zV=w{t~=;te@cZX(dWcf@} zMRi?LH2_^fhe9fPNDacvx}6Fs_PVlj5h-0M_+FIFMioEI<;sE9O;ydZD$lbSr!}9f zwXM07KNwOm`@>0mQ+2kUd9D4^dZf5feOvSCEYg2-lkn-7S@me`pDJ827#iy@`spy^ zxh1TlVc{VcxnSO5Ed^(D{tqh#je44{*XeAm=m$Rrdc`T8jIdKcF zscnh_rd&|cg{;$>Psh*3vNfNL8T`X=vo+tud}+<6W2R&2P2!)f`-%^ZM{ECdccAz% zh-uBIbgMqJY0YQqrwKmS+DBc7>ocR4KI*2gK3{6hXKNF38a-W0K3CTP9l^=sr%FUj z6T zj~c!raF$uuj*>5lwtlCe)s4^g{N;jLE%tswN+oVt8qtXNA z;iUellG3%w86Ozh(x;ba(nv(HnDx;=6(hG8Rcvz5)v}3gEX83t6OC#KO;N=wR4bUa zW&Mhq$7n0`LoX*L-t9O$_p?5-;$rHgp*L2B+HuxLQ*Hf3Zf(YR)C{27ve&1hZ8;lD zqU|DEpY*l$Q#X;+RMiwt9EVVUC$>L)W7`<5-Ta$(u%DIot3ftf4qeyx!zi>Wq2vq7 zb5D1Co*qefXe3*U>1_+Oo{zQmjNfXl9h-0iLmSfRHR@@W)AJZOVxWmpXXs@znTi^2 z>+J^XV}94wdp*`4jm9<&VvxUDJ=N~m%3kb{;os5)jBk2ic;Z^VSjR89QGli{lPOh- z#VD`$In=g6HZRxlW3g_&e6KbKRf=4_Lx^$lDA!Z`Ao6ngpjs&A3OPSgsYAbm)zeoJ zirI!l)DVUrW%7l5DW9vL(JJ|7%?7Oy<{@>}_F1JXVVH5n{M zkP(Yi?c;)qh^$tBF(vCX7hevmDonk?#Q`oF?#@fg2%vL-*vrs|dK2C@1F!(xX`-?8 z+%YSfJFL&u+w!*2FatR?xT>#4cN&@=L1E##V*%B)VnWujfbHnf3OCjj+olQ)HU(5; zk2xxSXY~L>HP-d%CEs@*dA;n6(Fw&muXTDUDBF2)>#2NJMLzd3s)iO&>CDv!2yL@U z_f_#F*!E(2WTo^5OR&fivzDrIIK-5$WrwLN74@{fCs8W8xoWE|T58k&l?2kh&r&7O$tD+6mWr#&3d+^Gd{D9+ z-r)~;H)AmtVwh9&uhRWOIEk=IF}s+oT2sudSheaTbQM8>Q#^rJtYXi}Mfb_B0wvmD z^m&R%b%jcHeRz<9Yojbmto zQ5p)9(`R1j>n_7ob>yV^NHc!M3x~TZ*>cr~MpdhBi0!q(LF}G-LFgA;-wg|H-pBCW zbyc79|2`6Fy$9W4hsJ8IN=sIG?3Ni7z!2WgB56_94Kf9+$>)msBGzCFKGqT|exAbz zc+uEcYcHV692;vLhoIC0dvF~KC{08c)3Jb3b#_} z6TtSY^ODy4H(1l_I7+IdvHaJmfF7fwiS1ZG)i|`q9Si6Nz4MaB?hA9N^ODw!cUbG| zI7+JE3Z0jj>=ZgLX$-fKXmnehhJcS{P@waY#>kukotJb@_oSVdbWRl< z7Nj~(gC5&;UeY+Jfi!q-=S8iLYIttvWv%BFp4)k0>vJ8RtMbd!9j2#GZJ}RRG1lj{ zJZxjN9+s#vFA|7hh^obUvZzZzXKj71giO#0Lp{XrywWz*nAV=dM+|I~=PD2DTays4 z?-Jv;9;KUkmC_h=On8sphJRIoF*gC2Md~rhl#6>dNDu$0lp(qt+#3ZcmMTHHTtL^K z3w)eCt`zd+QYpxlvR)Afnq56e!#ZiF{1cB6VTdlPpD$iAP^eM%xDy-N71d7j$*OUfzJdxH58!9U8r*%AT zVssBlP}4enXz9uRLI(LkABHe0jB&&S${9Z0F8}VFmtWPg_7fL}X zC}#q%`a+L*#zBT*;R+VWyPL1XzagbA@bFu4etB7iQ9pgRbpa zmEPfGpe>ww7I=jwSunY#ARkKD;`DQV*(*hUIm!mh>2X0HW>W1+-TxL@yk@*OK2Sy$ z+x*>S%BXxur)4g(xe2g)O0|Ki6f!t?i4DF8Cn;1mHkLHoXNWo&`VWb5qwLF3v0V1@ zVLs>Qa1v2(sc;}Hk88G%dVP%0mQ{~v&7y^>MfF`^R3)=Wp!z^8Cz;Bn9;P=_&8+8| zo=!31VvXW7`_9;SRt42pEDev2r?Wvd462o4HJ{D;W#1mcf^vAKaZ-Hh^sevo3~wJ! z1#4j(5gr>WZirC2zKbdrT*XKaD0PIfK|VHK?yE!_i$fc*JmF!} zDlFwPI5UIeSsA?nuG@Q+0eWzW5o0HEs&9`iU3Vg9gF}S($`g_b{4Wi>hqLQSV8FR4Z5? zo`e;wCYP)EVix!5s@ZbDvk(CeCwd{qIGH?7&zl~lEvIU_8W(li^6Sjks#~8Dw3X5t zuT@;v1*K*6UU`y~tJT(jz)4PweN3K}(KCnHFjvCt#|d)XdNd(mBNH7p(=3ws)yQ0&t&oe?rK)iEoSoNpr{Xs zKm{rE2vrCg`O()=XetE&jAug`F^Jlq(K_YYUb{P&$q_~N+ZTy^J+Po)Ct z2kVde!SRCn!GcsjR0FNbO4Ug<*-+h`-nzjEzo17r7~*^WNU?(3h2znN(c+-z>q)@K zXjC28j96COj9&<`NuMiLBfo%t9@&Uu(1TX|)lG#8N8d`QZ}NhN+nV@WuY`p{5w|5= z4_@NFBPIxpa2spF#x zO76XzeP-3l)ei--_P|)(cINNvbQUPx+LRu6U+EX60E8NX3QoPMK9xKv(-X?`@Wef8XUKfsrs1$ z4iuL%m2!dcXDaG5jTE4F&CS85tdx@{w@k03Nw zXxj^@f~qefp@`}u=8lt~%CxaS+BQtRZ;S;}hNg6U*M+l5N?kR7jfEi`d34dOWU^%( z?GH<#A9>kQB?=-Oku77k%^R>LDeYNRJ(mhN;l>tD%Bmx;P5WT<{i??`VPO`Fd49>o z&3xR$@-TNspPj)VrkX2)VOQW;m>VbQUeZX)WVi}uk|MbbE2&|W~bJGv2SoET^;rmry6Tg*<= zWA>|6?wR4DN@4xV?KLDLo<~ywYE-4QmN`xBwbbhMhV!)be_&BYl5y9Q;DrUEiffXRfYdFgNlv+*!sY_Bb}C`&!-`XqRM|Qe zNxkbnl~U0MDW?*qo)Jt*a>}KmyRxZ-sb`f_l2ncLlq9FzHt3z+DTJwxVPKp-MddZ; zRi+g1RI>?(qo*8OHBFsLZ1qHQN|H)wN|IBp-X2$!r_>nXX4q6Er#uKW=8>k7L;7;c zR3!DhL`rTf4h%VcIBZZH9d{bmjm{k&t&Ay*{qtz(9Q9M}+^Sz{*`L2?9SPQ#hQ|8_ zqoIi}Mx$b-{zl)=?Hh?kH^N|P{WVP@&@w5;&A8#H0#rVl_t^S~h8mveP`RPnrw<`) z8afvi3lV+wPHnkaP>Ci$M21$Ic*or!lzDB3yG@3lsrWcLLQFSsIcI6%Xy zui*&|MmF|c{H)##8s9WB81+>LqQQ!X$I!r7KYYoRaUrtomomki zSIv0&R=!NQm{NruDi4Qtu&?C8@*=FiAam+lKD1RCz)EFS=T=jDl>=k2F}XzcAT2%HeaP(G}6=NxZL=aJ&WQ;w!XHm&GiBJ%DdLhs0D}V+ zee@;cY8@P(ploWM+T6Y^&47e3y&Hv@D3kGHk*OC}MtR$DVa3dg;uM!#fkC+t+icYU zr>=I*&}_>9nwM8Bgs=qD1z6k6c@?)1=CO;pOOdq>p?Q(TLa4eh>;ntLIMoqFrBJ8A zT;{4*W@+=ZLt9DNVzrzpRB#pxmiGcz*Ot&UA~2eqXLHwwV~?ngsE05vSH=!|HXmUl zPo>h!u?3QrfwG&%2L{Iqb<2{CU+|;o+CS{6+AN5v6bL#IYWOV|SLnq1W|rqde+hfBr5bovDK)Vyr&6d4h6 zGnGOWdyueM<5#O?v{c$2AA=2zQKhWPSnSs}(-N5AI48oHpY-vg!y9=nw0UtL%n4QA zMDJx9wK?cW%&=a77R&f9qt&++doK&)frljrlIDKr8qz!$;!y6~z z=^N`G-ZWUz=M7c)QsH)FIM*#-)3;*Dnib1eLzdeuXz)rQ6QA`&zmOXq86OxPYLaDcHG)|%v>xS3 zl(P*7JMoP(ehZ5@c!Bt&k~K3sI?J za)KQYQ&=D4l(FZALqZu86wX|fZ~~E)e&YyZ>v_WRim{KIJ4soa&zz%+83q(frE(C$ zUIUE7S7CSpa>jPF5KgC!`IfX6mu=JpwiU&(eiSpxA-8D+hVps#4^3?uo0g%E?XwW4 z#{Pa`P)S!1i5k+ogwTW!ybD+V{4NPBCD%bv++pt z;lc#}aRvs)j;h?5rjZ_z`ugy(wg1fr3lsb=(yUXtT&h-Jy2STIBb1c`_>3OFqmJ%6 ze8*tM&y=cp9Ma8rB{M2$q879n(ikJMc)|dc4-H_xn#bn5*4nyYo;wdPfi>oN%P5C) z&lp-}^{^ieVvvOiLVR4IoP`~fmLvC%4DTwiEqF z;|Rsh;9Cc&z_3?XwQg?A%|trG2JFriy!+l~lFFrtmYdbODMw63#ca^w9R)qC#Jb*on|KY4B6iOV`FlfcLE zFqmLN>y?W#rrQ%9hQ_~+Jj+z_)u;sXtT1c_d(nZt^^OrOt_Ap6tP5f$<+|u$sZqv) z!`POgvX@&jsxDyFzsOKf_glsWhtEZ_T?~zJP!k^=;e4qg77a4xXmBtyJXA){w+erk z0&>8Fe=f#nyo~;YIOxQA}An=ZW+-mz~a`+ z%AslrL%b;BC<%9JT+;#RIrgLN$6`ZJTjKAZW=0cc9J`Oh&o$P z>xf#1F+I!VL!2I~R?1k{KnzTafjdb!1Mhp8oa+@bd8o5G_sqDN*+&7(pMCY4X_$9x z8DwUmVxzIcWH<){;XxMNi)!qmqKk#P48E@96}&1YotP2^6`*%o=RYsUIHv!KF(9p>4XsMS-2tj@yN2yURj zrV&*W$`rvs;0k-df9#7tfCRu;zi7;O2Z%{3k@y!Q6=jJ0F7Zv#lGeTd_2=!(THp*~R z%xvet#C0JXW^k!J%7uPWEYpXZaJv^D-12<$qmLi@^Rl=`GtwVzjCjolEs^I9!l>k? zkv=m>%LlwVjN3F=FT@W-WI9)WDTq8%0ha7HAnC>^0&pg~uqL8l_ZN1ST^v`YrrlcY{5>QKwNAZpD%U8E-K8GQ1=%Z;W zpdQ=lc~hHZtQZqk&-7+av(+<|T-9#djn|3GACc$5J_zn}czF!su)JdGV>44}^V<*Wq8?`T$*TvUaeyTx@u&F#6jf`Te zZ3LrTenoLLplF@Y=Wt-4%uJW^dCW^yJK5Iuml?D+Rfo=e@XY$sEAYb3Nt!7~hmo+$ zK(D|H+v&9Q0(L)gC2YLlMraxLN<5hHFQS6GSRcX1R|8yP&RO*fa@fJb^0&`=(H3hQ zN|1fUgwt0Tw&9{BCJ7ZBODGk^z+P>@DxsLMVw{>OMrCY7Vtb)l#p=(5K~$5eRp4d( zD!$tb%gjO1=ZcwXJlYp=y$NfQxyTx^#vJ&?(X!gv?$h5P>%)Mg@0{Y`rpUa&C@w&= zoxyamh%K@rOaZBgvuidB?D@57o&Cg0Fch5|D%(@)Bm%6t;-jjZ&f)YEHoRxeZYrJRJEJB55DPBUx5#%^>_t77@cnB z1M01wA7i45GpbXwPpRg0Y7b+CrybSzm(zI3sot7#EajlaKKvt!86Qk#5u0Mh zd4~{|FS1y=3UKPXI7u-ha@kO=P3vY=tySusp4iO+L2o_+%zN1gCeHBjgEE%5^74oZ zj*_E0;w1ueX4KvmsFn)&_;&_-j5vy%73`neZx4VTh&Jd@S)cNK3Sa&d~ENQ@!=@l#9#!KRrBjG z#2IIN%M8}ebu)((6gb}!;zL*1a4+F2wrJ#V$PpH0aNrv)lpVEWg%E<+KE>1=?Iqeo zbsVO?{3TWdCmNi>c|X{bz)~=5NqG1IdKq0rXF=OxTDzdt+G*>RqUNi!^43ET!fJ_& zeHv^aM)({>rxCORf>#*9=8L;Bg0Ma06*D0Y>f%ZQECzQPK|3mI7C}`8ILa2{Gl@Lc z8{spjK_QG_rk6RH1mSBQ+^>? z)y^fO8#Zl>hQ`M_9_irJ2tJvHMSQ=CP4%iB)3vpt;ol{x4DzPyKJbeu!SrD&xmZ9OnCXyyTXhnK$$ zkCi~2(g^Z6K;dV~rPw}#Jq;T|U-~xTd^k>8Y3i(yVQRWg(o6;Pu9{B%#!ilYL;B>!Rtit>e%}=3=Gc8lwEHNXRmKxjE1EaB1 z_rR|Dz5*Xi``^q5Dm_cIG0~cMcr(I9BPdZNTL^P76>F5WnNJ8qqLEdR*>wXt zYY(4eW)!+G-sqvW6kz|`M99MlQ5WV%GdK$874W%RSjJZoYHvT!4jiWLgPkl--3Qxw zP2C6E#ZTP_yHqrFAMDy|D<6Vlr4ZoLkl9=nH!EQQF^8{$Rs1r}Y2Y|pSjIQm&H9dy z5gja3da#KY;2<5^Lo*C)?}aUlW?oojxBAuY#6*bs`RcWOtByZ@&GNNo5>kjyLi$E| z?zbA2F|sKIg$j(b7K`R^T)2xtmH@Yfa{9&)%LHT2pn~g+@bAj&QqGm{bDZlBGDJKq-|qNLz9jy+_oW>7GmdllJOJY? z-#)+y%IU(t`=3ZT_uuC@rx+eSNTXvAmT&&gG~YHw(SI!80ziiA8XEn(&iv+sH2ymR z{}AQ~9?HGtD~@xp1$dH&?pXX|8m!w2zQqHMGYc<{KxQ!=Ox6kb$23@X|6vK|3=8nI U{xNNmZ=Zz;=eiFz7%kub2bwvhDF6Tf literal 124308 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Θb9uUC0~uTpZzS57k)@)zU==G*hsIBP~; zt#rl8;AspG{FK;w4|BKDmMQeVvo~YCoRl0P#QqZlTFYHO-4XX({Dd3ReP?6?n!L~M z=g0IJzdL+qROPU15cswQ^G%=6-{z)1_~%wbhl8}4z8@Vps(ho^Y$@Nbjr3D}ZKS`U zaL5=x@T{wXSypJJh`$2P%K8ZWd zJb{Ow6&;GW6^k_rTqIV2wGgb8oVw>epv~N)tjC(NGL3@I+%i1f(K@9Nq2l#FFN^B7xJlpU1 zf7p8$_&BOF!MCcbtGgx3wxIoj7}K~V*?=)l+D1UgOdHe&69~S+29hDMMXCJ=vgGJt zn+%(1Xtn&nB;FJT5AhNwenE!GFlpN&GnpMtP}@$z%`gczOg5XaksnN8z(f2Hwk+-c zJ5|-{*29>Pxp#MV_4}2otLi+z^PTT~&Uu10sH{g3omk=&WZvA29Jx6V8a!{(e+8X& zaNM=gNc*jg`#38LS%f{k#a~eX9|zul;n+c~87~%6xO`b8#T8U}yjSFw(Bghmkke6o1R%;l7^<9va|bZm$MKi)pXS z6@^QQe*u?RCks6Czd38{|3PS`+xOEBY>;1p4P&kLbMs)J=s7qL#a{{>CJri3^*8-O zUU|QyUScGNs+YNut2g^5ct`uvL$oj3q0*HLFG&BX&>5E(ye)Lg#qEDq?RM~&y_pBp z=ZyOr+B_7k{2%m7?1K(XlX#MW?NBgG|G)k1FdwG9tY;WdkLrK+uk!l!EBa4N|A2G~ z?)m*U{|Ds_(YC}}tkdzof7`OcA6!_Zk2$aqdR{nwiWiHoTlyN9tv~6|^H8pQWUdta zSk0p+vgC))@ecl`rxMwT;gxg5#;g3ODPkEo&xG{Zi;Rl&MVY->_C?APm+km02vP8 z^RDHu^53=Z?f6T(ZSm)51Gc)oTKkmWF0$7g`*J3DN{g*IrnR4bWs1G#^zO`>lUnSB zcCGz|@BPqT`&w5fG)|W@4BM|C^Cf%j=6f@1$Lg8yy`WX54pfJYu9}#!7=8b4=#$A> zVy?+t5w7Vb^oZ*!uBlv;xg>U^A`30r!*8)29D#OY52!G)eK6)z_b^Y1ah<+^-=^QS zZzx_B9pbDW;!})hq#EDl7dbcb&nN@?#?)^?*Z!KlxJ+zorm5_DMSjBy5t|Sw^;r$s z`?2TxGR1!pw+=t0+3T@Mn$HqPKOdXV0$ub}cU^u5b{dm-6YKS9$Uk)>fa~ovGaE6F8=(wCb6*ojzk~r_LTcJ_X;sqALb;@I~1_?Qy5{ zu$(=66nn-!<23up)7V`0Yn5%4Plto!z7bn{%vX8n&2%`h@|nyF`+WlcOxr$ulYW0D z@S50GDZk2}dE^COEc1*{;BQ3zdMxyeFBPrQGi#sm#ZpVL<**+t=TgSj`nXTf?Frqw z{pm1gPu|D5a1-z`{!Y(4U@*SFp&a(y4H@J;;4`AFhNRD|{h=>4xzorP8DH#=w)rx~ zmo;O0EBo|*+n1W&iEne8FE;8$Jr=9u-OsS~aJJqf4`^ZgUERK$J$9`|&Hfp_%t^h} z^LZ_kqMrZyL$@5i5i?$-ofhkCtBj2KUwxTB`Yvl1|10UXQNE1JcUc2cMVaIob&!3x zzRR~4^-Q{1Q*j()PwMv1C$avo89)43&3?L9j~)3g`sfi~CYEJ9x`>;~`Z8v_%tdfc zVhON2m(2&~YQV8E;EW&KIRRgIg=fE?SPIdFXWH0A#SUtH)&DUATemR<8)ZQ&U@Y{I@>q?a#0u+!cEJ_rQ%ue%4j_JMhBz-R|~O<`w(#vK-I%*x&;0B2dhD&oqz)~%>>A#Ghdh6y*3+F`^P2UUdie5_diXQrf$_D( z0gWZD@U$LVf=}IC<%`|0-;ntq8~u;mk6_>6`D=gTi+!K6M*oYR`5NV}dyskjo)-K5 z6makFv4wJp9sHZ%->;=y#_k~ar{-}x-&XlDf4`r#ynnCC&7_a$%vs94pZB%w9sLgF zet~lN9V*geH%!HD`j6PI<*J~)r*wPa1XZrkhcNRtw)6nsR{Ju4e85m?rM-cp%xj)U ze~$OdopMK0X3=tACUl7&`~Fnu#;@@Yb8${~_?wjbYo}Z}1KHl(&AGGClQzoz`vZog z6*#cRuh0Rb>#aXJXk7Vc$bg5LH_V+f=84+NfH{LtAv%ru!@Ln&hGRp=rZGeLeruys zXPVGY;>)Uh1-^~QUj6GvaxC*tgkB?;mvHdDv%ewr*Ub>#1uLe^Wf6 zUF6!fY%hG&jkAq+!W)P5IfVU`m4L68C1_`yxD58?LuasBb_^L8NIA-`PMjjXL1O-% z#dm}6LHc;Cg>rVxb@tZWxlX-%@_4Vr@=dqR4&;ouW7EYqOWz9O4W-=izw2cm&ReeL z_pp0f(_T|zJX71@{SsGLMBQn8@)2b#xhy*Uan^Zso{g4m?+F)+Y*2MhWJdhu#MJqF zRLoUerCm+@8SA|KJywZ|mF!8C`+K63pJhB{@7oStzNN~ldZOA~?110#OI)qx+v7LN zJI^8yVP_7oBD&nF3wqP{jhW4c?od?ryW^1%l=LD zRn~%BwY?`A@%PF&MyK(6y1&QmJNq#D&$+(wuh5S3$_&8R-+p8=dtsy-@nMz{2_jPF^vDH;*wNiy|&HV?X<(sn#0W|du{$09O&#(zA`mF9ltOV zojt~t{&OO?S-;ugz;qPyjvqR{gYqh9_tq+1#ztgQ1!HXM0%Ix5-MjG#=`VZ;U*ueH zt{DFuF;jwvX%7!?ckyt&dgs8c#mvDHe0AQ%{SxEmmixB&C5)>WN5-;iTrsh!$jIoe z!_7rtnVWNVIvZpD_c-Ih7|3``^XJ9^yTME~X2C?I4Xo?{u%Udn?!}aqJL3mgjq`A> zFc}NAU#~OPW&pefzZVId&M3Us6fSqMUy;A^B=f$=Y%vn+d_N^fV;!_RA58yQ z+iYbHcyV|gKLW>j$5@QpBlF#)pJu9TwrO0c=bgO+tV*RGZ7y*%XN~eI@ZWzHIt9MT zn75vZMz;4>?hySqJ%jh)ApI`mT~^+ie@1)xPWw!eg9TqB&R7E<+w}Kx=2DNq%f(ld zGJ9Nnoex}cvG~9Pe=u@K3v;(Tp=<`UTch1dzISMdaV-Dck`_&qJs^bsSW9=3hk5MJ zdV0n1bn#hmd?&QK6`a6tCc2QKbJ&@OrgJU7&fym{i8h>v&b|0c`Za9b>^~9`T(o+! zKEqr0Kk->b>m=sT#ToX3hX(Jcf>)R867w(n&7*^k3?D>SDD(G%7rwBZyO=afqJGAO z^{0$MXq)_IFIMPWFnrL|txF|cR?>}9={6;h1$OAUv~IqrDfuK0IqnZ{qP_(OCCz9j z&k>&U^5m7F@_BWuGUE7EkrkQqvX0n#pxku&F$;f7YphhFwezi%n*EKEf{qWKYnI7SVzldqYLRifpzN2wCF^tJrc8SJ&^T#ZOUuU@%L+w zah1YF$Nx;5R2)3x)r7Tzf2$ z)hg%gyq7bf#%Howbw+{U1iX%Pt=*OPylD|9=~L+z|Kw0OaOjXqcXWr+!G#vFe{q01 zPUqEenmSHbj;nu$^dnW?oey2lx;np?*P#iC%VgeIrP#|WI!~u6T2EKrdwp{_xaNDY zIdT?ajJVV%w`KO>dpx>N!>-OesG{B$HC_@AD>6a*;mOR?)|Jue+qMWw@dfX$92$@x!@Oj^K21&25U|CD4AiCl8NxMN_>UbKSVCD z#Xd1X>s7v$KwGKxxQxL@=3D0(MVEyhP8B-c`W`gxjN+Y%H0$a*--}M`JQEHyy%(L{ zd4}?eh0o%9Xtc3?MoSJhgwycXKwzBMkWyDVd^gWYG_;sJ zt;i-5IcqQdBdu}|v^HRVhcP(o_+48jcziqBTBKDTolG5b93H*_zAkluKhel6ba?m? z=Ym8lsH4pU@1;-3H(PgLYk@Y1{GfPvd=fA~SM=J1j3G2WkiK8)waunpr|ynY**8Go zugZx$i;omMF0bmbXN^TCoux~BK4n3Vs?IoNw~Q|MzHtZ{06cTjc8rC-4!K`1^GWT= z8&0>bboV!@5xmI9g|7R}Up1C$9Ws_~zv|#^|Khe|IW*&K2RDVM!{??}ol|nv2jb}+ zZ_t)OJe~DJtW%lIIu+KfM5+~!Z)a?b{eji8cSF>77~EkjT6V6sE)A9`8x1sHV#I~- z7|7P}Sa>CH7k&#r6}h9G@ka(Z=J3)^WDkd*GR_y1{!DlTGD%s@S#)~J2cM83?BW^d z_4AdC5DrwGu}zVmpc#qIv&L1(#$Wi0QC4UHdp-Y%cgSNhXMVinVrzow+cw${A3t$U z%69mCb~$Z1)9)V;J}+{b?9m~i}Gwt9EZ6!Uw%b9Cw^I_hL%zzvKZh;g1 zvQ#JM!+@fwk5F!b zZbI39#s8pFvfjiRvnM3$gruK>iaCD^vwTZaZvvXboGPQ<$$X2v zLj9hcnY~2l8g%)ba~7obq*3la2fsUq4eOkwgKq*8+KY}A-M*XkmDIg;J981<3Xe5* zx;jf4=_Zp7eMpV%x3{yl!msouBR&?I+riw4dpPrPXd(Iyx==+cIL}(eiYoGFy|Mj> z*nh!?oZbOk{7S~548b>7{)0E8n+1T&Q(4&yF*hc%Zp9fF#zSxd{*v0s7!lK>`lDb4 zEGiE7!hiUdX6*vwv_oL!j9oOs_)LecD16IaBI7UsUai9S;qkz$^&EWwW-<=I;i^}F z8Nas!uWw^J+zOAz4}qMnV(w|H;o|W}q+j5UChNJaafjp_-ke-aAK=e2md-dEQ|QlC zv~Q~0c5jTQn2ZT&#J8E({&2wG>*AL9{&nil#f2-}Aiwx9>~w&0K*Y~)1gSr#ZvaR5 z;}s$!vY)@H>?AT@oiT068&ho(@)>-wTzC65F*wSv z*C} zXVc+bCbCn6d8_ovgq*9ZbVa^jE@g^N60ImZCp3Wa&N@0cIwt(ukxTsW5bAOCf>zOc zvF$jz@8KQAmalw-$O9>4L9eah>&BuBWa$s<7FmZ#J;IZOcMj3MR?&g`d2+6OiSiHB zJ_YxVFAZp))^&0D=?}=?PUZL#uy^^}N$I1a?`HO+&R8%{70mo+k$c&@t#G_5Poc91 z0;yC*TW;)(a@L#goP*5RKZZ7AcnrN*Y!Ki|O4)6u?s+8o2t1VdSb?eVZ#N#$blY&H zf(>+B$yll#@G+sa$N(~qHZr9eHwPb=K{L-9iPp2OU(b;KFb{G(1AOI5C;L__T9?2M<@goPy7lMi zh0NXd1=lxo-p=>r45RjRjCGZpwh4`IA6x&7oj%AO?EK#G(DleX_yVE*dG-rMpa$Zw@p7AlETgq-)&<>fi!`ex@#MYX6CBGcE?i}sK2E|xhq04%A z+JO)GeQXjA?q2yH+9nZE_WSp>0f3V^{Xb`uQ1EF%PW=PgB%Jmf`%pFs)h-Raw!kJ) zfJ+9rl#eS854zv$vvTllK1Ll`3Odmke2%v2%`J|g!&KG=>YxXRq` zmANajD6~oJi_GV=Px0n9^G1;!kq!D>{qSMhS0EeEwjt+16nhbR8*(gbG{kPyN`JqD z>>=^O>Dy;39*PcUbszK*C(e4`D&Rm}BLoiU2g;@uCw_?dbJ;HfTdc^5R`+KN$JUf! z9Au6|E7jO`{3ug&BlfSE*e9Tk+Ox_&VQmn-y40lyq;+g%-&JWM_%JBf>r;w0W6v$v z*8zP(?4=Hl4&!g3f2NXk5@sX3yaas#7*;77nWLx5?kjfP#3zI&E4!|%!$CihM_qcV zd=#C~bIL%MaOH~<(KAzJt}b_Yhhw+alr7qitmdcfe%kIw7m{^sAIyK^=x1$%`Jk3o zYlNo@FYi1nG=GTx{PFwsM|hZRW@iJF9w)9g{x4!|p74VhQzE^@vKW0|vYt2oaAW#!^mH*$v9$^hqQ1;n18%j3qb%Gulf z@1jcH9pc@K$$@P>FE9DI@RAqn^UEHJk4b-0B5%JhZAi6Ke~zcahlr86g7sh@Fg0FZaPrqq&wlJYpHBMg6!Kdw$agr;>=a%U{RcNPnAvKb5=3u7%~4H z`(d_?{LEW#E^CiPBQsfxUxwdsW}kyU<{Y_!79e-@VlTWH z9gF!xoqp&mwAHCsyHE09XSqoFZC!e(I8~N#;==;XbC7>~?Z7+_9v`>cT2-tyFgfDZ zT_tIxudW_^WxL>Znzrp^ZU^_xQEh{!xZkHZ_xK&ijKxL*y`UKQ13T=1N1Xa7OUc^W zDpg0oRCUcklP(c8ZTeVM0X{%zmB+bU(4mE9ueC*GJ20yJgdmS#*r#V1~2fd zx8hgt#IJsXZXJF$pXLucMi;F6IQ^ZH-(PobmJ7|7c?qvdJF-7|M^5&qKVt8}f9}rR zw9pBMu6H~NObTo(*aXy`AdH{k&;qdqw758=y(xBF(Yu+mp?-S-zKArmz-i-0*kg!& z8)<{+)bI^sXIr!A2F9*^%@X5io5Z&4MF(XqRqR+6xSu5cAQ*@~x3?+!-F;1xC%Sd- zO3o@=nc9gQfsR4^ATkl_)wga}Iu~Q@^K35Qz1ru1z8H!=)0VD{McrZUN;h-l_n$dB znnoO-z{*_r{;*0sreHNs`G_B){2ZPy<3c-} zIMtS>^TAx`aB6#EC4SkJndF}n2X6Ys|AWtKrM1>9#y+80a{?u)?OA+6&=s){ZUr{@ zj?~!5*p@0^+*;{B_Dklpsb#Xewb+~=v6nP)t51lHF3p&YWj&Ya_QQOtUEtD|ecCn` z`JA@K*BW!O+O{Im7wKPM4>XuDz!oGnAZ6b>&p6olDP&#={c!y@|13O1`Xc@4`h4JB zrMIi`NNTAbBU|Jx943g{BT9+3? zq#Ke3M9XG#Mn`{KsqkY5|25Vq_Jm~p>`7QhkzBSkf zE$Q<7$J_GqMT3%W2p_b{bEMw~J)jK9m#bTq5m$CxvFnLn&?+^FlR4fOo%$?zKbN>i zkzFNLrB!UiJq`@DUr1Wxc6m>%oZ#?O_95_p$CtXQ>YQ;k_Tw!66XK(YrSglvmRKt0 zV~rmD_Iy2D{A1Q#$93lAAXrrkJj?FP!v&C{WD{iwtbbVGOi=um!lJP*luB4Zv(YT?BJVhTEY z-94>|DUfvTcpj3N0!f#Zbi@>N_J*HG=;3>I>e!P=+n+CrPGI}p@qB`qf_n~08e$40 z5967aC%=p+_L^MXstm>xAAah}buymV?j){Yliw(xE5DJ|T6pd%qPlX4_<*A^PpIConhud@%H{$4Ea6W zJdkhs^B^x@bcEy^VjieGdGlaE87iMQ2UQuw<>8+~HtTbA&NzD!E12YTg`wp6%Dp1* z?fd4icB!c77cYvvy#Pi|zB%7If4*CKht9X}+vm^s;;^wE|KG@3@o(nlA2RuHc;(1i zsV&3J!6-jby;t)heE*Lw(69-4MXXslFKLlS~ z92rthiV~;FK8@IntFb43QTnFjCPVy#9{s(Tm_doLYBRydq3N*8$NuaOM1u#(M$lj# z8mwa<(TTAY8;O#YE|>;)sCd_}=9ak zs~!xb|KoqxhmFFJ{Q!pKc~N)1RUQ-H-uOn@Z$)Gxec2Jsr=AKpIXoCmM^?QN7J_~GL6M`+WK@y_($^lTksXJk$BDCE~tW$$p~ ziX1;=o*lwz-vV%8Xgh?W6)mmNX*02V;RB4!6#tuw<#hdRUv&H?RkX>oizPaheZ`SK zf9mK1^w-m!u;=A)6yLt^vS_3e-h_Qcr!la$HfH_#@KW^-0T1c_K$y5R zyI|hrx0yUX@!RIlCCTHo3)yx{b`Xy!%%2!CzsD~wyqvT?R6D$Km_tMIogAMLI0k{^ z?Yr1dhq*-Tot#x5_$KpKc#y<=TO~z-etlhw3k@cYE$-6r%gM|B!$qX!D&u0`qA2HU zMz6X7ec@Sb2>jNHh<6ftuw8T;>Htoqd(^tl;dF6lT(ke=+Qznq6&_Hpqocm=d{6(g zl;{3Fcs{*c^l|aMxaECC`2o=-i2=c808N|4`WDtN#7-TgjqrqkCiJO*HUc}&{Undr z=KSO%u15J$fMYar1U){>+E8rG5{nIP<>Cb=$Zvcrnv#{j;nMq@d`&%`-=P5S+84ZO zVS8l_B=(TxPY&TLJ*51m<&Sa6t1FSK2)9f6-Yw0$dM zByxxBp`&aVr(~S%_2~VzpZSPE9GG$Sde%9N0B6{rhjaL>?(cB^?d|fLIW4*Yz8y{U zijL{A0Q-fO{TN)r{y-WT%O@4xWz92t;zjWTMazl>H%3U=sjDb^J-#9-Fa0;f*`37a zycL{bZjo1&?c^_&eN4UlPFohtwi=!t<+Npi(-v^jX^U17TX&W0T@td|iv0?wytX>! zjgWrvofynkY!}7Ug{~ugd0qO#fo<6Fgzphw7cwf=6ZaZ;SNfppF8a)Dfkmv1J%GOS zEP9p;4}oQ_4IP)snRL;ztMoAC$ee(d7|erV*EWG4j$Ia7DQzMqM8#y}+9zc@?VH2e z4b~&LHb!`_#2NM5`OJ46UIxCx%bYj|+Tg|)$UL&mG;2JtUB(rz-Z^j%;CDb?{V45s zi6=x zZT*R~+g>+D#Y;xpW~~Bea`Xc`X3m%C(Gr&?{;pkQl(zI~@#i>W+A>T0tO7&TE{C3q zJ-2}Nh@7c>ZqdQMHss!dn6!bm5{b{X?g)g$-kaJnN91IGYDb&k25bC1d!sWaZ1JHu zGSA4NXDyM}qopOePpTN#5U+lkKlZs9;pCqnq5HA%z8f$~z*X>p7QUq4vOQ4S{D}ulp z|8;p#_NL}sGaVlow(KhE?!>l>jRIU0J1_H0?2*WYLZ4*5b^O*K))L<`v;$wUn!jaY z8!OPuXpdvBW=)3F)%8}kJ6zPFdG&Q&YIe(<7hH3B&T=VFd}i)*?QngPc_)1lTOQ*U zQhho_Uw-dCwfy%F)F*Jp=~MZ8=kJrYsIX7kAX~1?ePSGBt|;A#K07kv09+4;*dvWS zNQIY6ETubV-m~G^j89)U=*bP7Ni!gC3RtOl(?_xn-$ynOJk77u(IsE}YW_P{&Mc5G zJld+{j0AJ1jIx9l{h`;Os`=KD>aP7TPw5p3qmH({@Al=q#WQf?GrMXGnQN$r#Mh z0zaAJH3{?%c#T7YUjF~pPxidnDO#HHVe+JU7jNw6p9$l9GN#a6e8}(*&!-#zXW%yM z7#lm&dTK7?ygflY%0ACW4(%&-VlG*i<9{T6&yb_?Q`ZPDF|+4pu_ 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

    Q;3mj61q;!M|14*A;zFRygl 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 KPFJ7cUiW{lcUGzZ literal 443716 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 github.com/morph-l2/tendermint v0.3.1 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 require ( github.com/holiman/uint256 v1.2.4 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 + github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/tx-submitter/go.sum b/tx-submitter/go.sum index 562713a79..f47a4ef96 100644 --- a/tx-submitter/go.sum +++ b/tx-submitter/go.sum @@ -164,10 +164,10 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263 h1:/yZ9MGwCQtabc8nWFEEat8ddDhjqwobpl96Gvb7BlF0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241224102336-50a1ac889263/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.1 h1:yqyM3/p9sCNmFSsIFeIxS5RBgXHWqbtyNHx16I9cIZ0= -github.com/morph-l2/tendermint v0.3.1/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= +github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= +github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/tx-submitter/iface/batch_fetcher.go b/tx-submitter/iface/batch_fetcher.go new file mode 100644 index 000000000..0bf3bb16d --- /dev/null +++ b/tx-submitter/iface/batch_fetcher.go @@ -0,0 +1,8 @@ +package iface + +import "github.com/morph-l2/go-ethereum/eth" + +// BatchFetcher defines the interface for fetching batch data from nodes +type BatchFetcher interface { + GetRollupBatchByIndex(index uint64) (*eth.RPCRollupBatch, error) +} diff --git a/tx-submitter/iface/metrics.go b/tx-submitter/iface/metrics.go new file mode 100644 index 000000000..6b34a82d2 --- /dev/null +++ b/tx-submitter/iface/metrics.go @@ -0,0 +1,7 @@ +package iface + +type IMetrics interface { + // Reorg metrics + IncReorgs() + SetReorgDepth(depth float64) +} diff --git a/tx-submitter/iface/reorg_detector.go b/tx-submitter/iface/reorg_detector.go new file mode 100644 index 000000000..896c4db37 --- /dev/null +++ b/tx-submitter/iface/reorg_detector.go @@ -0,0 +1,13 @@ +package iface + +import "context" + +// IReorgDetector defines the interface for chain reorganization detection +type IReorgDetector interface { + // DetectReorg checks if a chain reorganization has occurred + // Returns: + // - bool: whether a reorg was detected + // - uint64: the depth of the reorg (number of blocks from head) + // - error: any error that occurred during detection + DetectReorg(ctx context.Context) (bool, uint64, error) +} diff --git a/tx-submitter/localpool/journal.go b/tx-submitter/localpool/journal.go index ca918f106..5b17d07cc 100644 --- a/tx-submitter/localpool/journal.go +++ b/tx-submitter/localpool/journal.go @@ -82,7 +82,7 @@ func (j *Journal) ParseAllTxs() ([]*types.Transaction, error) { content, err := readFileContent(j.path) if err != nil { - return nil, fmt.Errorf("failed to parse txs: %w", err) + return nil, fmt.Errorf("failed to read journal file: %w", err) } if len(content) == 0 { diff --git a/tx-submitter/metrics/metrics.go b/tx-submitter/metrics/metrics.go index 2b09d467c..0e3b83f01 100644 --- a/tx-submitter/metrics/metrics.go +++ b/tx-submitter/metrics/metrics.go @@ -4,111 +4,194 @@ import ( "net" "net/http" "strconv" + "sync/atomic" "github.com/prometheus/client_golang/prometheus" - "github.com/prometheus/client_golang/prometheus/promauto" "github.com/prometheus/client_golang/prometheus/promhttp" ) -const metricsNamespace = "submitter" - +// Metrics represents the metrics collection for the tx-submitter type Metrics struct { - RpcErrors prometheus.Counter WalletBalance prometheus.Gauge - RollupCostSum prometheus.Counter - FinalizeCostSum prometheus.Counter + RpcErrors prometheus.Counter + RollupCostSum prometheus.Gauge + FinalizeCostSum prometheus.Gauge RollupCost prometheus.Gauge FinalizeCost prometheus.Gauge - CollectedL1FeeSum prometheus.Counter - CollectedL1Fee prometheus.Gauge + CollectedL1FeeSum prometheus.Gauge IndexerBlockProcessed prometheus.Gauge + LastCommittedBatch prometheus.Gauge + LastFinalizedBatch prometheus.Gauge + reorgs prometheus.Counter + reorgDepthVal uint64 + reorgCountVal uint64 + confirmedTxs *prometheus.CounterVec } +// NewMetrics creates a new Metrics instance func NewMetrics() *Metrics { - - return &Metrics{ - RpcErrors: promauto.NewCounter(prometheus.CounterOpts{ - Name: "submitter_rpc_errors", - Help: "Number of RPC errors encountered", - Namespace: metricsNamespace, + m := &Metrics{ + WalletBalance: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_wallet_balance", + Help: "Current balance of the submitter wallet in ETH", }), - WalletBalance: promauto.NewGauge(prometheus.GaugeOpts{ - Name: "submitter_wallet_balance", - Help: "Wallet balance", - Namespace: metricsNamespace, + RpcErrors: prometheus.NewCounter(prometheus.CounterOpts{ + Name: "tx_submitter_rpc_errors_total", + Help: "Total number of RPC errors encountered", }), - RollupCostSum: promauto.NewCounter(prometheus.CounterOpts{ - Name: "submitter_rollup_cost_sum", - Help: "Rollup cost", - Namespace: metricsNamespace, + RollupCostSum: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_rollup_cost_sum", + Help: "Total cost of rollup transactions in ETH", }), - FinalizeCostSum: promauto.NewCounter(prometheus.CounterOpts{ - Name: "submitter_finalize_cost_sum", - Help: "Finalize cost", - Namespace: metricsNamespace, + FinalizeCostSum: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_finalize_cost_sum", + Help: "Total cost of finalize transactions in ETH", }), - RollupCost: promauto.NewGauge(prometheus.GaugeOpts{ - Name: "submitter_rollup_cost", - Help: "Rollup cost", - Namespace: metricsNamespace, + RollupCost: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_rollup_cost", + Help: "Current rollup transaction cost in ETH", }), - FinalizeCost: promauto.NewGauge(prometheus.GaugeOpts{ - Name: "submitter_finalize_cost", - Help: "Finalize cost", - Namespace: metricsNamespace, + FinalizeCost: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_finalize_cost", + Help: "Current finalize transaction cost in ETH", }), - CollectedL1Fee: promauto.NewGauge(prometheus.GaugeOpts{ - Name: "submitter_collected_l1_fee", - Help: "Collected L1 fee for every batch", - Namespace: metricsNamespace, + CollectedL1FeeSum: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_collected_l1_fee_sum", + Help: "Total L1 fees collected in ETH", }), - CollectedL1FeeSum: promauto.NewCounter(prometheus.CounterOpts{ - Name: "submitter_collected_l1_fee_sum", - Help: "Collected L1 fee for all batches committed ", - Namespace: metricsNamespace, + IndexerBlockProcessed: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_indexer_block_processed", + Help: "Latest block number processed by the indexer", }), - - IndexerBlockProcessed: promauto.NewGauge(prometheus.GaugeOpts{ - Name: "submitter_indexer_block_processed", - Help: "Indexer block processed", - Namespace: metricsNamespace, + LastCommittedBatch: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_last_committed_batch", + Help: "Latest batch committed by the submitter", + }), + LastFinalizedBatch: prometheus.NewGauge(prometheus.GaugeOpts{ + Name: "tx_submitter_last_finalized_batch", + Help: "Latest batch finalized by the submitter", }), + reorgs: prometheus.NewCounter(prometheus.CounterOpts{ + Name: "tx_submitter_reorgs_total", + Help: "Total number of chain reorganizations detected", + }), + confirmedTxs: prometheus.NewCounterVec( + prometheus.CounterOpts{ + Name: "tx_submitter_confirmed_txs_total", + Help: "Total number of confirmed transactions by type", + }, + []string{"type"}, + ), } -} -func (m *Metrics) Serve(hostname string, port uint64) (*http.Server, error) { - mux := http.NewServeMux() - mux.Handle("/metrics", promhttp.Handler()) - srv := new(http.Server) - srv.Addr = net.JoinHostPort(hostname, strconv.FormatUint(port, 10)) - srv.Handler = mux - err := srv.ListenAndServe() - return srv, err + // Register metrics with Prometheus + // We use Register instead of MustRegister to avoid panics if metrics are already registered + _ = prometheus.Register(m.WalletBalance) + _ = prometheus.Register(m.RpcErrors) + _ = prometheus.Register(m.RollupCostSum) + _ = prometheus.Register(m.FinalizeCostSum) + _ = prometheus.Register(m.RollupCost) + _ = prometheus.Register(m.FinalizeCost) + _ = prometheus.Register(m.CollectedL1FeeSum) + _ = prometheus.Register(m.IndexerBlockProcessed) + _ = prometheus.Register(m.LastCommittedBatch) + _ = prometheus.Register(m.LastFinalizedBatch) + _ = prometheus.Register(m.reorgs) + _ = prometheus.Register(m.confirmedTxs) + + return m } +// SetWalletBalance sets the wallet balance metric func (m *Metrics) SetWalletBalance(balance float64) { m.WalletBalance.Set(balance) } +// IncRpcErrors increments the RPC error counter func (m *Metrics) IncRpcErrors() { m.RpcErrors.Inc() } +// SetRollupCost sets the rollup cost metrics func (m *Metrics) SetRollupCost(cost float64) { - m.RollupCostSum.Add(cost) + m.RollupCostSum.Set(cost) m.RollupCost.Set(cost) } +// SetFinalizeCost sets the finalize cost metrics func (m *Metrics) SetFinalizeCost(cost float64) { - m.FinalizeCostSum.Add(cost) + m.FinalizeCostSum.Set(cost) m.FinalizeCost.Set(cost) } +// SetCollectedL1Fee sets the collected L1 fee metric func (m *Metrics) SetCollectedL1Fee(cost float64) { - m.CollectedL1FeeSum.Add(cost) - m.CollectedL1Fee.Set(cost) + m.CollectedL1FeeSum.Set(cost) } +// SetIndexerBlockProcessed sets the indexer block processed metric func (m *Metrics) SetIndexerBlockProcessed(blockNumber uint64) { m.IndexerBlockProcessed.Set(float64(blockNumber)) } + +// SetLastCommittedBatch sets the last committed batch index metric +func (m *Metrics) SetLastCommittedBatch(index uint64) { + m.LastCommittedBatch.Set(float64(index)) +} + +// SetLastFinalizedBatch sets the last finalized batch index metric +func (m *Metrics) SetLastFinalizedBatch(index uint64) { + m.LastFinalizedBatch.Set(float64(index)) +} + +// IncReorgs increments the reorg counter +func (m *Metrics) IncReorgs() { + atomic.AddUint64(&m.reorgCountVal, 1) + m.reorgs.Inc() +} + +// SetReorgDepth sets the reorg depth metric +func (m *Metrics) SetReorgDepth(depth float64) { + atomic.StoreUint64(&m.reorgDepthVal, uint64(depth)) +} + +// GetReorgDepth gets the current reorg depth +func (m *Metrics) GetReorgDepth() float64 { + return float64(atomic.LoadUint64(&m.reorgDepthVal)) +} + +// GetReorgCount gets the current reorg count +func (m *Metrics) GetReorgCount() float64 { + return float64(atomic.LoadUint64(&m.reorgCountVal)) +} + +// IncTxConfirmed increments the confirmed transaction counter for a given type +func (m *Metrics) IncTxConfirmed(txType string) { + m.confirmedTxs.WithLabelValues(txType).Inc() +} + +func (m *Metrics) Serve(hostname string, port uint64) (*http.Server, error) { + mux := http.NewServeMux() + mux.Handle("/metrics", promhttp.Handler()) + srv := new(http.Server) + srv.Addr = net.JoinHostPort(hostname, strconv.FormatUint(port, 10)) + srv.Handler = mux + err := srv.ListenAndServe() + return srv, err +} + +// UnregisterMetrics unregisters all metrics from the default registry +func (m *Metrics) UnregisterMetrics() { + prometheus.Unregister(m.WalletBalance) + prometheus.Unregister(m.RpcErrors) + prometheus.Unregister(m.RollupCostSum) + prometheus.Unregister(m.FinalizeCostSum) + prometheus.Unregister(m.RollupCost) + prometheus.Unregister(m.FinalizeCost) + prometheus.Unregister(m.CollectedL1FeeSum) + prometheus.Unregister(m.IndexerBlockProcessed) + prometheus.Unregister(m.LastCommittedBatch) + prometheus.Unregister(m.LastFinalizedBatch) + prometheus.Unregister(m.reorgs) + prometheus.Unregister(m.confirmedTxs) +} diff --git a/tx-submitter/mock/db.go b/tx-submitter/mock/db.go new file mode 100644 index 000000000..2eb44844f --- /dev/null +++ b/tx-submitter/mock/db.go @@ -0,0 +1,55 @@ +package mock + +import ( + "strconv" + "sync" + + "morph-l2/tx-submitter/db" +) + +type MockDB struct { + store map[string]string + m sync.RWMutex +} + +func NewMockDB() *MockDB { + return &MockDB{ + store: make(map[string]string), + } +} + +func (d *MockDB) GetString(key string) (string, error) { + d.m.RLock() + defer d.m.RUnlock() + if val, ok := d.store[key]; ok { + return val, nil + } + return "", db.ErrKeyNotFound +} + +func (d *MockDB) PutString(key, val string) error { + d.m.Lock() + defer d.m.Unlock() + d.store[key] = val + return nil +} + +func (d *MockDB) GetFloat(key string) (float64, error) { + d.m.RLock() + defer d.m.RUnlock() + if val, ok := d.store[key]; ok { + return strconv.ParseFloat(val, 64) + } + return 0, db.ErrKeyNotFound +} + +func (d *MockDB) PutFloat(key string, val float64) error { + d.m.Lock() + defer d.m.Unlock() + d.store[key] = strconv.FormatFloat(val, 'f', -1, 64) + return nil +} + +func (d *MockDB) Close() error { + return nil +} diff --git a/tx-submitter/mock/event_storage.go b/tx-submitter/mock/event_storage.go new file mode 100644 index 000000000..e26087720 --- /dev/null +++ b/tx-submitter/mock/event_storage.go @@ -0,0 +1,26 @@ +package mock + +import ( + "morph-l2/tx-submitter/event" +) + +// MockEventInfoStorage is a mock implementation of the EventInfoStorage +type MockEventInfoStorage struct { + event.EventInfoStorage +} + +// NewMockEventInfoStorage creates a new mock EventInfoStorage +func NewMockEventInfoStorage() *event.EventInfoStorage { + mockDB := NewMockDB() + return event.NewEventInfoStorage(mockDB) +} + +// Store implements the Store method +func (m *MockEventInfoStorage) Store() error { + return nil +} + +// Load implements the Load method +func (m *MockEventInfoStorage) Load() error { + return nil +} diff --git a/tx-submitter/mock/journal.go b/tx-submitter/mock/journal.go new file mode 100644 index 000000000..abe25dec6 --- /dev/null +++ b/tx-submitter/mock/journal.go @@ -0,0 +1,34 @@ +package mock + +import ( + "github.com/morph-l2/go-ethereum/core/types" +) + +// MockJournal is a mock implementation of the journal interface for testing +type MockJournal struct { + txs []*types.Transaction +} + +func NewMockJournal() *MockJournal { + return &MockJournal{ + txs: make([]*types.Transaction, 0), + } +} + +func (j *MockJournal) Init() error { + return nil +} + +func (j *MockJournal) AppendTx(tx *types.Transaction) error { + j.txs = append(j.txs, tx) + return nil +} + +func (j *MockJournal) ParseAllTxs() ([]*types.Transaction, error) { + return j.txs, nil +} + +func (j *MockJournal) Clean() error { + j.txs = make([]*types.Transaction, 0) + return nil +} diff --git a/tx-submitter/mock/l1client.go b/tx-submitter/mock/l1client.go new file mode 100644 index 000000000..92565d65c --- /dev/null +++ b/tx-submitter/mock/l1client.go @@ -0,0 +1,240 @@ +package mock + +import ( + "context" + "fmt" + "math/big" + + "github.com/morph-l2/go-ethereum" + "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/core/types" + "github.com/morph-l2/go-ethereum/ethclient" +) + +// L1ClientWrapper is a mock implementation of the L1 client interface +type L1ClientWrapper struct { + *ethclient.Client + Block *types.Block + TipCap *big.Int + SendTxErr error + MockReorg bool + MockReorgDepth uint64 + CallContractErr error + CallContractResult []byte + CodeAtErr error + CodeAtResult []byte + BaseFee *big.Int + Header *types.Header + // Track transactions and their status + transactions map[common.Hash]*types.Transaction + receipts map[common.Hash]*types.Receipt + // Track block history for reorg simulation + blockHistory map[uint64]*types.Block + // Track original block hashes before reorg + originalHashes map[uint64]common.Hash +} + +// FilterLogs implements iface.Client. +func (l *L1ClientWrapper) FilterLogs(ctx context.Context, query ethereum.FilterQuery) ([]types.Log, error) { + panic("unimplemented") +} + +// NonceAt implements iface.Client. +func (l *L1ClientWrapper) NonceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (uint64, error) { + panic("unimplemented") +} + +// PendingCodeAt implements iface.Client. +func (l *L1ClientWrapper) PendingCodeAt(ctx context.Context, account common.Address) ([]byte, error) { + panic("unimplemented") +} + +// SubscribeFilterLogs implements iface.Client. +func (l *L1ClientWrapper) SubscribeFilterLogs(ctx context.Context, query ethereum.FilterQuery, ch chan<- types.Log) (ethereum.Subscription, error) { + panic("unimplemented") +} + +// SuggestGasPrice implements iface.Client. +func (l *L1ClientWrapper) SuggestGasPrice(ctx context.Context) (*big.Int, error) { + panic("unimplemented") +} + +// NewL1ClientWrapper creates a new mock L1 client wrapper +func NewL1ClientWrapper() *L1ClientWrapper { + header := &types.Header{ + Number: big.NewInt(100), + Time: uint64(1234567890), + BaseFee: big.NewInt(1e9), + ExcessBlobGas: new(uint64), + } + *header.ExcessBlobGas = 0 + block := types.NewBlockWithHeader(header) + return &L1ClientWrapper{ + Client: nil, + Block: block, + TipCap: big.NewInt(1e9), + BaseFee: big.NewInt(1e9), + Header: header, + transactions: make(map[common.Hash]*types.Transaction), + receipts: make(map[common.Hash]*types.Receipt), + blockHistory: make(map[uint64]*types.Block), + originalHashes: make(map[uint64]common.Hash), + } +} + +// BlockNumber returns the current block number +func (l *L1ClientWrapper) BlockNumber(ctx context.Context) (uint64, error) { + if l.Block != nil { + return l.Block.NumberU64(), nil + } + return 0, nil +} + +// HeaderByNumber returns the block header at the given number +func (l *L1ClientWrapper) HeaderByNumber(ctx context.Context, number *big.Int) (*types.Header, error) { + if l.Header != nil { + if l.Header.ExcessBlobGas == nil { + l.Header.ExcessBlobGas = new(uint64) + *l.Header.ExcessBlobGas = 0 + } + return l.Header, nil + } + return nil, ethereum.NotFound +} + +// BlockByNumber returns the block at the given number +func (l *L1ClientWrapper) BlockByNumber(ctx context.Context, number *big.Int) (*types.Block, error) { + if number == nil { + return l.Block, nil + } + + blockNum := number.Uint64() + if l.MockReorg && blockNum > l.MockReorgDepth { + // If we haven't stored the original hash, store it + if _, ok := l.originalHashes[blockNum]; !ok { + if block, ok := l.blockHistory[blockNum]; ok { + l.originalHashes[blockNum] = block.Hash() + } + } + + // Return a block with a different hash to simulate reorg + header := &types.Header{ + Number: number, + Time: uint64(1234567890), + ParentHash: common.HexToHash("0x" + fmt.Sprintf("%x", blockNum+1)), + BaseFee: big.NewInt(1e9), + ExcessBlobGas: new(uint64), + } + *header.ExcessBlobGas = 0 + block := types.NewBlockWithHeader(header) + l.blockHistory[blockNum] = block + l.SimulateReorg() + return block, nil + } + + if block, ok := l.blockHistory[blockNum]; ok { + return block, nil + } + + // For blocks before reorg depth, return blocks with consistent hashes + header := &types.Header{ + Number: number, + Time: uint64(1234567890), + ParentHash: common.HexToHash("0x" + fmt.Sprintf("%x", blockNum)), + BaseFee: big.NewInt(1e9), + ExcessBlobGas: new(uint64), + } + *header.ExcessBlobGas = 0 + block := types.NewBlockWithHeader(header) + l.blockHistory[blockNum] = block + return block, nil +} + +func (l *L1ClientWrapper) CallContract(ctx context.Context, msg ethereum.CallMsg, blockNumber *big.Int) ([]byte, error) { + if l.CallContractErr != nil { + return nil, l.CallContractErr + } + return l.CallContractResult, nil +} + +func (l *L1ClientWrapper) TransactionReceipt(ctx context.Context, txHash common.Hash) (*types.Receipt, error) { + if l.MockReorg { + // During reorg, all transactions should be considered missing + return nil, ethereum.NotFound + } + if receipt, ok := l.receipts[txHash]; ok { + return receipt, nil + } + return nil, ethereum.NotFound +} + +func (l *L1ClientWrapper) TransactionByHash(ctx context.Context, hash common.Hash) (tx *types.Transaction, isPending bool, err error) { + if l.MockReorg { + // During reorg, all transactions should be considered missing + return nil, false, ethereum.NotFound + } + if tx, ok := l.transactions[hash]; ok { + // If there's no receipt, the transaction is pending + // If there's a receipt, the transaction is not pending + _, hasReceipt := l.receipts[hash] + return tx, !hasReceipt, nil + } + return nil, false, ethereum.NotFound +} + +func (l *L1ClientWrapper) PendingNonceAt(ctx context.Context, account common.Address) (uint64, error) { + return 0, nil +} + +func (l *L1ClientWrapper) SuggestGasTipCap(ctx context.Context) (*big.Int, error) { + return l.TipCap, nil +} + +func (l *L1ClientWrapper) EstimateGas(ctx context.Context, msg ethereum.CallMsg) (uint64, error) { + return 21000, nil +} + +func (l *L1ClientWrapper) SendTransaction(ctx context.Context, tx *types.Transaction) error { + if l.SendTxErr != nil { + return l.SendTxErr + } + l.transactions[tx.Hash()] = tx + if !l.MockReorg { + // Only create a receipt if we're not in reorg mode + l.receipts[tx.Hash()] = &types.Receipt{ + TxHash: tx.Hash(), + BlockNumber: l.Block.Number(), + Status: 1, // Success + } + } + return nil +} + +func (l *L1ClientWrapper) BalanceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) { + return big.NewInt(1e18), nil +} + +// CodeAt mocks the CodeAt method +func (l *L1ClientWrapper) CodeAt(ctx context.Context, contract common.Address, blockNumber *big.Int) ([]byte, error) { + if l.CodeAtErr != nil { + return nil, l.CodeAtErr + } + return l.CodeAtResult, nil +} + +// SimulateReorg simulates a reorg by clearing transaction receipts +func (l *L1ClientWrapper) SimulateReorg() { + l.receipts = make(map[common.Hash]*types.Receipt) +} + +func (l *L1ClientWrapper) AddTx(tx *types.Transaction) { + l.transactions[tx.Hash()] = tx +} +func (l *L1ClientWrapper) AddReceipt(receipt *types.Receipt) { + l.receipts[receipt.TxHash] = receipt +} + +// ClearReceipts removes all receipts to simulate reorg +func (l *L1ClientWrapper) ClearReceipts() { + l.receipts = make(map[common.Hash]*types.Receipt) +} diff --git a/tx-submitter/mock/l1mock.go b/tx-submitter/mock/l1mock.go deleted file mode 100644 index 10dccef62..000000000 --- a/tx-submitter/mock/l1mock.go +++ /dev/null @@ -1,87 +0,0 @@ -package mock - -import ( - "context" - "math/big" - - "github.com/morph-l2/go-ethereum" - "github.com/morph-l2/go-ethereum/common" - "github.com/morph-l2/go-ethereum/core/types" -) - -type L1ClientWrapper struct { - Block *types.Block - TipCap *big.Int -} - -func NewL1ClientWrapper() *L1ClientWrapper { - return &L1ClientWrapper{} -} - -func (c *L1ClientWrapper) BlockByNumber(ctx context.Context, number *big.Int) (*types.Block, error) { - return nil, nil -} - -func (c *L1ClientWrapper) BalanceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) { - return big.NewInt(0), nil -} - -func (c *L1ClientWrapper) TransactionByHash(ctx context.Context, hash common.Hash) (tx *types.Transaction, isPending bool, err error) { - return nil, false, nil -} - -func (c *L1ClientWrapper) NonceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (uint64, error) { - return 0, nil -} - -func (c *L1ClientWrapper) TransactionReceipt(ctx context.Context, txHash common.Hash) (*types.Receipt, error) { - return nil, nil -} - -func (c *L1ClientWrapper) HeaderByNumber(ctx context.Context, number *big.Int) (*types.Header, error) { - return c.Block.Header(), nil -} - -func (c *L1ClientWrapper) BlockNumber(ctx context.Context) (uint64, error) { - return c.Block.NumberU64(), nil -} - -func (c *L1ClientWrapper) SubscribeNewHead(ctx context.Context, ch chan<- *types.Header) (ethereum.Subscription, error) { - ch <- c.Block.Header() - return nil, nil -} - -func (c *L1ClientWrapper) SetBlock(block *types.Block) { - c.Block = block -} -func (c *L1ClientWrapper) CodeAt(ctx context.Context, contract common.Address, blockNumber *big.Int) ([]byte, error) { - return nil, nil -} - -func (c *L1ClientWrapper) CallContract(ctx context.Context, call ethereum.CallMsg, blockNumber *big.Int) ([]byte, error) { - return nil, nil -} -func (c *L1ClientWrapper) PendingCodeAt(ctx context.Context, account common.Address) ([]byte, error) { - return nil, nil -} -func (c *L1ClientWrapper) PendingNonceAt(ctx context.Context, account common.Address) (uint64, error) { - return 0, nil -} -func (c *L1ClientWrapper) SuggestGasPrice(ctx context.Context) (*big.Int, error) { - return big.NewInt(0), nil -} -func (c *L1ClientWrapper) SuggestGasTipCap(ctx context.Context) (*big.Int, error) { - return c.TipCap, nil -} -func (c *L1ClientWrapper) EstimateGas(ctx context.Context, call ethereum.CallMsg) (gas uint64, err error) { - return 0, nil -} -func (c *L1ClientWrapper) SendTransaction(ctx context.Context, tx *types.Transaction) error { - return nil -} -func (c *L1ClientWrapper) FilterLogs(ctx context.Context, query ethereum.FilterQuery) ([]types.Log, error) { - return nil, nil -} -func (c *L1ClientWrapper) SubscribeFilterLogs(ctx context.Context, query ethereum.FilterQuery, ch chan<- types.Log) (ethereum.Subscription, error) { - return nil, nil -} diff --git a/tx-submitter/mock/l1staking.go b/tx-submitter/mock/l1staking.go new file mode 100644 index 000000000..08939b834 --- /dev/null +++ b/tx-submitter/mock/l1staking.go @@ -0,0 +1,62 @@ +package mock + +import ( + "math/big" + + "github.com/morph-l2/go-ethereum/accounts/abi/bind" + "github.com/morph-l2/go-ethereum/common" +) + +// MockL1Staking is a mock implementation of IL1Staking +type MockL1Staking struct { + activeStakers []common.Address +} + +// NewMockL1Staking creates a new mock L1Staking instance +func NewMockL1Staking() *MockL1Staking { + return &MockL1Staking{ + activeStakers: []common.Address{}, + } +} + +// IsStaker implements IL1Staking +func (m *MockL1Staking) IsStaker(opts *bind.CallOpts, addr common.Address) (bool, error) { + for _, staker := range m.activeStakers { + if staker == addr { + return true, nil + } + } + return false, nil +} + +// GetStakersBitmap implements IL1Staking +func (m *MockL1Staking) GetStakersBitmap(opts *bind.CallOpts, _stakers []common.Address) (*big.Int, error) { + bitmap := big.NewInt(0) + for i, staker := range _stakers { + for _, activeStaker := range m.activeStakers { + if staker == activeStaker { + bitmap.SetBit(bitmap, i, 1) + } + } + } + return bitmap, nil +} + +// GetActiveStakers implements IL1Staking +func (m *MockL1Staking) GetActiveStakers(opts *bind.CallOpts) ([]common.Address, error) { + return m.activeStakers, nil +} + +// GetStakers implements IL1Staking +func (m *MockL1Staking) GetStakers(opts *bind.CallOpts) ([255]common.Address, error) { + var result [255]common.Address + for i := 0; i < len(m.activeStakers) && i < 255; i++ { + result[i] = m.activeStakers[i] + } + return result, nil +} + +// SetActiveStakers sets the active stakers for testing +func (m *MockL1Staking) SetActiveStakers(stakers []common.Address) { + m.activeStakers = stakers +} diff --git a/tx-submitter/mock/l2client.go b/tx-submitter/mock/l2client.go new file mode 100644 index 000000000..4613b5b0b --- /dev/null +++ b/tx-submitter/mock/l2client.go @@ -0,0 +1,214 @@ +package mock + +import ( + "context" + "math/big" + "time" + + "github.com/morph-l2/go-ethereum" + "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/core/types" + "github.com/morph-l2/go-ethereum/eth" +) + +// L2ClientWrapper is a mock implementation of iface.L2Client +type L2ClientWrapper struct { + CallContractErr error + CallContractResult []byte + BlockByNumberErr error + Block *types.Block + Balance *big.Int + TipCap *big.Int + reorgDepth int64 + reorgCount int64 + sequencerSet []common.Address + BaseFee *big.Int +} + +func NewL2ClientWrapper() *L2ClientWrapper { + // Create mock CallContractResult for epoch update time + // Return a timestamp from 1 hour ago + timestamp := time.Now().Add(-1 * time.Hour).Unix() + result := make([]byte, 32) + big.NewInt(timestamp).FillBytes(result) + + // Create a mock sequencer set with two addresses + mockAddr1 := common.HexToAddress("0x1111111111111111111111111111111111111111") + mockAddr2 := common.HexToAddress("0x2222222222222222222222222222222222222222") + sequencerSet := []common.Address{mockAddr1, mockAddr2} + + return &L2ClientWrapper{ + TipCap: big.NewInt(1e9), + Balance: big.NewInt(1e18), + CallContractResult: result, + sequencerSet: sequencerSet, + BaseFee: big.NewInt(1e9), + } +} + +// CallContract implements the CallContract method +func (l *L2ClientWrapper) CallContract(ctx context.Context, msg ethereum.CallMsg, blockNumber *big.Int) ([]byte, error) { + if l.CallContractErr != nil { + return nil, l.CallContractErr + } + + // If calling the sequencer set method, return the mock sequencer set + if msg.Data != nil && len(msg.Data) >= 4 { + methodID := msg.Data[:4] + // Method ID for GetSequencerSet2() + if string(methodID) == "\x77\xd7\xdf\xfb" { + // Encode the sequencer set into bytes + result := make([]byte, 0) + // First 32 bytes for offset + offset := make([]byte, 32) + big.NewInt(32).FillBytes(offset) + result = append(result, offset...) + // Next 32 bytes for length + length := make([]byte, 32) + big.NewInt(int64(len(l.sequencerSet))).FillBytes(length) + result = append(result, length...) + // Then the addresses + for _, addr := range l.sequencerSet { + addrBytes := make([]byte, 32) + copy(addrBytes[12:], addr.Bytes()) + result = append(result, addrBytes...) + } + return result, nil + } + } + + return l.CallContractResult, nil +} + +// BlockByNumber implements the BlockByNumber method +func (l *L2ClientWrapper) BlockByNumber(ctx context.Context, number *big.Int) (*types.Block, error) { + if l.BlockByNumberErr != nil { + return nil, l.BlockByNumberErr + } + if l.Block != nil { + return l.Block, nil + } + return nil, ethereum.NotFound +} + +// HeaderByNumber implements the HeaderByNumber method +func (l *L2ClientWrapper) HeaderByNumber(ctx context.Context, number *big.Int) (*types.Header, error) { + if l.Block != nil { + return l.Block.Header(), nil + } + return nil, ethereum.NotFound +} + +// BlockNumber implements the BlockNumber method +func (l *L2ClientWrapper) BlockNumber(ctx context.Context) (uint64, error) { + if l.Block != nil { + return l.Block.NumberU64(), nil + } + return 0, nil +} + +// GetReorgDepth returns the mock reorg depth +func (l *L2ClientWrapper) GetReorgDepth() int64 { + return l.reorgDepth +} + +// GetReorgCount returns the mock reorg count +func (l *L2ClientWrapper) GetReorgCount() int64 { + return l.reorgCount +} + +// SetReorgDepth sets the mock reorg depth +func (l *L2ClientWrapper) SetReorgDepth(depth int64) { + l.reorgDepth = depth +} + +// SetReorgCount sets the mock reorg count +func (l *L2ClientWrapper) SetReorgCount(count int64) { + l.reorgCount = count +} + +// BalanceAt implements the BalanceAt method +func (l *L2ClientWrapper) BalanceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) { + if l.Balance != nil { + return l.Balance, nil + } + return big.NewInt(0), nil +} + +// TransactionByHash implements the TransactionByHash method +func (l *L2ClientWrapper) TransactionByHash(ctx context.Context, hash common.Hash) (*types.Transaction, bool, error) { + return nil, false, ethereum.NotFound +} + +// NonceAt implements the NonceAt method +func (l *L2ClientWrapper) NonceAt(ctx context.Context, account common.Address, blockNumber *big.Int) (uint64, error) { + return 0, nil +} + +// TransactionReceipt implements the TransactionReceipt method +func (l *L2ClientWrapper) TransactionReceipt(ctx context.Context, txHash common.Hash) (*types.Receipt, error) { + return nil, ethereum.NotFound +} + +// CodeAt implements bind.ContractCaller +func (l *L2ClientWrapper) CodeAt(ctx context.Context, contract common.Address, blockNumber *big.Int) ([]byte, error) { + return nil, nil +} + +// PendingCodeAt implements bind.ContractCaller +func (l *L2ClientWrapper) PendingCodeAt(ctx context.Context, account common.Address) ([]byte, error) { + return nil, nil +} + +// PendingNonceAt implements bind.ContractTransactor +func (l *L2ClientWrapper) PendingNonceAt(ctx context.Context, account common.Address) (uint64, error) { + return 0, nil +} + +// SuggestGasPrice implements bind.ContractTransactor +func (l *L2ClientWrapper) SuggestGasPrice(ctx context.Context) (*big.Int, error) { + return big.NewInt(1e9), nil +} + +// EstimateGas implements bind.ContractTransactor +func (l *L2ClientWrapper) EstimateGas(ctx context.Context, call ethereum.CallMsg) (uint64, error) { + return 21000, nil +} + +// SendTransaction implements bind.ContractTransactor +func (l *L2ClientWrapper) SendTransaction(ctx context.Context, tx *types.Transaction) error { + return nil +} + +// FilterLogs implements bind.ContractFilterer +func (l *L2ClientWrapper) FilterLogs(ctx context.Context, query ethereum.FilterQuery) ([]types.Log, error) { + return nil, nil +} + +// SubscribeFilterLogs implements bind.ContractFilterer +func (l *L2ClientWrapper) SubscribeFilterLogs(ctx context.Context, query ethereum.FilterQuery, ch chan<- types.Log) (ethereum.Subscription, error) { + return nil, nil +} + +// GetBlockTraceByNumber implements L2Client +func (l *L2ClientWrapper) GetBlockTraceByNumber(ctx context.Context, number *big.Int) (*types.BlockTrace, error) { + return nil, nil +} + +// GetRollupBatchByIndex implements L2Client +func (l *L2ClientWrapper) GetRollupBatchByIndex(ctx context.Context, batchIndex uint64) (*eth.RPCRollupBatch, error) { + return nil, nil +} + +// SuggestGasTipCap implements the SuggestGasTipCap method +func (l *L2ClientWrapper) SuggestGasTipCap(ctx context.Context) (*big.Int, error) { + if l.TipCap != nil { + return l.TipCap, nil + } + return big.NewInt(1e9), nil +} + +// GetSequencerSet2 implements IL2Sequencer +func (m *L2ClientWrapper) GetSequencerSet2() ([]common.Address, error) { + return m.sequencerSet, nil +} diff --git a/tx-submitter/mock/reorg_detector.go b/tx-submitter/mock/reorg_detector.go new file mode 100644 index 000000000..a2eea182f --- /dev/null +++ b/tx-submitter/mock/reorg_detector.go @@ -0,0 +1,49 @@ +package mock + +import ( + "context" + "sync" + + "morph-l2/tx-submitter/iface" +) + +// MockReorgDetector implements the IReorgDetector interface for testing +type MockReorgDetector struct { + mu sync.RWMutex + + // Mock return values + detectReorgReturn struct { + hasReorg bool + reorgDepth uint64 + err error + } +} + +// Ensure MockReorgDetector implements IReorgDetector +var _ iface.IReorgDetector = (*MockReorgDetector)(nil) + +// NewMockReorgDetector creates a new instance of MockReorgDetector +func NewMockReorgDetector() *MockReorgDetector { + m := &MockReorgDetector{} + // Initialize with default values + m.detectReorgReturn.hasReorg = false + m.detectReorgReturn.reorgDepth = 0 + m.detectReorgReturn.err = nil + return m +} + +// DetectReorg implements IReorgDetector.DetectReorg +func (m *MockReorgDetector) DetectReorg(ctx context.Context) (bool, uint64, error) { + m.mu.RLock() + defer m.mu.RUnlock() + return m.detectReorgReturn.hasReorg, m.detectReorgReturn.reorgDepth, m.detectReorgReturn.err +} + +// SetDetectReorgReturn sets the return values for the DetectReorg method +func (m *MockReorgDetector) SetDetectReorgReturn(hasReorg bool, reorgDepth uint64, err error) { + m.mu.Lock() + defer m.mu.Unlock() + m.detectReorgReturn.hasReorg = hasReorg + m.detectReorgReturn.reorgDepth = reorgDepth + m.detectReorgReturn.err = err +} diff --git a/tx-submitter/mock/rollup.go b/tx-submitter/mock/rollup.go new file mode 100644 index 000000000..6dd534ffd --- /dev/null +++ b/tx-submitter/mock/rollup.go @@ -0,0 +1,91 @@ +package mock + +import ( + "math/big" + + "github.com/morph-l2/go-ethereum/core/types" + + "github.com/morph-l2/go-ethereum/accounts/abi/bind" + + "morph-l2/bindings/bindings" +) + +// MockRollup implements the IRollup interface for testing +type MockRollup struct { + lastCommittedBatchIndex *big.Int + lastFinalizedBatchIndex *big.Int + insideChallengeWindow bool + batchExists bool + batchTx *types.Transaction + finalizeTx *types.Transaction +} + +// NewMockRollup creates a new instance of MockRollup +func NewMockRollup() *MockRollup { + return &MockRollup{ + lastCommittedBatchIndex: big.NewInt(0), + lastFinalizedBatchIndex: big.NewInt(0), + insideChallengeWindow: false, + batchExists: false, + } +} + +// LastCommittedBatchIndex implements IRollup +func (m *MockRollup) LastCommittedBatchIndex(opts *bind.CallOpts) (*big.Int, error) { + return m.lastCommittedBatchIndex, nil +} + +// CommitBatch implements IRollup +func (m *MockRollup) CommitBatch(opts *bind.TransactOpts, batchDataInput bindings.IRollupBatchDataInput, batchSignatureInput bindings.IRollupBatchSignatureInput) (*types.Transaction, error) { + return m.batchTx, nil +} + +// LastFinalizedBatchIndex implements IRollup +func (m *MockRollup) LastFinalizedBatchIndex(opts *bind.CallOpts) (*big.Int, error) { + return m.lastFinalizedBatchIndex, nil +} + +// FinalizeBatch implements IRollup +func (m *MockRollup) FinalizeBatch(opts *bind.TransactOpts, data []byte) (*types.Transaction, error) { + return m.finalizeTx, nil +} + +// BatchInsideChallengeWindow implements IRollup +func (m *MockRollup) BatchInsideChallengeWindow(opts *bind.CallOpts, batchIndex *big.Int) (bool, error) { + return m.insideChallengeWindow, nil +} + +// BatchExist implements IRollup +func (m *MockRollup) BatchExist(opts *bind.CallOpts, batchIndex *big.Int) (bool, error) { + return m.batchExists, nil +} + +// SetLastCommittedBatchIndex sets the mock value for LastCommittedBatchIndex +func (m *MockRollup) SetLastCommittedBatchIndex(index *big.Int) { + m.lastCommittedBatchIndex = index +} + +// SetLastFinalizedBatchIndex sets the mock value for LastFinalizedBatchIndex +func (m *MockRollup) SetLastFinalizedBatchIndex(index *big.Int) { + m.lastFinalizedBatchIndex = index +} + +// SetBatchInsideChallengeWindow sets the mock value for BatchInsideChallengeWindow +func (m *MockRollup) SetBatchInsideChallengeWindow(inside bool) { + m.insideChallengeWindow = inside +} + +// SetBatchExists sets the mock value for BatchExist +func (m *MockRollup) SetBatchExists(exists bool) { + m.batchExists = exists +} + +// SetFinalizeTx sets the mock value for FinalizeBatch transaction +func (m *MockRollup) SetFinalizeTx(tx *types.Transaction) { + m.finalizeTx = tx +} + +// SetBatchTx sets the mock value for CommitBatch transaction +func (m *MockRollup) SetBatchTx(tx *types.Transaction) { + m.batchTx = tx +} diff --git a/tx-submitter/services/batch_fetcher.go b/tx-submitter/services/batch_fetcher.go new file mode 100644 index 000000000..7c658ab81 --- /dev/null +++ b/tx-submitter/services/batch_fetcher.go @@ -0,0 +1,39 @@ +package services + +import ( + "context" + "fmt" + "morph-l2/tx-submitter/iface" + + "github.com/morph-l2/go-ethereum/eth" +) + +type BatchFetcher struct { + l2Clients []iface.L2Client +} + +func NewBatchFetcher(l2Clients []iface.L2Client) *BatchFetcher { + return &BatchFetcher{ + l2Clients: l2Clients, + } +} + +func (bf *BatchFetcher) GetRollupBatchByIndex(index uint64) (*eth.RPCRollupBatch, error) { + // Try each L2 client until we get a successful response + var lastErr error + for _, client := range bf.l2Clients { + batch, err := client.GetRollupBatchByIndex(context.Background(), index) + if err != nil { + lastErr = err + continue + } + // Validate that batch exists and has signatures before returning + if batch != nil && len(batch.Signatures) > 0 { + return batch, nil + } + } + if lastErr != nil { + return nil, fmt.Errorf("failed to get batch %d from any L2 client: %w", index, lastErr) + } + return nil, fmt.Errorf("batch %d not found in any L2 client", index) +} diff --git a/tx-submitter/services/pendingtx.go b/tx-submitter/services/pendingtx.go index 53276fb7a..fc5ac18c2 100644 --- a/tx-submitter/services/pendingtx.go +++ b/tx-submitter/services/pendingtx.go @@ -4,230 +4,298 @@ import ( "fmt" "sort" "sync" + "sync/atomic" "time" "morph-l2/bindings/bindings" - journal "morph-l2/tx-submitter/localpool" + "morph-l2/tx-submitter/constants" + "morph-l2/tx-submitter/types" "morph-l2/tx-submitter/utils" "github.com/morph-l2/go-ethereum/accounts/abi" "github.com/morph-l2/go-ethereum/common" - "github.com/morph-l2/go-ethereum/core/types" + ethtypes "github.com/morph-l2/go-ethereum/core/types" "github.com/morph-l2/go-ethereum/log" ) -type TxInfo struct { - sendTime uint64 - tx *types.Transaction +const ( + // MethodCommitBatch is the method name for committing a batch + MethodCommitBatch = "commitBatch" + // MethodFinalizeBatch is the method name for finalizing a batch + MethodFinalizeBatch = "finalizeBatch" +) - queryTimes uint64 +// Journal defines the interface for transaction journaling +type Journal interface { + Init() error + AppendTx(tx *ethtypes.Transaction) error + ParseAllTxs() ([]*ethtypes.Transaction, error) + Clean() error } +// PendingTxs represents the pending transactions pool type PendingTxs struct { - mu sync.Mutex + mu sync.RWMutex - txinfos map[common.Hash]TxInfo + txinfos map[common.Hash]*types.TxRecord pnonce uint64 // pending nonce - failedIndex *uint64 - pindex uint64 // pending batch index + pindex uint64 // pending batch index + pfinalize uint64 - pfinalize uint64 commitBatchId []byte finalizeBatchId []byte - // journal - journal *journal.Journal + journal Journal } -func NewPendingTxs(cid []byte, fid []byte, journal *journal.Journal) *PendingTxs { - return &PendingTxs{ - txinfos: make(map[common.Hash]TxInfo), - commitBatchId: cid, - finalizeBatchId: fid, +// NewPendingTxs creates a new PendingTxs instance +func NewPendingTxs(commitBatchMethodId, finalizeBatchMethodId []byte, journal Journal) *PendingTxs { + pt := &PendingTxs{ + txinfos: make(map[common.Hash]*types.TxRecord), journal: journal, + commitBatchId: commitBatchMethodId, + finalizeBatchId: finalizeBatchMethodId, } + return pt } -func (pt *PendingTxs) Store(tx *types.Transaction) error { - err := pt.journal.AppendTx(tx) - if err != nil { - return fmt.Errorf("failed to store tx: %v", err) +// Store persists a transaction to the journal +func (pt *PendingTxs) Store(tx *ethtypes.Transaction) error { + if tx == nil { + return fmt.Errorf("cannot store nil transaction") + } + if err := pt.journal.AppendTx(tx); err != nil { + return fmt.Errorf("failed to store tx: %w", err) } return nil } +// dump persists all transactions to the journal func (pt *PendingTxs) dump() error { - err := pt.journal.Clean() - if err != nil { - return fmt.Errorf("failed to dump tx: %v", err) + if err := pt.journal.Clean(); err != nil { + return fmt.Errorf("failed to clean journal: %w", err) } + txinfos := pt.getAll() for _, info := range txinfos { - err := pt.journal.AppendTx(info.tx) - if err != nil { - return fmt.Errorf("failed to store tx: %v", err) + if err := pt.journal.AppendTx(info.Tx); err != nil { + return fmt.Errorf("failed to store tx: %w", err) } } return nil } -func (pt *PendingTxs) Add(tx *types.Transaction) { +// Add adds a transaction to the pending pool +func (pt *PendingTxs) Add(tx *ethtypes.Transaction) error { + if tx == nil { + return fmt.Errorf("cannot add nil transaction") + } + pt.mu.Lock() defer pt.mu.Unlock() - pt.txinfos[tx.Hash()] = TxInfo{ - sendTime: uint64(time.Now().Unix()), - tx: tx, + + hash := tx.Hash() + pt.txinfos[hash] = &types.TxRecord{ + Tx: tx, + SendTime: uint64(time.Now().Unix()), + QueryTimes: 0, + Confirmed: false, } - err := pt.journal.AppendTx(tx) - if err != nil { - log.Error("failed to append pending txs", "err", err) + if err := pt.journal.AppendTx(tx); err != nil { + delete(pt.txinfos, hash) + return fmt.Errorf("failed to append tx to journal: %w", err) } + + return nil } -func (pt *PendingTxs) Remove(txHash common.Hash) { +// Remove removes a transaction from the pending pool +func (pt *PendingTxs) Remove(txHash common.Hash) error { pt.mu.Lock() defer pt.mu.Unlock() - delete(pt.txinfos, txHash) - err := pt.dump() - if err != nil { - log.Error("failed to dump pending txs", "err", err) + if _, exists := pt.txinfos[txHash]; !exists { + return nil // tx already removed } -} - -// Recover from mempool -func (pt *PendingTxs) Recover(txs []*types.Transaction, a *abi.ABI) { - // restore state from mempool - if len(txs) > 0 { - var pbindex, pfindex uint64 - - for _, tx := range txs { - pt.Add(tx) - - method := utils.ParseMethod(tx, a) - if method == "commitBatch" { - - index := utils.ParseParentBatchIndex(tx.Data()) - if index > pbindex { - pbindex = index - } - } else if method == "finalizeBatch" { - findex := utils.ParseFBatchIndex(tx.Data()) - if findex > pfindex { - pfindex = findex - } - } - } - - pt.SetPindex(pbindex) - pt.SetPFinalize(pfindex) - pt.SetNonce(txs[len(txs)-1].Nonce()) - log.Info("Recover from mempool", - "tx_count", len(txs), - "max_batch_index", pbindex, - "max_finalize_index", pfindex, - "max_nonce", pt.pnonce, - ) - } else { - log.Info("journal tx is empty") - } + delete(pt.txinfos, txHash) + return pt.dump() } -func (pt *PendingTxs) GetAll() []TxInfo { - pt.mu.Lock() - defer pt.mu.Unlock() +// GetAll returns all pending transactions in nonce order +func (pt *PendingTxs) GetAll() []*types.TxRecord { + pt.mu.RLock() + defer pt.mu.RUnlock() return pt.getAll() } -func (pt *PendingTxs) getAll() []TxInfo { - // copy txs and return - txs := make([]TxInfo, 0, len(pt.txinfos)) + +func (pt *PendingTxs) getAll() []*types.TxRecord { + txs := make([]*types.TxRecord, 0, len(pt.txinfos)) for _, tx := range pt.txinfos { txs = append(txs, tx) } - // sort by nonce sort.SliceStable(txs, func(i, j int) bool { - return txs[i].tx.Nonce() < txs[j].tx.Nonce() + return txs[i].Tx.Nonce() < txs[j].Tx.Nonce() }) return txs } -func (pt *PendingTxs) Get(txHash common.Hash) (TxInfo, bool) { - pt.mu.Lock() - defer pt.mu.Unlock() - tx, ok := pt.txinfos[txHash] - return tx, ok +// GetTxRecord returns a transaction record by its hash +func (pt *PendingTxs) GetTxRecord(hash common.Hash) *types.TxRecord { + pt.mu.RLock() + defer pt.mu.RUnlock() + return pt.txinfos[hash] } +// IncQueryTimes increments the query times for a transaction +// only for missing tx func (pt *PendingTxs) IncQueryTimes(txHash common.Hash) { pt.mu.Lock() defer pt.mu.Unlock() - pt.txinfos[txHash] = TxInfo{tx: pt.txinfos[txHash].tx, queryTimes: pt.txinfos[txHash].queryTimes + 1, sendTime: pt.txinfos[txHash].sendTime} + if tx, ok := pt.txinfos[txHash]; ok { + tx.QueryTimes++ + } } -func (pt *PendingTxs) TrySetFailedBatchIndex(index uint64) { +// MarkConfirmed marks a transaction as confirmed +func (pt *PendingTxs) MarkConfirmed(hash common.Hash) { pt.mu.Lock() defer pt.mu.Unlock() - - // failed index must be less than pindex - if index > pt.pindex { - return + if record, exists := pt.txinfos[hash]; exists { + record.Confirmed = true } - - pt.failedIndex = &index } -func (pt *PendingTxs) SetPindex(index uint64) { + +// ClearConfirmedTxs marks all confirmed transactions as unconfirmed +func (pt *PendingTxs) ClearConfirmedTxs() { pt.mu.Lock() defer pt.mu.Unlock() - pt.pindex = index + for _, record := range pt.txinfos { + if record.Confirmed { + log.Info("Marking transaction as unconfirmed due to reorg", + "hash", record.Tx.Hash().String(), + "nonce", record.Tx.Nonce()) + record.Confirmed = false + } + } } +// SetNonce sets the pending nonce func (pt *PendingTxs) SetNonce(nonce uint64) { - pt.mu.Lock() - defer pt.mu.Unlock() - pt.pnonce = nonce + atomic.StoreUint64(&pt.pnonce, nonce) } -func (pt *PendingTxs) SetPFinalize(finalize uint64) { - pt.mu.Lock() - defer pt.mu.Unlock() - pt.pfinalize = finalize +// GetNonce gets the current pending nonce +func (pt *PendingTxs) GetNonce() uint64 { + return atomic.LoadUint64(&pt.pnonce) } -func (pt *PendingTxs) RemoveRollupRestriction() { - pt.mu.Lock() - defer pt.mu.Unlock() +// SetPindex sets the pending index +func (pt *PendingTxs) SetPindex(index uint64) { + atomic.StoreUint64(&pt.pindex, index) +} - pt.failedIndex = nil +// GetPindex gets the current pending index +func (pt *PendingTxs) GetPindex() uint64 { + return atomic.LoadUint64(&pt.pindex) } -func (pt *PendingTxs) HaveFailed() bool { - return pt.failedIndex != nil +// SetPFinalize sets the pending finalize index +func (pt *PendingTxs) SetPFinalize(finalize uint64) { + atomic.StoreUint64(&pt.pfinalize, finalize) } -func (pt *PendingTxs) ExistedIndex(index uint64) bool { +// GetPFinalize gets the current pending finalize index +func (pt *PendingTxs) GetPFinalize() uint64 { + return atomic.LoadUint64(&pt.pfinalize) +} - txs := pt.GetAll() +// ExistedIndex checks if a batch index exists +func (pt *PendingTxs) ExistedIndex(index uint64) bool { + txs := pt.GetAll() // already has RLock + abi, err := bindings.RollupMetaData.GetAbi() + if err != nil { + log.Error("Failed to get ABI", "err", err) + return false + } - abi, _ := bindings.RollupMetaData.GetAbi() - pt.mu.Lock() - defer pt.mu.Unlock() for i := len(txs) - 1; i >= 0; i-- { - tx := txs[i].tx - if utils.ParseMethod(tx, abi) == "commitBatch" { + tx := txs[i].Tx + if utils.ParseMethod(tx, abi) == constants.MethodCommitBatch { pindex := utils.ParseParentBatchIndex(tx.Data()) + 1 if index == pindex { return true } + } + } + return false +} + +// Recover recovers transactions from the journal +func (pt *PendingTxs) Recover(txs []*ethtypes.Transaction, abi *abi.ABI) error { + if len(txs) == 0 { + return nil + } + log.Info("Starting to recover transactions", "count", len(txs)) + + var maxCommitBatchIndex, maxFinalizeBatchIndex uint64 + + for _, tx := range txs { + // Get method name + method := utils.ParseMethod(tx, abi) + + // Get batch index based on method + var batchIndex uint64 + if method == constants.MethodCommitBatch { + batchIndex = utils.ParseParentBatchIndex(tx.Data()) + 1 + if batchIndex > maxCommitBatchIndex { + maxCommitBatchIndex = batchIndex + } + } else if method == constants.MethodFinalizeBatch { + batchIndex = utils.ParseFBatchIndex(tx.Data()) + if batchIndex > maxFinalizeBatchIndex { + maxFinalizeBatchIndex = batchIndex + } } + // Log transaction details + log.Info("Recovering transaction", + "hash", tx.Hash().String(), + "method", method, + "batch_index", batchIndex, + "nonce", tx.Nonce(), + "gas", tx.Gas(), + "gas_tip_cap", tx.GasTipCap().String(), + "gas_fee_cap", tx.GasFeeCap().String(), + "blob_gas", tx.BlobGas(), + "blob_fee_cap", tx.BlobGasFeeCap(), + "blob_hashes_count", len(tx.BlobHashes()), + "value", tx.Value().String(), + "size", tx.Size(), + "type", tx.Type(), + ) + + if err := pt.Add(tx); err != nil { + return fmt.Errorf("failed to add tx during recovery: %w", err) + } } - return false + pt.SetPindex(maxCommitBatchIndex) + pt.SetPFinalize(maxFinalizeBatchIndex) + pt.SetNonce(txs[len(txs)-1].Nonce()) + + log.Info("Recovered from mempool", + "tx_count", len(txs), + "max_batch_index", maxCommitBatchIndex, + "max_finalize_index", maxFinalizeBatchIndex, + "max_nonce", pt.GetNonce(), + ) + + return nil } diff --git a/tx-submitter/services/pendingtx_test.go b/tx-submitter/services/pendingtx_test.go deleted file mode 100644 index 71cb9ab76..000000000 --- a/tx-submitter/services/pendingtx_test.go +++ /dev/null @@ -1,31 +0,0 @@ -package services - -import ( - "testing" - - "github.com/stretchr/testify/require" -) - -func TestSetFailedStatus(t *testing.T) { - // index 2 failed -> set failed index 2 success - pt := NewPendingTxs(nil, nil, nil) - pt.SetPindex(2) - require.Nil(t, pt.failedIndex) - pt.TrySetFailedBatchIndex(2) - require.NotNil(t, pt.failedIndex) - require.EqualValues(t, 2, *pt.failedIndex) - - // failed index =2 - // new failed index = 3 - // set failed index failed - pt = NewPendingTxs(nil, nil, nil) - failedIndex := uint64(2) - pt.failedIndex = &failedIndex - pt.TrySetFailedBatchIndex(3) - require.EqualValues(t, 2, *pt.failedIndex) - - // set failed index without pindex -> failed - pt = NewPendingTxs(nil, nil, nil) - pt.TrySetFailedBatchIndex(2) - require.Nil(t, pt.failedIndex) -} diff --git a/tx-submitter/services/reorg.go b/tx-submitter/services/reorg.go new file mode 100644 index 000000000..a030b8508 --- /dev/null +++ b/tx-submitter/services/reorg.go @@ -0,0 +1,121 @@ +package services + +import ( + "context" + "fmt" + "math/big" + "sync" + + "morph-l2/tx-submitter/iface" + + "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/log" +) + +// ReorgDetector tracks chain reorganizations +type ReorgDetector struct { + mu sync.RWMutex + + // Track the last N block hashes and numbers + blockHistory []blockInfo + maxHistory int + + l1Client iface.Client + metrics iface.IMetrics +} + +type blockInfo struct { + number uint64 + hash common.Hash +} + +func NewReorgDetector(l1Client iface.Client, metrics iface.IMetrics) *ReorgDetector { + return &ReorgDetector{ + blockHistory: make([]blockInfo, 0), + maxHistory: 5, // Track last 50 blocks + l1Client: l1Client, + metrics: metrics, + } +} + +// DetectReorg checks if a reorg has occurred by comparing current chain with tracked history +func (r *ReorgDetector) DetectReorg(ctx context.Context) (bool, uint64, error) { + r.mu.Lock() + defer r.mu.Unlock() + + if len(r.blockHistory) == 0 { + // First run, initialize history + return false, 0, r.updateHistory(ctx) + } + + // Get latest block + latestBlock, err := r.l1Client.BlockByNumber(ctx, nil) + if err != nil { + return false, 0, fmt.Errorf("failed to get latest block: %w", err) + } + + // Check each block in history to find reorg point + reorgDepth := uint64(0) + for i, info := range r.blockHistory { + block, err := r.l1Client.BlockByNumber(ctx, new(big.Int).SetUint64(info.number)) + if err != nil { + return false, 0, fmt.Errorf("failed to get block %d: %w", info.number, err) + } + + if block.Hash() != info.hash { + // Reorg detected + reorgDepth = latestBlock.NumberU64() - info.number + log.Warn("Chain reorganization detected", + "depth", reorgDepth, + "old_hash", info.hash, + "new_hash", block.Hash(), + "block_number", info.number) + + // Update metrics + r.metrics.IncReorgs() + r.metrics.SetReorgDepth(float64(reorgDepth)) + + // Truncate history before reorg point and rebuild + r.blockHistory = r.blockHistory[:i] + err = r.updateHistory(ctx) + return true, reorgDepth, err + } + } + + // No reorg, just update history + return false, 0, r.updateHistory(ctx) +} + +// updateHistory updates the tracked block history +func (r *ReorgDetector) updateHistory(ctx context.Context) error { + latest, err := r.l1Client.BlockByNumber(ctx, nil) + if err != nil { + return fmt.Errorf("failed to get latest block: %w", err) + } + + // Add new blocks to history + currentNum := latest.NumberU64() + startNum := currentNum + if len(r.blockHistory) > 0 { + startNum = r.blockHistory[len(r.blockHistory)-1].number + 1 + } + + for num := startNum; num <= currentNum; num++ { + block, err := r.l1Client.BlockByNumber(ctx, new(big.Int).SetUint64(num)) + if err != nil { + return fmt.Errorf("failed to get block %d: %w", num, err) + } + + r.blockHistory = append(r.blockHistory, blockInfo{ + number: num, + hash: block.Hash(), + }) + } + + // Trim history if too long + if len(r.blockHistory) > r.maxHistory { + r.blockHistory = r.blockHistory[len(r.blockHistory)-r.maxHistory:] + } + + return nil +} diff --git a/tx-submitter/services/rollup.go b/tx-submitter/services/rollup.go index 39092b9d9..9e321581e 100644 --- a/tx-submitter/services/rollup.go +++ b/tx-submitter/services/rollup.go @@ -20,6 +20,7 @@ import ( ethtypes "github.com/morph-l2/go-ethereum/core/types" "github.com/morph-l2/go-ethereum/crypto" "github.com/morph-l2/go-ethereum/crypto/bls12381" + "github.com/morph-l2/go-ethereum/crypto/kzg4844" "github.com/morph-l2/go-ethereum/eth" "github.com/morph-l2/go-ethereum/log" "github.com/morph-l2/go-ethereum/params" @@ -27,6 +28,7 @@ import ( "github.com/tendermint/tendermint/blssignatures" "morph-l2/bindings/bindings" + "morph-l2/tx-submitter/constants" "morph-l2/tx-submitter/db" "morph-l2/tx-submitter/event" "morph-l2/tx-submitter/iface" @@ -79,6 +81,7 @@ type Rollup struct { batchCache *types.BatchCache bm *l1checker.BlockMonitor eventInfoStorage *event.EventInfoStorage + reorgDetector iface.IReorgDetector } func NewRollup( @@ -100,8 +103,9 @@ func NewRollup( bm *l1checker.BlockMonitor, eventInfoStorage *event.EventInfoStorage, ) *Rollup { - - return &Rollup{ + batchFetcher := NewBatchFetcher(l2Clients) + reorgDetector := NewReorgDetector(l1, metrics) + r := &Rollup{ ctx: ctx, metrics: metrics, l1RpcClient: l1RpcClient, @@ -117,11 +121,13 @@ func NewRollup( cfg: cfg, signer: ethtypes.LatestSignerForChainID(chainId), externalRsaPriv: rsaPriv, - batchCache: types.NewBatchCache(), + batchCache: types.NewBatchCache(batchFetcher), ldb: ldb, bm: bm, eventInfoStorage: eventInfoStorage, + reorgDetector: reorgDetector, } + return r } func (r *Rollup) Start() error { @@ -138,12 +144,13 @@ func (r *Rollup) Start() error { log.Crit("journal file init failed", "err", err) } // pendingtxs - r.pendingTxs = NewPendingTxs(r.abi.Methods["commitBatch"].ID, r.abi.Methods["finalizeBatch"].ID, jn) + r.pendingTxs = NewPendingTxs(r.abi.Methods[constants.MethodCommitBatch].ID, r.abi.Methods[constants.MethodFinalizeBatch].ID, jn) txs, err := jn.ParseAllTxs() if err != nil { - log.Error("parse l1 mempool error", "error", err) - } else { - r.pendingTxs.Recover(txs, r.abi) + log.Crit("parse l1 mempool error", "error", err) + } + if err := r.pendingTxs.Recover(txs, r.abi); err != nil { + log.Crit("failed to recover pending transactions", "error", err) } // init fee metrics sum @@ -158,7 +165,6 @@ func (r *Rollup) Start() error { // metrics go utils.Loop(r.ctx, 10*time.Second, func() { - // get balacnce of wallet balance, err := r.L1Client.BalanceAt(context.Background(), r.WalletAddr(), nil) if err != nil { @@ -177,8 +183,21 @@ func (r *Rollup) Start() error { log.Warn("parse balance to float error", "error", err) return } - r.metrics.SetWalletBalance(balanceEthFloat) + // last committed batch + lastCommittedBatch, err := r.Rollup.LastCommittedBatchIndex(nil) + if err != nil { + log.Warn("get last committed batch error", "error", err) + return + } + r.metrics.SetLastCommittedBatch(lastCommittedBatch.Uint64()) + // last finalized batch + lastFinalizedBatch, err := r.Rollup.LastFinalizedBatchIndex(nil) + if err != nil { + log.Warn("get last finalized batch error", "error", err) + return + } + r.metrics.SetLastFinalizedBatch(lastFinalizedBatch.Uint64()) }) @@ -224,177 +243,531 @@ func (r *Rollup) Start() error { } func (r *Rollup) ProcessTx() error { + // Check for reorgs first with exponential backoff retry + _, _, err := r.detectReorgWithRetry() + if err != nil { + log.Warn("Failed to check for reorgs", "error", err) + } - // case 1: in mempool - // -> check timeout - // case 2: no in mempool - // case 2.1: discarded - // case 2.2: tx included -> success - // case 2.3: tx included -> failed - // -> reset index to failed index - - // get all local txs + // Get all local transactions txRecords := r.pendingTxs.GetAll() if len(txRecords) == 0 { return nil } - // query tx status + // Check if this submitter should process transactions + if err := r.checkSubmitterTurn(); err != nil { + if err == errNotMyTurn { + // Get current submitter index for logging + activeSubmitter, activeIndex, _ := r.rotator.CurrentSubmitter(r.L2Clients, r.Staking) + + // Calculate rotation timing information + past := (time.Now().Unix() - r.rotator.startTime.Int64()) % r.rotator.epoch.Int64() + start := time.Now().Unix() - past + end := start + r.rotator.epoch.Int64() + timeLeft := end - time.Now().Unix() + + // Format timestamps for human readability + endTimeFormatted := utils.FormatTime(big.NewInt(end)) + timeLeftFormatted := fmt.Sprintf("%dm%ds", timeLeft/60, timeLeft%60) + + log.Info("Awaiting turn for transaction processing", + "current_submitter", activeSubmitter.Hex(), + "submitter_index", activeIndex, + "total_submitters", len(r.rotator.GetSubmitterSet()), + "next_rotation", endTimeFormatted, + "time_remaining", timeLeftFormatted) + return nil + } + return err + } + + // Process each transaction for _, txRecord := range txRecords { + if err := r.processSingleTx(txRecord); err != nil { + log.Error("Transaction processing failed", + "tx_hash", txRecord.Tx.Hash().String(), + "error", err) + return fmt.Errorf("transaction processing failed: %w", err) + } + } + + return nil +} + +// Helper function to detect reorgs with retry +func (r *Rollup) detectReorgWithRetry() (bool, uint64, error) { + var lastErr error + for i := range 3 { // Try up to 3 times + hasReorg, depth, err := r.reorgDetector.DetectReorg(r.ctx) + if err == nil { + return hasReorg, depth, nil + } + lastErr = err + time.Sleep(time.Duration(i+1) * time.Second) // Exponential backoff + } + return false, 0, lastErr +} + +var errNotMyTurn = errors.New("not my turn") + +func (r *Rollup) checkSubmitterTurn() error { + if r.cfg.PriorityRollup { + return nil + } + activeSubmitter, submitterIndex, err := r.rotator.CurrentSubmitter(r.L2Clients, r.Staking) + if err != nil { + return fmt.Errorf("rollup: get current submitter err, %w", err) + } + + myAddress := r.WalletAddr().Hex() + activeAddress := activeSubmitter.Hex() + isMyTurn := activeAddress == myAddress + + // Calculate rotation timing information + past := (time.Now().Unix() - r.rotator.startTime.Int64()) % r.rotator.epoch.Int64() + start := time.Now().Unix() - past + end := start + r.rotator.epoch.Int64() + timeLeft := end - time.Now().Unix() + + // Format timestamps for human readability + startTimeFormatted := utils.FormatTime(big.NewInt(start)) + endTimeFormatted := utils.FormatTime(big.NewInt(end)) + timeLeftFormatted := fmt.Sprintf("%dm%ds", timeLeft/60, timeLeft%60) + + if !isMyTurn { + log.Debug("Not active submitter", + "active_submitter", activeAddress, + "index", submitterIndex, + "my_address", myAddress, + "total_submitters", len(r.rotator.GetSubmitterSet()), + "rotation_end", endTimeFormatted, + "time_remaining", timeLeftFormatted) + return errNotMyTurn + } + + log.Info("Active submitter status", + "index", submitterIndex, + "total_submitters", len(r.rotator.GetSubmitterSet()), + "rotation_start", startTimeFormatted, + "rotation_end", endTimeFormatted, + "time_remaining", timeLeftFormatted) + return nil +} - rtx := txRecord.tx - method := utils.ParseMethod(rtx, r.abi) - log.Info("process tx", "hash", rtx.Hash().String(), "nonce", rtx.Nonce(), "method", method) - // query tx - _, ispending, err := r.L1Client.TransactionByHash(context.Background(), txRecord.tx.Hash()) +// Handle chain reorganization +func (r *Rollup) handleReorg(depth uint64) error { + // Update metrics + r.metrics.SetReorgDepth(float64(depth)) + r.metrics.IncReorgs() + return nil +} + +// Process a single transaction +func (r *Rollup) processSingleTx(txRecord *types.TxRecord) error { + rtx := txRecord.Tx + method := utils.ParseMethod(rtx, r.abi) + + log.Info("Processing transaction", + "hash", rtx.Hash().String(), + "nonce", rtx.Nonce(), + "method", method, + "query_times", txRecord.QueryTimes) + + // Check transaction status + status, err := r.getTxStatus(rtx) + if err != nil { + return fmt.Errorf("get tx status error: %w", err) + } + + switch status.state { + case txStatusPending: + return r.handlePendingTx(txRecord, rtx, method) + case txStatusConfirmed: + // Get current block number + currentBlock, err := r.L1Client.BlockNumber(context.Background()) if err != nil { - if !utils.ErrStringMatch(err, ethereum.NotFound) { - return fmt.Errorf("query tx error:%w, tx: %s, nonce: %d", err, rtx.Hash().String(), rtx.Nonce()) + return fmt.Errorf("get current block number error: %v", err) + } + + // Check confirmation depth + if status.receipt != nil && currentBlock >= status.receipt.BlockNumber.Uint64()+6 { + // Update fee metrics before removing the transaction + if err := r.updateFeeMetrics(rtx, status.receipt, method); err != nil { + log.Error("Failed to update fee metrics", + "error", err, + "tx_hash", rtx.Hash().String()) } - r.pendingTxs.IncQueryTimes(rtx.Hash()) // not found in mempool, increase query times - } else { - log.Info("query tx success", "hash", rtx.Hash().Hex(), "pending", ispending) + + // Transaction has 6 confirmations, remove it from tracking + log.Info("Removing confirmed tx from tracking after 6 blocks", + "tx_hash", rtx.Hash().String(), + "block_number", status.receipt.BlockNumber.Uint64(), + "current_block", currentBlock, + "gas_used", status.receipt.GasUsed, + "effective_gas_price", status.receipt.EffectiveGasPrice, + "method", method) + if err := r.pendingTxs.Remove(rtx.Hash()); err != nil { + log.Error("failed to remove transaction", "hash", rtx.Hash().String(), "error", err) + } + r.metrics.IncTxConfirmed(method) + return nil + } + return r.handleConfirmedTx(txRecord, rtx, method) + case txStatusMissing: + return r.handleMissingTx(txRecord, rtx, method) + default: + return fmt.Errorf("unknown transaction status: %v", status.state) + } +} + +// updateFeeMetrics updates all fee-related metrics for a confirmed transaction +func (r *Rollup) updateFeeMetrics(tx *ethtypes.Transaction, receipt *ethtypes.Receipt, method string) error { + txFeeEth := calcFee(tx, receipt) + txFeeFloat, _ := txFeeEth.Float64() + + // Update metrics based on transaction type + if method == constants.MethodCommitBatch { + r.rollupFeeSum += txFeeFloat + r.metrics.RollupCostSum.Add(txFeeFloat) + r.metrics.RollupCost.Set(txFeeFloat) + // Update leveldb + err := r.ldb.PutFloat(rollupSumKey, r.rollupFeeSum) + if err != nil { + return fmt.Errorf("failed to update rollup fee sum in leveldb: %w", err) } - // exist in mempool - if ispending { - if txRecord.sendTime+uint64(r.cfg.TxTimeout.Seconds()) < uint64(time.Now().Unix()) { - log.Info("tx timeout", "tx", rtx.Hash().Hex(), "nonce", rtx.Nonce(), "method", method) - newtx, err := r.ReSubmitTx(false, rtx) - if err != nil { - log.Error("resubmit tx", "error", err, "tx", rtx.Hash().Hex(), "nonce", rtx.Nonce()) - return fmt.Errorf("resubmit tx error:%w", err) - } else { - log.Info("replace success", "old_tx", rtx.Hash().Hex(), "new_tx", newtx.Hash().String(), "nonce", rtx.Nonce()) - r.pendingTxs.Remove(rtx.Hash()) - r.pendingTxs.Add(newtx) - } + // Calculate and update L1 fee metrics + batchIndex := utils.ParseParentBatchIndex(tx.Data()) + 1 + batch, ok := r.batchCache.Get(batchIndex) + if ok { + collectedL1Fee := new(big.Float).Quo(new(big.Float).SetInt(batch.CollectedL1Fee.ToInt()), new(big.Float).SetInt(big.NewInt(params.Ether))) + collectedL1FeeFloat, _ := collectedL1Fee.Float64() + + // Update metrics + r.collectedL1FeeSum += collectedL1FeeFloat + r.metrics.CollectedL1FeeSum.Add(collectedL1FeeFloat) + + // Update leveldb + err := r.ldb.PutFloat(collectedL1FeeSumKey, r.collectedL1FeeSum) + if err != nil { + log.Error("failed to update collected L1 fee sum in leveldb", "error", err) } - } else { // not in mempool - receipt, err := r.L1Client.TransactionReceipt(context.Background(), rtx.Hash()) + + log.Info("Updated L1 fee metrics", + "batch_index", batchIndex, + "l1_fee_eth", collectedL1FeeFloat) + } else { + log.Warn("batch not found in cache", "batch_index", batchIndex) + } + } else if method == constants.MethodFinalizeBatch { + r.finalizeFeeSum += txFeeFloat + r.metrics.FinalizeCostSum.Add(txFeeFloat) + r.metrics.FinalizeCost.Set(txFeeFloat) + // Update leveldb + err := r.ldb.PutFloat(finalizeSumKey, r.finalizeFeeSum) + if err != nil { + return fmt.Errorf("failed to update finalize fee sum in leveldb: %w", err) + } + } + + return nil +} + +type txStatus struct { + state int + receipt *ethtypes.Receipt +} + +const ( + txStatusPending = iota + txStatusConfirmed + txStatusMissing +) + +func (r *Rollup) getTxStatus(tx *ethtypes.Transaction) (*txStatus, error) { + receipt, err := r.L1Client.TransactionReceipt(context.Background(), tx.Hash()) + if err == nil { + return &txStatus{state: txStatusConfirmed, receipt: receipt}, nil + } + + if !utils.ErrStringMatch(err, ethereum.NotFound) { + return nil, fmt.Errorf("query tx receipt error: %w", err) + } + + // Check mempool + _, isPending, err := r.L1Client.TransactionByHash(context.Background(), tx.Hash()) + if err != nil { + if !utils.ErrStringMatch(err, ethereum.NotFound) { + return nil, fmt.Errorf("query tx error: %w", err) + } + return &txStatus{state: txStatusMissing}, nil + } + + if isPending { + return &txStatus{state: txStatusPending}, nil + } + + return &txStatus{state: txStatusMissing}, nil +} + +func (r *Rollup) handlePendingTx(txRecord *types.TxRecord, tx *ethtypes.Transaction, method string) error { + // Check for timeout + if txRecord.SendTime+uint64(r.cfg.TxTimeout.Seconds()) < uint64(time.Now().Unix()) { + log.Info("Transaction timed out", + "tx", tx.Hash().Hex(), + "nonce", tx.Nonce(), + "method", method) + + // Try to replace the transaction with higher gas price + return r.replaceTimedOutTx(tx) + } + + // Check if transaction might fail + if method == constants.MethodCommitBatch { + batchIndex := utils.ParseParentBatchIndex(tx.Data()) + 1 + lastCommitted, err := r.Rollup.LastCommittedBatchIndex(nil) + if err != nil { + return fmt.Errorf("get last committed batch index error: %w", err) + } + + if batchIndex <= lastCommitted.Uint64() { + // This batch is already committed by another submitter + log.Info("Batch already committed by another submitter, trying to cancel transaction", + "batch_index", batchIndex, + "last_committed", lastCommitted.Uint64(), + "tx_hash", tx.Hash().String()) + + // Try to cancel the transaction since it will fail + cancelTx, err := r.CancelTx(tx) if err != nil { - log.Error("query tx receipt error", "tx", rtx.Hash().String(), "nonce", rtx.Nonce(), "error", err) - if !utils.ErrStringMatch(err, ethereum.NotFound) { - return err - } + log.Error("Failed to cancel commit batch transaction", + "error", err, + "tx", tx.Hash().Hex(), + "nonce", tx.Nonce(), + "gas", tx.Gas(), + "gas_tip_cap", tx.GasTipCap().String(), + "gas_fee_cap", tx.GasFeeCap().String(), + "blob_fee_cap", tx.BlobGasFeeCap().String(), + "batch_index", batchIndex, + "last_committed", lastCommitted.Uint64()) + return fmt.Errorf("cancel commit batch transaction failed: %w", err) + } - // sr.pendingTxs.txinfos - if txRecord.queryTimes >= 5 { - log.Warn("tx discarded", - "hash", rtx.Hash().String(), - "nonce", rtx.Nonce(), - "query_times", txRecord.queryTimes, - ) - replacedtx, err := r.ReSubmitTx(true, rtx) - if err != nil { - log.Error("resend discarded tx", "old_tx", rtx.Hash().String(), "nonce", rtx.Nonce(), "error", err) - if utils.ErrStringMatch(err, core.ErrNonceTooLow) { - log.Info("discarded tx removed", - "hash", rtx.Hash().String(), - "nonce", rtx.Nonce(), - "method", method, - ) - r.pendingTxs.Remove(rtx.Hash()) - return nil - } - return fmt.Errorf("resend discarded tx: %w", err) - } else { - r.pendingTxs.Remove(rtx.Hash()) - } - r.pendingTxs.Add(replacedtx) - log.Info("resend discarded tx", "old_tx", rtx.Hash().String(), "new_tx", replacedtx.Hash().String(), "nonce", replacedtx.Nonce()) - } else { - log.Info("tx is not found, neither in mempool nor in block", "hash", rtx.Hash().String(), "nonce", rtx.Nonce(), "query_times", txRecord.queryTimes) - } - } else { - logs := utils.ParseBusinessInfo(rtx, r.abi) - logs = append(logs, - "block", receipt.BlockNumber, - "hash", rtx.Hash().String(), - "status", receipt.Status, - "gas_used", receipt.GasUsed, - "type", rtx.Type(), - "nonce", rtx.Nonce(), - "blob_fee_cap", rtx.BlobGasFeeCap(), - "blob_gas", rtx.BlobGas(), - "tx_size", rtx.Size(), - "gas_limit", rtx.Gas(), - "gas_price", rtx.GasPrice(), - ) + log.Info("Successfully sent cancel transaction for commit batch", + "old_tx", tx.Hash().Hex(), + "new_tx", cancelTx.Hash().String(), + "nonce", tx.Nonce()) + if err := r.pendingTxs.Remove(tx.Hash()); err != nil { + log.Error("failed to remove transaction", "hash", tx.Hash().String(), "error", err) + } + if err := r.pendingTxs.Add(cancelTx); err != nil { + log.Error("failed to add cancel transaction", "hash", cancelTx.Hash().String(), "error", err) + } + return nil + } + } else if method == constants.MethodFinalizeBatch { + batchIndex := utils.ParseFBatchIndex(tx.Data()) + lastFinalized, err := r.Rollup.LastFinalizedBatchIndex(nil) + if err != nil { + return fmt.Errorf("get last finalized batch index error: %w", err) + } - log.Info("tx included", - logs..., - ) + if batchIndex <= lastFinalized.Uint64() { + // This batch is already finalized by another submitter + log.Info("Batch already finalized by another submitter, trying to cancel transaction", + "batch_index", batchIndex, + "last_finalized", lastFinalized.Uint64(), + "tx_hash", tx.Hash().String()) - if receipt.Status != ethtypes.ReceiptStatusSuccessful { - // if tx is commitBatch - if method == "commitBatch" { - parentindex := utils.ParseParentBatchIndex(rtx.Data()) - index := parentindex + 1 - - // prevent the SetFailedStatus operation from - // happening between RemoveRollupRestriction - // and SetPindex in the rollup function - r.rollupFinalizeMu.Lock() - r.pendingTxs.TrySetFailedBatchIndex(index) - r.rollupFinalizeMu.Unlock() - - } - - } else { - if method == "commitBatch" && r.pendingTxs.failedIndex != nil { - log.Info("fail revover", "failed_index", r.pendingTxs.failedIndex) - r.pendingTxs.RemoveRollupRestriction() - } - } + // Try to cancel the transaction since it will fail + cancelTx, err := r.CancelTx(tx) + if err != nil { + log.Error("Failed to cancel finalize batch transaction", + "error", err, + "tx", tx.Hash().Hex(), + "nonce", tx.Nonce(), + "gas", tx.Gas(), + "gas_tip_cap", tx.GasTipCap().String(), + "gas_fee_cap", tx.GasFeeCap().String(), + "blob_fee_cap", tx.BlobGasFeeCap().String(), + "batch_index", batchIndex, + "last_finalized", lastFinalized.Uint64()) + return fmt.Errorf("cancel finalize batch transaction failed: %w", err) + } - r.pendingTxs.Remove(rtx.Hash()) - // set metrics - fee := calcFee(receipt) - if fee == 0 { - log.Warn("fee is zero", "hash", rtx.Hash().Hex()) - } - if method == "commitBatch" { - r.rollupFeeSum += fee - err = r.ldb.PutFloat(rollupSumKey, r.rollupFeeSum) - if err != nil { - log.Warn("put rollup fee sum error", "error", err) - } - r.metrics.SetRollupCost(fee) - index := utils.ParseParentBatchIndex(rtx.Data()) + 1 - batch, ok := r.batchCache.Get(index) - if ok { - collectedL1FeeFloat := ToEtherFloat((*big.Int)(batch.CollectedL1Fee)) - r.collectedL1FeeSum += collectedL1FeeFloat - err = r.ldb.PutFloat(collectedL1FeeSumKey, r.collectedL1FeeSum) - if err != nil { - log.Warn("put collected l1 fee sum error", "error", err) - } - r.metrics.SetCollectedL1Fee(ToEtherFloat((*big.Int)(batch.CollectedL1Fee))) - // remove batch from cache - r.batchCache.Delete(index) - } else { - log.Warn("batch not found in batchCache while set collect fee metrics", - "index", index, - ) - } - - } else if method == "finalizeBatch" { - r.finalizeFeeSum += fee - err = r.ldb.PutFloat(finalizeSumKey, r.finalizeFeeSum) - if err != nil { - log.Warn("put finalize fee sum error", "error", err) - } - r.metrics.SetFinalizeCost(fee) - } + log.Info("Successfully sent cancel transaction for finalize batch", + "old_tx", tx.Hash().Hex(), + "new_tx", cancelTx.Hash().String(), + "nonce", tx.Nonce()) + if err := r.pendingTxs.Remove(tx.Hash()); err != nil { + log.Error("failed to remove transaction", "hash", tx.Hash().String(), "error", err) + } + if err := r.pendingTxs.Add(cancelTx); err != nil { + log.Error("failed to add cancel transaction", "hash", cancelTx.Hash().String(), "error", err) } + return nil + } + } + + return nil +} + +func (r *Rollup) replaceTimedOutTx(tx *ethtypes.Transaction) error { + newTx, err := r.ReSubmitTx(false, tx) + if err != nil { + log.Error("Failed to resubmit transaction", + "error", err, + "tx", tx.Hash().Hex(), + "nonce", tx.Nonce()) + return fmt.Errorf("resubmit tx error: %w", err) + } + + log.Info("Successfully replaced transaction", + "old_tx", tx.Hash().Hex(), + "new_tx", newTx.Hash().String(), + "nonce", tx.Nonce()) + + if err := r.pendingTxs.Remove(tx.Hash()); err != nil { + log.Error("failed to remove transaction", "hash", tx.Hash().String(), "error", err) + } + if err := r.pendingTxs.Add(newTx); err != nil { + log.Error("failed to add new transaction", "hash", newTx.Hash().String(), "error", err) + } + return nil +} + +func (r *Rollup) handleMissingTx(txRecord *types.TxRecord, tx *ethtypes.Transaction, method string) error { + r.pendingTxs.IncQueryTimes(tx.Hash()) + + // Mark transaction as unconfirmed since it's missing + txRecord.Confirmed = false + + // Only resubmit after several retries + if txRecord.QueryTimes >= 5 { + return r.handleDiscardedTx(txRecord, tx, method) + } + + log.Info("Transaction not found in mempool or chain", + "hash", tx.Hash().String(), + "nonce", tx.Nonce(), + "query_times", txRecord.QueryTimes) + + return nil +} + +func (r *Rollup) handleDiscardedTx(txRecord *types.TxRecord, tx *ethtypes.Transaction, method string) error { + log.Warn("Transaction discarded", + "hash", tx.Hash().String(), + "nonce", tx.Nonce(), + "query_times", txRecord.QueryTimes) + // Try to resubmit with original parameters + replacedTx, err := r.ReSubmitTx(true, tx) + if err != nil { + if utils.ErrStringMatch(err, core.ErrNonceTooLow) { + // Transaction was probably confirmed in a reorg + log.Info("Discarded transaction removed (nonce too low)", + "hash", tx.Hash().String(), + "nonce", tx.Nonce(), + "method", method) + if err := r.pendingTxs.Remove(tx.Hash()); err != nil { + log.Error("failed to remove transaction", "hash", tx.Hash().String(), "error", err) + } + return nil } + return fmt.Errorf("resend discarded tx: %w", err) + } + if err := r.pendingTxs.Remove(tx.Hash()); err != nil { + log.Error("failed to remove transaction", "hash", tx.Hash().String(), "error", err) } + if err := r.pendingTxs.Add(replacedTx); err != nil { + log.Error("failed to add replaced transaction", "hash", replacedTx.Hash().String(), "error", err) + } + log.Info("Successfully resubmitted discarded transaction", + "old_tx", tx.Hash().String(), + "new_tx", replacedTx.Hash().String(), + "nonce", replacedTx.Nonce()) return nil +} +// handleConfirmedTx handles a confirmed transaction +func (r *Rollup) handleConfirmedTx(txRecord *types.TxRecord, tx *ethtypes.Transaction, txType string) error { + status, err := r.getTxStatus(tx) + if err != nil { + return fmt.Errorf("get tx status error: %w", err) + } + + // Get current block number for confirmation count + currentBlock, err := r.L1Client.BlockNumber(context.Background()) + if err != nil { + return fmt.Errorf("get current block number error: %w", err) + } + + confirmations := currentBlock - status.receipt.BlockNumber.Uint64() + log.Info("Transaction confirmation status", + "hash", tx.Hash().String(), + "block_number", status.receipt.BlockNumber.Uint64(), + "current_block", currentBlock, + "confirmations", confirmations) + + method := utils.ParseMethod(tx, r.abi) + if status.receipt.Status == ethtypes.ReceiptStatusFailed { + if method == constants.MethodCommitBatch { + batchIndex := utils.ParseParentBatchIndex(tx.Data()) + 1 + lastCommitted, err := r.Rollup.LastCommittedBatchIndex(nil) + if err != nil { + return fmt.Errorf("get last committed batch index error: %w", err) + } + + if batchIndex <= lastCommitted.Uint64() { + // Another submitter has already committed this batch + log.Warn("Batch commit transaction failed but batch is already committed by another submitter", "batch_index", batchIndex, "tx_hash", tx.Hash().String()) + // Clean up batch from cache since it's already committed + r.batchCache.Delete(batchIndex) + } else { + // Contract bug detected - batch is not committed by anyone else but our transaction failed + log.Warn("Critical error: batch commit transaction failed and batch is not committed by anyone", "batch_index", batchIndex, "tx_hash", tx.Hash().String()) + } + } else if method == constants.MethodFinalizeBatch { + batchIndex := utils.ParseFBatchIndex(tx.Data()) + lastFinalized, err := r.Rollup.LastFinalizedBatchIndex(nil) + if err != nil { + return fmt.Errorf("get last finalized batch index error: %w", err) + } + + if batchIndex <= lastFinalized.Uint64() { + // Another submitter has already finalized this batch + log.Warn("Batch finalize transaction failed but batch is already finalized by another submitter", "batch_index", batchIndex, "tx_hash", tx.Hash().String()) + } else { + // Contract bug detected - batch is not finalized by anyone else but our transaction failed + log.Warn("Critical error: batch finalize transaction failed and batch is not finalized by anyone", "batch_index", batchIndex, "tx_hash", tx.Hash().String()) + } + } + } else { // Transaction succeeded + // Get current block number for confirmation count only for successful transactions + currentBlock, err := r.L1Client.BlockNumber(context.Background()) + if err != nil { + return fmt.Errorf("get current block number error: %w", err) + } + confirmations := currentBlock - status.receipt.BlockNumber.Uint64() + + if method == constants.MethodCommitBatch { + batchIndex := utils.ParseParentBatchIndex(tx.Data()) + 1 + log.Info("Successfully committed batch", "batch_index", batchIndex, "tx_hash", tx.Hash().String(), "block_number", status.receipt.BlockNumber.Uint64(), "gas_used", status.receipt.GasUsed, "confirm", confirmations) + + // Clean up batch from cache after successful commit + r.batchCache.Delete(batchIndex) + } else if method == constants.MethodFinalizeBatch { + batchIndex := utils.ParseFBatchIndex(tx.Data()) + log.Info("Successfully finalized batch", "batch_index", batchIndex, "tx_hash", tx.Hash().String(), "block_number", status.receipt.BlockNumber.Uint64(), "gas_used", status.receipt.GasUsed, "confirm", confirmations) + } + } + + r.pendingTxs.MarkConfirmed(tx.Hash()) + return nil } func (r *Rollup) finalize() error { @@ -549,7 +922,9 @@ func (r *Rollup) finalize() error { r.pendingTxs.SetNonce(signedTx.Nonce()) r.pendingTxs.SetPFinalize(target.Uint64()) - r.pendingTxs.Add(signedTx) + if err := r.pendingTxs.Add(signedTx); err != nil { + log.Error("failed to add signed transaction", "hash", signedTx.Hash().String(), "error", err) + } } return nil @@ -557,9 +932,9 @@ func (r *Rollup) finalize() error { } func (r *Rollup) rollup() error { - + // Get current block height if !r.cfg.PriorityRollup { - cur, err := r.rotator.CurrentSubmitter(r.L2Clients, r.Staking) + activeSubmitter, activeIndex, err := r.rotator.CurrentSubmitter(r.L2Clients, r.Staking) if err != nil { return fmt.Errorf("rollup: get current submitter err, %w", err) } @@ -568,23 +943,24 @@ func (r *Rollup) rollup() error { if err != nil { return fmt.Errorf("failed to load storage in rollup: %w", err) } - log.Info("indexer info", - "block_processed", r.eventInfoStorage.EventInfo.BlockProcessed, - "event_latest_emit_time", r.eventInfoStorage.EventInfo.BlockTime, - ) + log.Debug("Indexer status", + "blocks_processed", r.eventInfoStorage.BlockProcessed(), + "last_event_time", r.eventInfoStorage.BlockTime()) + // get current blocknumber blockNumber, err := r.L1Client.BlockNumber(context.Background()) if err != nil { return fmt.Errorf("failed to get block number in rollup: %w", err) } // set metrics - r.metrics.SetIndexerBlockProcessed(r.eventInfoStorage.EventInfo.BlockProcessed) + r.metrics.SetIndexerBlockProcessed(r.eventInfoStorage.BlockProcessed()) // check if indexed block number is too old - if blockNumber > r.eventInfoStorage.EventInfo.BlockProcessed+100 { - log.Info("indexed block number is too old, wait indexer to catch up", + if blockNumber > r.eventInfoStorage.BlockProcessed()+100 { + log.Info("Indexer sync required", "module", r.GetModuleName(), - "block_number", blockNumber, - "processed_block", r.eventInfoStorage.EventInfo.BlockProcessed) + "current_block", blockNumber, + "processed_block", r.eventInfoStorage.BlockProcessed(), + "blocks_behind", blockNumber-r.eventInfoStorage.BlockProcessed()) return nil } @@ -592,30 +968,52 @@ func (r *Rollup) rollup() error { start := time.Now().Unix() - past end := start + r.rotator.epoch.Int64() - log.Info("rotator info", - "turn", cur.Hex(), - "cur", r.WalletAddr(), - "start", start, - "end", end, - "now", time.Now().Unix(), - ) - - if cur.Hex() == r.WalletAddr().Hex() { - left := end - time.Now().Unix() - if left < r.cfg.RotatorBuffer { - log.Info("rollup time not enough, wait next turn", "left", left) + // Calculate time remaining in current turn + timeLeft := end - time.Now().Unix() + myAddress := r.WalletAddr().Hex() + activeAddress := activeSubmitter.Hex() + isMyTurn := activeAddress == myAddress + totalSubmitters := len(r.rotator.GetSubmitterSet()) + + // Format timestamps for human readability + startTimeFormatted := utils.FormatTime(big.NewInt(start)) + endTimeFormatted := utils.FormatTime(big.NewInt(end)) + timeLeftFormatted := fmt.Sprintf("%dm%ds", timeLeft/60, timeLeft%60) + + log.Info("Rotation status", + "submitter_index", activeIndex, + "active_submitter", activeAddress, + "my_address", myAddress, + "total_submitters", totalSubmitters, + "is_my_turn", isMyTurn, + "rotation_start", startTimeFormatted, + "rotation_end", endTimeFormatted, + "time_remaining", timeLeftFormatted) + + if isMyTurn { + if timeLeft < r.cfg.RotatorBuffer { + bufferFormatted := fmt.Sprintf("%dm%ds", r.cfg.RotatorBuffer/60, r.cfg.RotatorBuffer%60) + log.Info("Insufficient time for rollup", + "time_remaining", timeLeftFormatted, + "buffer_required", bufferFormatted) return nil } - log.Info("start to rollup") + log.Info("Starting rollup", + "submitter_index", activeIndex, + "total_submitters", totalSubmitters) } else { - log.Info("wait for my turn") + log.Info("Skipping rollup - not active submitter", + "active_index", activeIndex, + "active_submitter", activeAddress) return nil } } if len(r.pendingTxs.txinfos) > int(r.cfg.MaxTxsInPendingPool) { - log.Info("too many txs in mempool, wait") + log.Info("Pending pool full", + "current_size", len(r.pendingTxs.txinfos), + "max_size", r.cfg.MaxTxsInPendingPool) return nil } @@ -627,65 +1025,31 @@ func (r *Rollup) rollup() error { } cindex := cindexBig.Uint64() - if r.pendingTxs.failedIndex != nil && cindex >= *r.pendingTxs.failedIndex { - r.pendingTxs.RemoveRollupRestriction() + switch { + case r.pendingTxs.pindex != 0: + batchIndex = max(cindex, r.pendingTxs.pindex) + 1 + default: + batchIndex = cindex + 1 } - if r.pendingTxs.failedIndex != nil { - batchIndex = *r.pendingTxs.failedIndex - } else { - if r.pendingTxs.pindex != 0 { - if cindex > r.pendingTxs.pindex { - batchIndex = cindex + 1 - } else { - batchIndex = r.pendingTxs.pindex + 1 - } - - } else { - batchIndex = cindex + 1 - } - } + log.Debug("Batch status", + "last_committed", cindex, + "next_batch", batchIndex, + "current_processing", r.pendingTxs.pindex) - var failedIndex uint64 - if r.pendingTxs.failedIndex != nil { - failedIndex = *r.pendingTxs.failedIndex - } - log.Info("batch index info", - "last_committed_batch_index", cindex, - "batch_index_will_get", batchIndex, - "pending_index", r.pendingTxs.pindex, - "failed_index", failedIndex, - ) if r.pendingTxs.ExistedIndex(batchIndex) { - log.Info("batch index already committed", "index", batchIndex) + log.Debug("Batch already committed", + "batch_index", batchIndex) return nil } - if r.pendingTxs.failedIndex != nil && batchIndex > *r.pendingTxs.failedIndex { - log.Warn("rollup rejected", "index", batchIndex) + batch, ok := r.batchCache.Get(batchIndex) + if !ok { + log.Info("Batch not found in cache", + "batch_index", batchIndex) return nil } - batch, err := GetRollupBatchByIndex(batchIndex, r.L2Clients) - if err != nil { - return fmt.Errorf("get rollup batch by index err:%v", err) - } - - // check if the batch is valid - if batch == nil { - log.Info("new batch not found, wait for the next turn") - return nil - } - - if len(batch.Signatures) == 0 { - log.Info("length of batch signature is empty, wait for the next turn") - return nil - } - - // set batch cache - // it shoud be removed after the batch is committed - r.batchCache.Set(batchIndex, batch) - signature, err := r.buildSignatureInput(batch) if err != nil { return err @@ -693,7 +1057,8 @@ func (r *Rollup) rollup() error { rollupBatch := bindings.IRollupBatchDataInput{ Version: uint8(batch.Version), ParentBatchHeader: batch.ParentBatchHeader, - BlockContexts: batch.BlockContexts, + LastBlockNumber: batch.LastBlockNumber, + NumL1Messages: batch.NumL1Messages, PrevStateRoot: batch.PrevStateRoot, PostStateRoot: batch.PostStateRoot, WithdrawalRoot: batch.WithdrawRoot, @@ -710,122 +1075,133 @@ func (r *Rollup) rollup() error { if err != nil { return fmt.Errorf("pack calldata error:%v", err) } + // Estimate gas for transaction gas, err := r.EstimateGas(r.WalletAddr(), r.rollupAddr, calldata, gasFeeCap, tip) if err != nil { - log.Warn("estimate gas failed", "err", err) - // have failed tx & estimate err -> no rough estimate - if r.pendingTxs.HaveFailed() { - log.Warn("estimate gas err, wait failed tx fixed", - "err", err, - "try_update_pooled_pending_index", cindex+1, - ) - r.pendingTxs.TrySetFailedBatchIndex(cindex + 1) - return nil - } - + log.Warn("Estimate gas failed", "batch_index", batchIndex, "error", err) + // Use rough estimation based on L1 message count if r.cfg.RoughEstimateGas { msgcnt := utils.ParseL1MessageCnt(batch.BlockContexts) gas = r.RoughRollupGasEstimate(msgcnt) - log.Info("rough estimate rollup tx gas", "gas", gas, "msgcnt", msgcnt) + log.Info("Using rough gas estimation", + "batch_index", batchIndex, + "gas_limit", gas, + "l1_messages", msgcnt) } else { - log.Warn("no rough estimate gas, return") return nil } } - // add buffer to gas + // Apply gas buffer gas = r.BumpGas(gas) - // calc nonce - var nonce uint64 - if r.pendingTxs.pnonce != 0 { - nonce = r.pendingTxs.pnonce + 1 - } else { - nonce, err = r.L1Client.PendingNonceAt(context.Background(), r.WalletAddr()) - if err != nil { - return fmt.Errorf("query layer1 nonce error:%v", err.Error()) - } + // Get next nonce + nonce := r.getNextNonce() + if nonce == 0 { + return fmt.Errorf("failed to get next nonce") } - var tx *ethtypes.Transaction - if len(batch.Sidecar.Blobs) > 0 { - versionedHashes := make([]common.Hash, 0) - for _, commit := range batch.Sidecar.Commitments { - versionedHashes = append(versionedHashes, kZGToVersionedHash(commit)) - } - // blob tx - tx = ethtypes.NewTx(ðtypes.BlobTx{ - ChainID: uint256.MustFromBig(r.chainId), - Nonce: nonce, - GasTipCap: uint256.MustFromBig(big.NewInt(tip.Int64())), - GasFeeCap: uint256.MustFromBig(big.NewInt(gasFeeCap.Int64())), - Gas: gas, - To: r.rollupAddr, - Data: calldata, - BlobFeeCap: uint256.MustFromBig(blobFee), - BlobHashes: versionedHashes, - Sidecar: ðtypes.BlobTxSidecar{ - Blobs: batch.Sidecar.Blobs, - Commitments: batch.Sidecar.Commitments, - Proofs: batch.Sidecar.Proofs, - }, - }) - - } else { - tx = ethtypes.NewTx(ðtypes.DynamicFeeTx{ - ChainID: r.chainId, - Nonce: nonce, - GasTipCap: tip, - GasFeeCap: gasFeeCap, - Gas: gas, - To: &r.rollupAddr, - Data: calldata, - }) + // Create and sign transaction + tx, err := r.createRollupTx(batch, nonce, gas, tip, gasFeeCap, blobFee, calldata) + if err != nil { + return fmt.Errorf("failed to create rollup tx: %w", err) } signedTx, err := r.Sign(tx) if err != nil { - return fmt.Errorf("sign tx error:%v", err) + return fmt.Errorf("failed to sign tx: %w", err) } - log.Info("rollup tx info", - "batch_index", batchIndex, - "hash", signedTx.Hash().String(), - "type", signedTx.Type(), - "nonce", signedTx.Nonce(), - "gas", signedTx.Gas(), - "tip", signedTx.GasTipCap().String(), - "fee_cap", signedTx.GasFeeCap().String(), - "blob_fee_cap", signedTx.BlobGasFeeCap(), - "blob_gas", signedTx.BlobGas(), - "size", signedTx.Size(), - "blob_len", len(signedTx.BlobHashes()), - ) + // Log transaction details before sending + r.logTxInfo(signedTx, batchIndex) - err = r.SendTx(signedTx) - if err != nil { - log.Error("send tx to mempool", "error", err.Error()) - if utils.ErrStringMatch(err, core.ErrNonceTooLow) { - // adjust nonce - n1, _, err := utils.ParseNonce(err.Error()) - if err != nil { - return fmt.Errorf("parse nonce err: %w", err) - } - r.pendingTxs.SetNonce(n1 - 1) - log.Info("update pnonce", "nonce", n1-1) - } - return fmt.Errorf("send tx error:%v", err.Error()) - } else { - log.Info("rollup tx send to mempool succuess", "hash", signedTx.Hash().String()) + // Send transaction + if err := r.SendTx(signedTx); err != nil { + return fmt.Errorf("failed to send tx: %w", err) + } - r.pendingTxs.SetPindex(batchIndex) - r.pendingTxs.SetNonce(tx.Nonce()) - r.pendingTxs.Add(signedTx) + // Update pending state + r.pendingTxs.SetPindex(batchIndex) + r.pendingTxs.SetNonce(tx.Nonce()) + if err := r.pendingTxs.Add(signedTx); err != nil { + log.Error("Failed to track transaction", "error", err) } return nil } +func (r *Rollup) getNextNonce() uint64 { + if r.pendingTxs.pnonce != 0 { + return r.pendingTxs.pnonce + 1 + } + + nonce, err := r.L1Client.PendingNonceAt(context.Background(), r.WalletAddr()) + if err != nil { + log.Error("Failed to get nonce", "error", err) + return 0 + } + return nonce +} + +func (r *Rollup) createRollupTx(batch *eth.RPCRollupBatch, nonce, gas uint64, tip, gasFeeCap, blobFee *big.Int, calldata []byte) (*ethtypes.Transaction, error) { + if len(batch.Sidecar.Blobs) > 0 { + return r.createBlobTx(batch, nonce, gas, tip, gasFeeCap, blobFee, calldata) + } + return r.createDynamicFeeTx(nonce, gas, tip, gasFeeCap, calldata) +} + +func (r *Rollup) createBlobTx(batch *eth.RPCRollupBatch, nonce, gas uint64, tip, gasFeeCap, blobFee *big.Int, calldata []byte) (*ethtypes.Transaction, error) { + versionedHashes := make([]common.Hash, 0, len(batch.Sidecar.Commitments)) + for _, commit := range batch.Sidecar.Commitments { + versionedHashes = append(versionedHashes, kZGToVersionedHash(commit)) + } + + return ethtypes.NewTx(ðtypes.BlobTx{ + ChainID: uint256.MustFromBig(r.chainId), + Nonce: nonce, + GasTipCap: uint256.MustFromBig(big.NewInt(tip.Int64())), + GasFeeCap: uint256.MustFromBig(big.NewInt(gasFeeCap.Int64())), + Gas: gas, + To: r.rollupAddr, + Data: calldata, + BlobFeeCap: uint256.MustFromBig(blobFee), + BlobHashes: versionedHashes, + Sidecar: ðtypes.BlobTxSidecar{ + Blobs: batch.Sidecar.Blobs, + Commitments: batch.Sidecar.Commitments, + Proofs: batch.Sidecar.Proofs, + }, + }), nil +} + +func (r *Rollup) createDynamicFeeTx(nonce, gas uint64, tip, gasFeeCap *big.Int, calldata []byte) (*ethtypes.Transaction, error) { + return ethtypes.NewTx(ðtypes.DynamicFeeTx{ + ChainID: r.chainId, + Nonce: nonce, + GasTipCap: tip, + GasFeeCap: gasFeeCap, + Gas: gas, + To: &r.rollupAddr, + Data: calldata, + }), nil +} + +func (r *Rollup) logTxInfo(tx *ethtypes.Transaction, batchIndex uint64) { + log.Info("Rollup transaction created", + "batch_index", batchIndex, + "hash", tx.Hash().String(), + "type", tx.Type(), + "nonce", tx.Nonce(), + "gas", tx.Gas(), + "tip", tx.GasTipCap().String(), + "fee_cap", tx.GasFeeCap().String(), + "blob_fee_cap", tx.BlobGasFeeCap(), + "blob_gas", tx.BlobGas(), + "size", tx.Size(), + "blob_count", len(tx.BlobHashes()), + ) +} + func (r *Rollup) buildSignatureInput(batch *eth.RPCRollupBatch) (*bindings.IRollupBatchSignatureInput, error) { blsSignatures := batch.Signatures if len(blsSignatures) == 0 { @@ -904,6 +1280,8 @@ func (r *Rollup) GetGasTipAndCap() (*big.Int, *big.Int, *big.Int, error) { var blobFee *big.Int if head.ExcessBlobGas != nil { blobFee = eip4844.CalcBlobFee(*head.ExcessBlobGas) + // Set to 3x to handle blob market congestion + blobFee = new(big.Int).Mul(blobFee, big.NewInt(3)) } log.Info("fee info after bump", @@ -1140,7 +1518,9 @@ func (r *Rollup) SendTx(tx *ethtypes.Transaction) error { // after send tx // add to pending txs if r.pendingTxs != nil { - r.pendingTxs.Add(tx) + if err := r.pendingTxs.Add(tx); err != nil { + log.Error("failed to add transaction", "hash", tx.Hash().String(), "error", err) + } } return nil @@ -1223,13 +1603,17 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *ethtypes.Transaction) (*ethtypes.Tr if err != nil { return nil, fmt.Errorf("get l1 head error:%w", err) } + var recalculatedFeecap *big.Int if head.BaseFee != nil { - gasFeeCap = new(big.Int).Add( + recalculatedFeecap = new(big.Int).Add( tip, new(big.Int).Mul(head.BaseFee, big.NewInt(2)), ) } else { - gasFeeCap = new(big.Int).Set(tip) + recalculatedFeecap = new(big.Int).Set(tip) + } + if recalculatedFeecap.Cmp(gasFeeCap) > 0 { + gasFeeCap = recalculatedFeecap } } } @@ -1268,11 +1652,23 @@ func (r *Rollup) ReSubmitTx(resend bool, tx *ethtypes.Transaction) (*ethtypes.Tr } + // weiToGwei converts wei value to gwei string representation + weiToGwei := func(wei *big.Int) string { + if wei == nil { + return "0" + } + gwei := new(big.Float).Quo( + new(big.Float).SetInt(wei), + new(big.Float).SetInt64(1e9), + ) + return gwei.Text('f', 6) + } + log.Info("new tx info", "tx_type", newTx.Type(), - "gas_tip", tip.String(), //todo: convert to gwei - "gas_fee_cap", gasFeeCap.String(), //todo: convert to gwei - "blob_fee_cap", blobFeeCap.String(), //todo: convert to gwei + "gas_tip_gwei", weiToGwei(tip), + "gas_fee_cap_gwei", weiToGwei(gasFeeCap), + "blob_fee_cap_gwei", weiToGwei(blobFeeCap), ) // sign tx newTx, err = r.Sign(newTx) @@ -1386,3 +1782,123 @@ func (r *Rollup) InitFeeMetricsSum() error { r.metrics.CollectedL1FeeSum.Add(r.collectedL1FeeSum) return nil } + +// ClearPendingTxs clears all pending transactions +func (p *PendingTxs) ClearPendingTxs() { + p.txinfos = make(map[common.Hash]*types.TxRecord) +} + +// MarkUnconfirmed marks a transaction as unconfirmed in the pending pool +func (p *PendingTxs) MarkUnconfirmed(hash common.Hash) { + if txRecord, ok := p.txinfos[hash]; ok { + txRecord.Confirmed = false + } +} + +// CancelTx creates a new transaction with empty calldata to cancel the original transaction +func (r *Rollup) CancelTx(tx *ethtypes.Transaction) (*ethtypes.Transaction, error) { + if tx == nil { + return nil, errors.New("nil tx") + } + + log.Info("canceling transaction", + "hash", tx.Hash().String(), + "gas_fee_cap", tx.GasFeeCap().String(), + "gas_tip", tx.GasTipCap().String(), + "blob_fee_cap", tx.BlobGasFeeCap().String(), + "gas", tx.Gas(), + "nonce", tx.Nonce(), + ) + + tip, gasFeeCap, blobFeeCap, err := r.GetGasTipAndCap() + if err != nil { + return nil, fmt.Errorf("get gas tip and cap error:%w", err) + } + + // bump tip & feeCap + bumpedFeeCap := calcThresholdValue(tx.GasFeeCap(), tx.Type() == ethtypes.BlobTxType) + bumpedTip := calcThresholdValue(tx.GasTipCap(), tx.Type() == ethtypes.BlobTxType) + + // if bumpedTip > tip + if bumpedTip.Cmp(tip) > 0 { + tip = bumpedTip + } + + if bumpedFeeCap.Cmp(gasFeeCap) > 0 { + gasFeeCap = bumpedFeeCap + } + + if tx.Type() == ethtypes.BlobTxType { + bumpedBlobFeeCap := calcThresholdValue(tx.BlobGasFeeCap(), tx.Type() == ethtypes.BlobTxType) + if bumpedBlobFeeCap.Cmp(blobFeeCap) > 0 { + blobFeeCap = bumpedBlobFeeCap + } + } + + var newTx *ethtypes.Transaction + switch tx.Type() { + case ethtypes.DynamicFeeTxType: + newTx = ethtypes.NewTx(ðtypes.DynamicFeeTx{ + ChainID: tx.ChainId(), + To: tx.To(), + Nonce: tx.Nonce(), + GasFeeCap: gasFeeCap, + GasTipCap: tip, + Gas: tx.Gas(), + Value: tx.Value(), + Data: []byte{}, // Empty calldata for cancellation + }) + case ethtypes.BlobTxType: + // For blob transactions, we need to keep one empty blob + var emptyBlob kzg4844.Blob + emptyCommitment, err := kzg4844.BlobToCommitment(&emptyBlob) + if err != nil { + return nil, fmt.Errorf("failed to create empty blob commitment: %w", err) + } + emptyProof, err := kzg4844.ComputeBlobProof(&emptyBlob, emptyCommitment) + if err != nil { + return nil, fmt.Errorf("failed to create empty blob proof: %w", err) + } + + newTx = ethtypes.NewTx(ðtypes.BlobTx{ + ChainID: uint256.MustFromBig(tx.ChainId()), + Nonce: tx.Nonce(), + GasTipCap: uint256.MustFromBig(tip), + GasFeeCap: uint256.MustFromBig(gasFeeCap), + Gas: tx.Gas(), + To: *tx.To(), + Value: uint256.MustFromBig(tx.Value()), + Data: []byte{}, // Empty calldata for cancellation + BlobFeeCap: uint256.MustFromBig(blobFeeCap), + BlobHashes: []common.Hash{kZGToVersionedHash(emptyCommitment)}, + Sidecar: ðtypes.BlobTxSidecar{ + Blobs: []kzg4844.Blob{emptyBlob}, + Commitments: []kzg4844.Commitment{emptyCommitment}, + Proofs: []kzg4844.Proof{emptyProof}, + }, + }) + default: + return nil, fmt.Errorf("cancel unknown tx type:%v", tx.Type()) + } + + log.Info("new cancel tx info", + "tx_type", newTx.Type(), + "gas_tip_gwei", utils.WeiToGwei(tip), + "gas_fee_cap_gwei", utils.WeiToGwei(gasFeeCap), + "blob_fee_cap_gwei", utils.WeiToGwei(blobFeeCap), + ) + + // sign tx + newTx, err = r.Sign(newTx) + if err != nil { + return nil, fmt.Errorf("sign tx error:%w", err) + } + + // send tx + err = r.SendTx(newTx) + if err != nil { + return nil, fmt.Errorf("send tx error:%w", err) + } + + return newTx, nil +} diff --git a/tx-submitter/services/rollup_handle_test.go b/tx-submitter/services/rollup_handle_test.go new file mode 100644 index 000000000..64f03b197 --- /dev/null +++ b/tx-submitter/services/rollup_handle_test.go @@ -0,0 +1,240 @@ +package services + +import ( + "context" + "math/big" + "testing" + "time" + + "github.com/morph-l2/go-ethereum" + "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/core" + ethtypes "github.com/morph-l2/go-ethereum/core/types" + "github.com/morph-l2/go-ethereum/crypto" + "github.com/stretchr/testify/require" + + "morph-l2/bindings/bindings" + "morph-l2/tx-submitter/event" + "morph-l2/tx-submitter/iface" + "morph-l2/tx-submitter/metrics" + "morph-l2/tx-submitter/mock" + "morph-l2/tx-submitter/types" + "morph-l2/tx-submitter/utils" +) + +// setupTestRollup creates a test Rollup instance with mocked dependencies +func setupTestRollup(t *testing.T) (*Rollup, *mock.L1ClientWrapper, *mock.L2ClientWrapper, *mock.MockRollup) { + // Create mock clients + l1Mock := mock.NewL1ClientWrapper() + l2Mock := mock.NewL2ClientWrapper() + + // Set mock values for gas estimation + l1Mock.BaseFee = big.NewInt(1e9) // 1 gwei + l1Mock.TipCap = big.NewInt(1e9) // 1 gwei + + // Create a private key for testing + privateKey, err := crypto.GenerateKey() + require.NoError(t, err) + + // Create mock metrics + metrics := metrics.NewMetrics() + t.Cleanup(func() { + metrics.UnregisterMetrics() + }) + + // Create mock event storage + eventStorage := mock.NewMockEventInfoStorage() + err = eventStorage.Load() + require.NoError(t, err) + + // Initialize event storage with test data + eventStorage.SetBlockProcessed(1000) + eventStorage.SetBlockTime(uint64(time.Now().Unix())) + err = eventStorage.Store() + require.NoError(t, err) + + // Create mock event indexer + indexer := event.NewEventIndexer( + nil, // We don't need a real ethclient.Client for testing + big.NewInt(0), + ethereum.FilterQuery{}, + 100, + eventStorage, + ) + + // Create mock rotator + rotator := NewRotator(common.Address{}, common.Address{}, indexer) + + // Create mock L1Staking + l1Staking := mock.NewMockL1Staking() + // Set some test stakers + testStakers := []common.Address{ + common.HexToAddress("0x1111111111111111111111111111111111111111"), + common.HexToAddress("0x2222222222222222222222222222222222222222"), + } + l1Staking.SetActiveStakers(testStakers) + + // Create rollup config + defaultCfg := utils.Config{ + MaxTip: 10e9, + MaxBaseFee: 100e9, + MinTip: 1e9, + TipFeeBump: 100, + TxTimeout: 10 * time.Second, + PriorityRollup: true, + } + + // Create mock journal + mockJournal := mock.NewMockJournal() + + // Create mock rollup + mockRollup := mock.NewMockRollup() + + // Get Rollup ABI + rollupAbi, err := bindings.RollupMetaData.GetAbi() + require.NoError(t, err) + require.NotNil(t, rollupAbi) + + // Create rollup instance + rollup := NewRollup( + context.Background(), + metrics, + nil, + l1Mock, + []iface.L2Client{l2Mock}, + mockRollup, + l1Staking, + big.NewInt(1), + privateKey, + common.Address{}, + rollupAbi, + defaultCfg, + nil, + rotator, + nil, + nil, + eventStorage, + ) + + // Initialize pending transactions + rollup.pendingTxs = NewPendingTxs([]byte{}, []byte{}, mockJournal) + + // Initialize reorg detector + // Use the mock implementation for controlled testing + mockReorgDetector := mock.NewMockReorgDetector() + rollup.reorgDetector = mockReorgDetector + + return rollup, l1Mock, l2Mock, mockRollup +} + +// TestHandleDiscardedTx tests the handling of discarded transactions +func TestHandleDiscardedTx(t *testing.T) { + r, l1Mock, _, _ := setupTestRollup(t) + + // Create a test transaction + tx := ethtypes.NewTx(ðtypes.DynamicFeeTx{ + ChainID: big.NewInt(1), + Nonce: 1, + GasTipCap: big.NewInt(1e9), + GasFeeCap: big.NewInt(2e9), + Gas: 21000, + To: &common.Address{}, + }) + + txRecord := &types.TxRecord{ + Tx: tx, + SendTime: uint64(time.Now().Unix()), + QueryTimes: 5, // Set high enough to trigger discard handling + } + + // Test case 1: Transaction was confirmed in a reorg + l1Mock.SendTxErr = core.ErrNonceTooLow + err := r.handleDiscardedTx(txRecord, tx, "commitBatch") + require.NoError(t, err) + require.Equal(t, 0, len(r.pendingTxs.GetAll()), "Transaction should be removed from pending pool") + + // Test case 2: Successful resubmission + l1Mock.SendTxErr = nil + tx = ethtypes.NewTx(ðtypes.DynamicFeeTx{ + ChainID: big.NewInt(1), + Nonce: 2, + GasTipCap: big.NewInt(1e9), + GasFeeCap: big.NewInt(2e9), + Gas: 21000, + To: &common.Address{}, + }) + txRecord.Tx = tx + + err = r.handleDiscardedTx(txRecord, tx, "commitBatch") + require.NoError(t, err) + require.Equal(t, 1, len(r.pendingTxs.GetAll()), "New transaction should be added to pending pool") +} + +// TestHandleReorg tests the handling of chain reorganizations +func TestHandleReorg(t *testing.T) { + r, _, _, _ := setupTestRollup(t) + + // Test reorg handling + depth := uint64(2) + err := r.handleReorg(depth) + require.NoError(t, err) + + // Verify metrics + require.Equal(t, float64(depth), r.metrics.GetReorgDepth()) + require.Equal(t, float64(1), r.metrics.GetReorgCount()) + +} + +// TestHandleMissingTx tests the handling of missing transactions +func TestHandleMissingTx(t *testing.T) { + r, l1Mock, _, _ := setupTestRollup(t) + + // Create a test transaction + tx := ethtypes.NewTx(ðtypes.DynamicFeeTx{ + ChainID: big.NewInt(1), + Nonce: 1, + GasTipCap: big.NewInt(1e9), + GasFeeCap: big.NewInt(2e9), + Gas: 21000, + To: &common.Address{}, + }) + + // Test case 1: Transaction with low query times + txRecord := &types.TxRecord{ + Tx: tx, + SendTime: uint64(time.Now().Unix()), + QueryTimes: 2, + } + + // add record to localpool + r.pendingTxs.txinfos[tx.Hash()] = txRecord + + err := r.handleMissingTx(txRecord, tx, "commitBatch") + require.NoError(t, err) + record := r.pendingTxs.GetTxRecord(tx.Hash()) + require.NotNil(t, record, "Transaction record should exist") + require.Equal(t, uint64(3), record.QueryTimes) + + // Test case 2: Transaction with high query times + oldHash := tx.Hash() + txRecord.QueryTimes = 5 + // Set up mock for successful resubmission + l1Mock.SendTxErr = nil + err = r.handleMissingTx(txRecord, tx, "commitBatch") + require.NoError(t, err) + + // The old transaction should be removed + record = r.pendingTxs.GetTxRecord(oldHash) + require.Nil(t, record, "Old transaction should be removed") + + // Find the new transaction by checking all pending transactions + found := false + for _, txRecord := range r.pendingTxs.GetAll() { + if txRecord.Tx.Nonce() == tx.Nonce() { + found = true + require.Equal(t, uint64(0), txRecord.QueryTimes, "New transaction should have reset query times") + break + } + } + require.True(t, found, "New transaction should exist in pending pool") +} diff --git a/tx-submitter/services/rollup_test.go b/tx-submitter/services/rollup_test.go index b8045b4ab..abbca1045 100644 --- a/tx-submitter/services/rollup_test.go +++ b/tx-submitter/services/rollup_test.go @@ -1,19 +1,16 @@ package services import ( - "context" "math/big" "testing" - "morph-l2/tx-submitter/mock" - "morph-l2/tx-submitter/utils" - + "github.com/holiman/uint256" "github.com/morph-l2/go-ethereum/common" "github.com/morph-l2/go-ethereum/core/types" - "github.com/morph-l2/go-ethereum/crypto" - - "github.com/holiman/uint256" + "github.com/morph-l2/go-ethereum/crypto/kzg4844" "github.com/stretchr/testify/require" + + "morph-l2/tx-submitter/utils" ) func TestSendTx(t *testing.T) { @@ -55,26 +52,18 @@ func TestSendTx(t *testing.T) { } func TestGetGasTipAndCap(t *testing.T) { - l1Mock := mock.NewL1ClientWrapper() initTip := big.NewInt(1e9) - baseFee := big.NewInt(1e9) - excessBlobGas := uint64(1) block := types.NewBlockWithHeader( &types.Header{ - BaseFee: baseFee, - ExcessBlobGas: &excessBlobGas, + BaseFee: baseFee, }, ) + + r, l1Mock, _, _ := setupTestRollup(t) l1Mock.TipCap = initTip l1Mock.Block = block - config := utils.Config{ - MaxTip: 10e9, - MaxBaseFee: 100e9, - MinTip: 1e9, - TipFeeBump: 100, - } - r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) + tip, feecap, blobfee, err := r.GetGasTipAndCap() require.NoError(t, err) require.NotNil(t, tip) @@ -82,13 +71,12 @@ func TestGetGasTipAndCap(t *testing.T) { require.NotNil(t, blobfee) require.Equal(t, initTip, tip) - config = utils.Config{ - MaxTip: 10e9, - MaxBaseFee: 100e9, - MinTip: 1e9, - TipFeeBump: 200, - } - r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) + // Test with different TipFeeBump + r, l1Mock, _, _ = setupTestRollup(t) + l1Mock.TipCap = initTip + l1Mock.Block = block + r.cfg.TipFeeBump = 200 + tip, feecap, blobfee, err = r.GetGasTipAndCap() require.NoError(t, err) require.NotNil(t, tip) @@ -96,60 +84,335 @@ func TestGetGasTipAndCap(t *testing.T) { require.NotNil(t, blobfee) require.Equal(t, tip, initTip.Mul(initTip, big.NewInt(2))) - config = utils.Config{ - MaxTip: 10e9, - MaxBaseFee: baseFee.Uint64() - 1, - MinTip: 1e9, - TipFeeBump: 200, - } - r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) + // Test with base fee too high + r, l1Mock, _, _ = setupTestRollup(t) + l1Mock.TipCap = initTip + l1Mock.Block = block + r.cfg.MaxBaseFee = baseFee.Uint64() - 1 + _, _, _, err = r.GetGasTipAndCap() require.ErrorContains(t, err, "base fee is too high") - config = utils.Config{ - MaxTip: initTip.Uint64() - 1, - MaxBaseFee: 100e9, - MinTip: 1e9, - TipFeeBump: 200, - } - r = NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, nil, nil, common.Address{}, nil, config, nil, nil, nil, nil, nil) + // Test with tip too high + r, l1Mock, _, _ = setupTestRollup(t) + l1Mock.TipCap = initTip + l1Mock.Block = block + r.cfg.MaxTip = initTip.Uint64() - 1 + _, _, _, err = r.GetGasTipAndCap() require.ErrorContains(t, err, "tip is too high") - } func TestReSubmitTx(t *testing.T) { - l1Mock := mock.NewL1ClientWrapper() - initTip := big.NewInt(1e9) + marketTip := big.NewInt(3e9) // 3 Gwei market tip + baseFee := big.NewInt(2e9) // 2 Gwei base fee + block := types.NewBlockWithHeader( + &types.Header{ + BaseFee: baseFee, + }, + ) + + r, l1Mock, _, _ := setupTestRollup(t) + l1Mock.TipCap = marketTip + l1Mock.Block = block + r.cfg.MaxTip = 10e12 + r.cfg.MaxBaseFee = 100e9 + r.cfg.MinTip = 1e9 + r.cfg.TipFeeBump = 0 // no bump for replace mode + + // Test nil tx + _, err := r.ReSubmitTx(false, nil) + require.ErrorContains(t, err, "nil tx") + + t.Run("DynamicFeeTx", func(t *testing.T) { + oldDynamicTx := types.NewTx(&types.DynamicFeeTx{ + ChainID: big.NewInt(1), + Nonce: 1, + GasTipCap: big.NewInt(2e9), // 2 Gwei + GasFeeCap: big.NewInt(10e9), // 10 Gwei + Gas: 100000, + To: &common.Address{}, + Value: big.NewInt(0), + Data: []byte{1, 2, 3, 4}, + }) + + // Test Replace Mode + t.Run("Replace", func(t *testing.T) { + newTx, err := r.ReSubmitTx(false, oldDynamicTx) + require.NoError(t, err) + require.NotNil(t, newTx) + + // Verify fields preserved + require.Equal(t, oldDynamicTx.Nonce(), newTx.Nonce()) + require.Equal(t, oldDynamicTx.Gas(), newTx.Gas()) + require.Equal(t, oldDynamicTx.Data(), newTx.Data()) + require.Equal(t, oldDynamicTx.Value(), newTx.Value()) + + // Verify fees are at least 1.1x of original + originalTip := oldDynamicTx.GasTipCap() + newTip := newTx.GasTipCap() + expectedTip := new(big.Int).Mul(originalTip, big.NewInt(110)) + expectedTip = expectedTip.Div(expectedTip, big.NewInt(100)) + require.True(t, newTip.Cmp(expectedTip) >= 0, "new tip should be at least 1.1x of original") + + originalFeeCap := oldDynamicTx.GasFeeCap() + newFeeCap := newTx.GasFeeCap() + expectedFeeCap := new(big.Int).Mul(originalFeeCap, big.NewInt(110)) + expectedFeeCap = expectedFeeCap.Div(expectedFeeCap, big.NewInt(100)) + require.True(t, newFeeCap.Cmp(expectedFeeCap) >= 0, "new fee cap should be at least 1.1x of original") + }) + + // Test Resubmit Mode + t.Run("Resubmit", func(t *testing.T) { + newTx, err := r.ReSubmitTx(true, oldDynamicTx) + require.NoError(t, err) + require.NotNil(t, newTx) + + // Verify fields preserved + require.Equal(t, oldDynamicTx.Nonce(), newTx.Nonce()) + require.Equal(t, oldDynamicTx.Gas(), newTx.Gas()) + require.Equal(t, oldDynamicTx.Data(), newTx.Data()) + require.Equal(t, oldDynamicTx.Value(), newTx.Value()) + require.Equal(t, oldDynamicTx.ChainId(), newTx.ChainId()) + + // Verify fees are market prices + require.Equal(t, marketTip.Uint64(), newTx.GasTipCap().Uint64(), "new tip should be market price") + require.True(t, newTx.GasFeeCap().Cmp(baseFee) > 0, "new fee cap should be higher than base fee") + }) + }) + + t.Run("BlobTx", func(t *testing.T) { + oldBlobTx := types.NewTx(&types.BlobTx{ + ChainID: uint256.MustFromBig(big.NewInt(1)), + Nonce: 2, + GasTipCap: uint256.MustFromBig(big.NewInt(2e9)), + GasFeeCap: uint256.MustFromBig(big.NewInt(10e9)), + Gas: 200000, + To: common.Address{}, + Value: uint256.NewInt(0), + Data: []byte{1, 2, 3, 4}, + BlobFeeCap: uint256.MustFromBig(big.NewInt(5e9)), + BlobHashes: []common.Hash{{1}}, + Sidecar: &types.BlobTxSidecar{ + Blobs: []kzg4844.Blob{{1}}, + Commitments: []kzg4844.Commitment{{1}}, + Proofs: []kzg4844.Proof{{1}}, + }, + }) + + // Test Replace Mode + t.Run("Replace", func(t *testing.T) { + newTx, err := r.ReSubmitTx(false, oldBlobTx) + require.NoError(t, err) + require.NotNil(t, newTx) + // Verify fields preserved + require.Equal(t, oldBlobTx.Nonce(), newTx.Nonce()) + require.Equal(t, oldBlobTx.Gas(), newTx.Gas()) + require.Equal(t, oldBlobTx.Data(), newTx.Data()) + require.Equal(t, oldBlobTx.Value(), newTx.Value()) + require.Equal(t, len(oldBlobTx.BlobHashes()), len(newTx.BlobHashes())) + + // Verify fees are at least 2x of original + originalTip := oldBlobTx.GasTipCap() + newTip := newTx.GasTipCap() + expectedTip := new(big.Int).Mul(originalTip, big.NewInt(200)) + expectedTip = expectedTip.Div(expectedTip, big.NewInt(100)) + require.True(t, newTip.Cmp(expectedTip) >= 0, "new tip should be at least 2x of original") + + originalFeeCap := oldBlobTx.GasFeeCap() + newFeeCap := newTx.GasFeeCap() + expectedFeeCap := new(big.Int).Mul(originalFeeCap, big.NewInt(200)) + expectedFeeCap = expectedFeeCap.Div(expectedFeeCap, big.NewInt(100)) + require.True(t, newFeeCap.Cmp(expectedFeeCap) >= 0, "new fee cap should be at least 2x of original") + + originalBlobFeeCap := oldBlobTx.BlobGasFeeCap() + newBlobFeeCap := newTx.BlobGasFeeCap() + expectedBlobFeeCap := new(big.Int).Mul(originalBlobFeeCap, big.NewInt(200)) + expectedBlobFeeCap = expectedBlobFeeCap.Div(expectedBlobFeeCap, big.NewInt(100)) + require.True(t, newBlobFeeCap.Cmp(expectedBlobFeeCap) >= 0, "new blob fee cap should be at least 2x of original") + }) + + // Test Resubmit Mode + t.Run("Resubmit", func(t *testing.T) { + newTx, err := r.ReSubmitTx(true, oldBlobTx) + require.NoError(t, err) + require.NotNil(t, newTx) + + // Verify fields preserved + require.Equal(t, oldBlobTx.Nonce(), newTx.Nonce()) + require.Equal(t, oldBlobTx.Gas(), newTx.Gas()) + require.Equal(t, oldBlobTx.Data(), newTx.Data()) + require.Equal(t, oldBlobTx.Value(), newTx.Value()) + require.Equal(t, len(oldBlobTx.BlobHashes()), len(newTx.BlobHashes())) + + // Verify fees are market prices + require.Equal(t, marketTip.Uint64(), newTx.GasTipCap().Uint64(), "new tip should be market price") + require.True(t, newTx.GasFeeCap().Cmp(baseFee) > 0, "new fee cap should be higher than base fee") + require.NotNil(t, newTx.BlobGasFeeCap(), "new blob tx should have blob fee cap") + }) + }) +} + +func TestCancelTx(t *testing.T) { + // Setup mock L1 client + initTip := big.NewInt(1e9) baseFee := big.NewInt(1e9) - excessBlobGas := uint64(1) block := types.NewBlockWithHeader( &types.Header{ - BaseFee: baseFee, - ExcessBlobGas: &excessBlobGas, + BaseFee: baseFee, }, ) + + r, l1Mock, _, _ := setupTestRollup(t) l1Mock.TipCap = initTip l1Mock.Block = block - config := utils.Config{ - MaxTip: 10e12, - MaxBaseFee: 100e9, - MinTip: 1e10, - TipFeeBump: 100, - } + r.cfg.MaxTip = 10e12 + r.cfg.MaxBaseFee = 100e9 + r.cfg.MinTip = 1e9 + r.cfg.TipFeeBump = 120 // 20% bump + + // Test 1: Cancel nil transaction + _, err := r.CancelTx(nil) + require.Error(t, err) + require.Contains(t, err.Error(), "nil tx") - priv, err := crypto.GenerateKey() + // Test 2: Cancel DynamicFeeTx + originalDynamicTx := types.NewTx(&types.DynamicFeeTx{ + ChainID: big.NewInt(1), + Nonce: 1, + GasTipCap: big.NewInt(2e9), // 2 Gwei + GasFeeCap: big.NewInt(10e9), // 10 Gwei + Gas: 100000, + To: &common.Address{}, + Value: big.NewInt(0), + Data: []byte{1, 2, 3, 4}, // Some non-empty data + }) + + cancelTx, err := r.CancelTx(originalDynamicTx) require.NoError(t, err) + require.NotNil(t, cancelTx) - r := NewRollup(context.Background(), nil, nil, l1Mock, nil, nil, nil, big.NewInt(1), priv, common.Address{}, nil, config, nil, nil, nil, nil, nil) - _, err = r.ReSubmitTx(false, nil) - require.ErrorContains(t, err, "nil tx") - oldTx := types.NewTx(&types.DynamicFeeTx{ - GasTipCap: initTip, + // Verify the cancel transaction + require.Equal(t, originalDynamicTx.Nonce(), cancelTx.Nonce()) + require.Equal(t, originalDynamicTx.Gas(), cancelTx.Gas()) + require.Equal(t, 0, len(cancelTx.Data())) + + // Verify fee multipliers for DynamicFeeTx (1.2x) + originalTip := originalDynamicTx.GasTipCap() + cancelTip := cancelTx.GasTipCap() + expectedTip := new(big.Int).Mul(originalTip, big.NewInt(110)) + expectedTip = expectedTip.Div(expectedTip, big.NewInt(100)) + require.True(t, cancelTip.Cmp(expectedTip) >= 0, "cancel tx tip should be at least 1.1x of original") + + originalFeeCap := originalDynamicTx.GasFeeCap() + cancelFeeCap := cancelTx.GasFeeCap() + expectedFeeCap := new(big.Int).Mul(originalFeeCap, big.NewInt(110)) + expectedFeeCap = expectedFeeCap.Div(expectedFeeCap, big.NewInt(100)) + require.True(t, cancelFeeCap.Cmp(expectedFeeCap) >= 0, "cancel tx fee cap should be at least 1.1x of original") + + // Test 3: Cancel BlobTx + blobTx := types.NewTx(&types.BlobTx{ + ChainID: uint256.MustFromBig(big.NewInt(1)), + Nonce: 2, + GasTipCap: uint256.MustFromBig(big.NewInt(2e9)), + GasFeeCap: uint256.MustFromBig(big.NewInt(10e9)), + Gas: 200000, + To: common.Address{}, + Value: uint256.NewInt(0), + Data: []byte{1, 2, 3, 4}, + BlobFeeCap: uint256.MustFromBig(big.NewInt(5e9)), + BlobHashes: []common.Hash{{1}}, + Sidecar: &types.BlobTxSidecar{ + Blobs: []kzg4844.Blob{{1}}, + Commitments: []kzg4844.Commitment{{1}}, + Proofs: []kzg4844.Proof{{1}}, + }, }) - tx, err := r.ReSubmitTx(false, oldTx) + + cancelBlobTx, err := r.CancelTx(blobTx) require.NoError(t, err) - require.EqualValues(t, config.MinTip, tx.GasTipCap().Uint64()) + require.NotNil(t, cancelBlobTx) + + // Verify the cancel blob transaction + require.Equal(t, blobTx.Nonce(), cancelBlobTx.Nonce()) + require.Equal(t, blobTx.Gas(), cancelBlobTx.Gas()) + require.Equal(t, 0, len(cancelBlobTx.Data())) + + // Verify fee multipliers for BlobTx (2x) + originalTip = blobTx.GasTipCap() + cancelTip = cancelBlobTx.GasTipCap() + require.True(t, cancelTip.Cmp(new(big.Int).Mul(originalTip, big.NewInt(2))) >= 0, "cancel blob tx tip should be at least 2x of original") + + originalFeeCap = blobTx.GasFeeCap() + cancelFeeCap = cancelBlobTx.GasFeeCap() + require.True(t, cancelFeeCap.Cmp(new(big.Int).Mul(originalFeeCap, big.NewInt(2))) >= 0, "cancel blob tx fee cap should be at least 2x of original") + + originalBlobFeeCap := blobTx.BlobGasFeeCap() + cancelBlobFeeCap := cancelBlobTx.BlobGasFeeCap() + require.True(t, cancelBlobFeeCap.Cmp(new(big.Int).Mul(originalBlobFeeCap, big.NewInt(2))) >= 0, "cancel blob tx blob fee cap should be at least 2x of original") + require.Equal(t, 1, len(cancelBlobTx.BlobHashes())) + require.Equal(t, 1, len(cancelBlobTx.BlobTxSidecar().Blobs)) +} + +func TestTxStateTransition(t *testing.T) { + // Create test transactions + tx1 := types.NewTx(&types.DynamicFeeTx{ + ChainID: big.NewInt(1), + Nonce: 0, + GasTipCap: big.NewInt(1), + GasFeeCap: big.NewInt(100), + Gas: 21000, + To: &common.Address{}, + Value: big.NewInt(1), + }) + receipt := &types.Receipt{ + TxHash: tx1.Hash(), + BlockNumber: big.NewInt(1000), + Status: 1, + BlobGasUsed: 0, + BlobGasPrice: big.NewInt(0), + } + + // Create rollup instance + rollup, l1Mock, _, _ := setupTestRollup(t) + rollup.cfg.PriorityRollup = true + // Test transaction state transitions + t.Run("Transaction State Flow", func(t *testing.T) { + // Step 1: Transaction exists only locally (not in mempool or block) + err := rollup.pendingTxs.Add(tx1) + require.NoError(t, err) + status, err := rollup.getTxStatus(tx1) + require.NoError(t, err) + require.Equal(t, txStatusMissing, status.state) + + // Step 2: Transaction detected in mempool + l1Mock.AddTx(tx1) + status, err = rollup.getTxStatus(tx1) + require.NoError(t, err) + require.Equal(t, txStatusPending, status.state) + + // Step 3: Transaction included in block + l1Mock.AddReceipt(receipt) + status, err = rollup.getTxStatus(tx1) + require.NoError(t, err) + require.Equal(t, txStatusConfirmed, status.state) + + // Step 4: Transaction finalized (after 6 blocks) + l1Mock.Block = types.NewBlockWithHeader( + &types.Header{ + Number: big.NewInt(1006), + }, + ) + status, err = rollup.getTxStatus(tx1) + require.NoError(t, err) + require.Equal(t, txStatusConfirmed, status.state) + + // Step 5: Process transaction and verify cleanup + rollup.ProcessTx() + // Verify transaction is removed from pendingTxs after finalization + txRecord := rollup.pendingTxs.GetTxRecord(tx1.Hash()) + require.Nil(t, txRecord) + }) } diff --git a/tx-submitter/services/rotator.go b/tx-submitter/services/rotator.go index c99884049..bb5bb81af 100644 --- a/tx-submitter/services/rotator.go +++ b/tx-submitter/services/rotator.go @@ -63,11 +63,11 @@ func (r *Rotator) UpdateState(clients []iface.L2Client, l1Staking iface.IL1Staki return fmt.Errorf("GetCurrentSubmitter: failed to load storage: %w", err) } // if index not complete - if storage.BlockProcessed == 0 { + if storage.BlockProcessed() == 0 { return errors.New("wait event index service to complete") } - r.startTime = utils.MaxOfThreeBig(epochUpdateTime, sequcerUpdateTime, big.NewInt(int64(storage.BlockTime))) + r.startTime = utils.MaxOfThreeBig(epochUpdateTime, sequcerUpdateTime, big.NewInt(int64(storage.BlockTime()))) // get current sequencer set seqSet, err := QuerySequencerSet(r.l2SequencerAddr, clients) @@ -96,36 +96,40 @@ func (r *Rotator) UpdateState(clients []iface.L2Client, l1Staking iface.IL1Staki log.Info( "rotator state updated", "epoch", r.epoch, - "start", r.startTime, - "epoch_update_time", epochUpdateTime, - "seq_update_time", sequcerUpdateTime, - "indexed_latest_block", storage.BlockProcessed, - "indexed_event_emit_time", storage.BlockTime, + "start_time", utils.FormatTime(r.startTime), + "start_timestamp", r.startTime, + "epoch_update_time", utils.FormatTime(epochUpdateTime), + "epoch_update_timestamp", epochUpdateTime, + "seq_update_time", utils.FormatTime(sequcerUpdateTime), + "seq_update_timestamp", sequcerUpdateTime, + "indexed_latest_block", storage.BlockProcessed(), + "indexed_event_time", utils.FormatTime(big.NewInt(int64(storage.BlockTime()))), + "indexed_event_timestamp", storage.BlockTime(), ) return nil } // GetCurrentSubmitter returns the current sequencer that should be submitting -func (r *Rotator) CurrentSubmitter(clients []iface.L2Client, l1Staking iface.IL1Staking) (*common.Address, error) { +func (r *Rotator) CurrentSubmitter(clients []iface.L2Client, l1Staking iface.IL1Staking) (*common.Address, int64, error) { err := r.UpdateState(clients, l1Staking) if err != nil { - return nil, fmt.Errorf("update state err: %w", err) + return nil, 0, fmt.Errorf("update state err: %w", err) } if len(r.GetSubmitterSet()) == 0 { - return nil, fmt.Errorf("GetCurrentSubmitter: sequencer set is empty") + return nil, 0, fmt.Errorf("GetCurrentSubmitter: sequencer set is empty") } if r.epoch.Int64() == 0 { - return nil, fmt.Errorf("GetCurrentSubmitter: epoch is 0") + return nil, 0, fmt.Errorf("GetCurrentSubmitter: epoch is 0") } sec := time.Now().Unix() - r.startTime.Int64() seqIdx := sec / r.epoch.Int64() % int64(len(r.GetSequencerSet())) - return &r.GetSubmitterSet()[seqIdx], nil + return &r.GetSubmitterSet()[seqIdx], seqIdx, nil } diff --git a/tx-submitter/services/utils.go b/tx-submitter/services/utils.go index e8e185b42..302f692fe 100644 --- a/tx-submitter/services/utils.go +++ b/tx-submitter/services/utils.go @@ -5,7 +5,7 @@ import ( "math/big" "github.com/morph-l2/go-ethereum/common" - "github.com/morph-l2/go-ethereum/core/types" + ethtypes "github.com/morph-l2/go-ethereum/core/types" "github.com/morph-l2/go-ethereum/crypto/kzg4844" "github.com/morph-l2/go-ethereum/params" ) @@ -44,24 +44,39 @@ func calcThresholdValue(x *big.Int, isBlobTx bool) *big.Int { return threshold } -func calcFee(receipt *types.Receipt) float64 { +// calcFee calculates the total transaction fee in ETH +// For regular transactions: fee = gasUsed * effectiveGasPrice +// For blob transactions: fee = (gasUsed * effectiveGasPrice) + (blobGasUsed * blobGasPrice) +func calcFee(tx *ethtypes.Transaction, receipt *ethtypes.Receipt) *big.Float { + if receipt == nil || tx == nil { + return new(big.Float).SetUint64(0) + } - if receipt == nil || receipt.EffectiveGasPrice == nil { - return 0 + // Calculate base transaction fee + gasUsed := new(big.Float).SetUint64(receipt.GasUsed) + effectiveGasPrice := new(big.Float) + if receipt.EffectiveGasPrice != nil { + effectiveGasPrice.SetInt(receipt.EffectiveGasPrice) } + txFee := new(big.Float).Mul(gasUsed, effectiveGasPrice) - calldatafee := new(big.Int).Mul(receipt.EffectiveGasPrice, big.NewInt(int64(receipt.GasUsed))) - // blobfee - blobfee := big.NewInt(0) - if receipt.Type == types.BlobTxType { + // Convert to ETH + ethDenominator := new(big.Float).SetInt(big.NewInt(params.Ether)) + txFeeEth := new(big.Float).Quo(txFee, ethDenominator) + + // Add blob fee for blob transactions + if tx.Type() == ethtypes.BlobTxType { + blobGasUsed := new(big.Float).SetUint64(tx.BlobGas()) + blobGasPrice := new(big.Float) if receipt.BlobGasPrice != nil { - blobfee = new(big.Int).Mul(big.NewInt(int64(receipt.BlobGasUsed)), receipt.BlobGasPrice) + blobGasPrice.SetInt(receipt.BlobGasPrice) } - + blobFee := new(big.Float).Mul(blobGasUsed, blobGasPrice) + blobFeeEth := new(big.Float).Quo(blobFee, ethDenominator) + txFeeEth.Add(txFeeEth, blobFeeEth) } - fee := new(big.Int).Add(calldatafee, blobfee) - return ToEtherFloat(fee) + return txFeeEth } func ToEtherFloat(weiAmt *big.Int) float64 { diff --git a/tx-submitter/types/batch_cache.go b/tx-submitter/types/batch_cache.go index 7e6794f1d..9be2d6031 100644 --- a/tx-submitter/types/batch_cache.go +++ b/tx-submitter/types/batch_cache.go @@ -3,28 +3,79 @@ package types import ( "sync" + "morph-l2/tx-submitter/iface" + "github.com/morph-l2/go-ethereum/eth" + "github.com/morph-l2/go-ethereum/log" ) type BatchCache struct { + m sync.RWMutex batchCache map[uint64]*eth.RPCRollupBatch - m sync.Mutex + fetcher iface.BatchFetcher } -func NewBatchCache() *BatchCache { +// NewBatchCache creates a new batch cache instance +func NewBatchCache(fetcher iface.BatchFetcher) *BatchCache { return &BatchCache{ batchCache: make(map[uint64]*eth.RPCRollupBatch), + fetcher: fetcher, } } +// Get retrieves a batch from the cache by its index +// If not found in cache, tries to fetch from node func (b *BatchCache) Get(batchIndex uint64) (*eth.RPCRollupBatch, bool) { - b.m.Lock() - defer b.m.Unlock() - + // First try to get from cache + b.m.RLock() batch, ok := b.batchCache[batchIndex] - return batch, ok + b.m.RUnlock() + + if ok { + return batch, true + } + + // If not in cache, try to fetch from node + if b.fetcher != nil { + fetchedBatch, err := b.fetcher.GetRollupBatchByIndex(batchIndex) + if err != nil { + log.Warn("Failed to fetch batch from node", + "index", batchIndex, + "error", err) + return nil, false + } + + // Validate batch before caching - batch must exist and have signatures + if fetchedBatch != nil && len(fetchedBatch.Signatures) > 0 { + // Store valid batch in cache for future use + b.m.Lock() + b.batchCache[batchIndex] = fetchedBatch + b.m.Unlock() + + return fetchedBatch, true + } else if fetchedBatch != nil { + // Batch exists but doesn't have signatures, don't cache it + log.Debug("Batch validation failed - no signatures", + "batch_index", batchIndex, + "found", fetchedBatch != nil, + "has_signatures", len(fetchedBatch.Signatures) > 0) + return fetchedBatch, true + } + } + + return nil, false } + func (b *BatchCache) Set(batchIndex uint64, batch *eth.RPCRollupBatch) { + // Validate batch before caching - batch must exist and have signatures + if batch == nil || len(batch.Signatures) == 0 { + log.Debug("Refusing to cache invalid batch", + "batch_index", batchIndex, + "exists", batch != nil, + "has_signatures", batch != nil && len(batch.Signatures) > 0) + return + } + b.m.Lock() defer b.m.Unlock() @@ -37,3 +88,10 @@ func (b *BatchCache) Delete(batchIndex uint64) { delete(b.batchCache, batchIndex) } + +// Clear removes all entries from the batch cache +func (bc *BatchCache) Clear() { + bc.m.Lock() + defer bc.m.Unlock() + bc.batchCache = make(map[uint64]*eth.RPCRollupBatch) +} diff --git a/tx-submitter/types/batch_cache_test.go b/tx-submitter/types/batch_cache_test.go index f07d6411e..ae1449fd0 100644 --- a/tx-submitter/types/batch_cache_test.go +++ b/tx-submitter/types/batch_cache_test.go @@ -1,21 +1,201 @@ package types import ( + "sync" "testing" - "github.com/stretchr/testify/require" + "github.com/morph-l2/go-ethereum/eth" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/mock" ) +// MockBatchFetcher implements the BatchFetcher interface for testing +type MockBatchFetcher struct { + mock.Mock +} + +func (m *MockBatchFetcher) GetRollupBatchByIndex(index uint64) (*eth.RPCRollupBatch, error) { + args := m.Called(index) + if args.Get(0) == nil { + return nil, args.Error(1) + } + return args.Get(0).(*eth.RPCRollupBatch), args.Error(1) +} + func TestBatchCache(t *testing.T) { + t.Run("Get non-existent batch - fetch from node", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + expectedBatch := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{ + { + Signature: []byte("signature"), + }, + }, + } + mockFetcher.On("GetRollupBatchByIndex", uint64(1)).Return(expectedBatch, nil) + + batch, ok := cache.Get(1) + assert.True(t, ok) + assert.Equal(t, expectedBatch, batch) + + mockFetcher.AssertExpectations(t) + + // Second get should use cache + batch, ok = cache.Get(1) + assert.True(t, ok) + assert.Equal(t, expectedBatch, batch) + }) + + t.Run("Get non-existent batch - fetch fails", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + mockFetcher.On("GetRollupBatchByIndex", uint64(2)).Return(nil, assert.AnError).Once() + + batch, ok := cache.Get(2) + assert.False(t, ok) + assert.Nil(t, batch) + + mockFetcher.AssertExpectations(t) + }) + + t.Run("Set and Get batch", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + batch := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{ + { + Signature: []byte("signature"), + }, + }, + } + + // Add this line to set up the mock expectation + mockFetcher.On("GetRollupBatchByIndex", uint64(3)).Return(batch, nil).Maybe() + + cache.Set(3, batch) + + gotBatch, ok := cache.Get(3) + assert.True(t, ok) + assert.Equal(t, batch, gotBatch) + + mockFetcher.AssertExpectations(t) + }) + + t.Run("Delete batch", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + batch := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{ + { + Signature: []byte("signature"), + }, + }, + } + + cache.Set(4, batch) + gotBatch, ok := cache.Get(4) + assert.True(t, ok) + assert.Equal(t, batch, gotBatch) + + cache.Delete(4) + + // Setup mock for fetching after delete + mockFetcher.On("GetRollupBatchByIndex", uint64(4)).Return(nil, assert.AnError).Once() + + gotBatch, ok = cache.Get(4) + assert.False(t, ok) + assert.Nil(t, gotBatch) + + mockFetcher.AssertExpectations(t) + }) + + t.Run("Clear cache", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + batch1 := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{ + { + Signature: []byte("signature1"), + }, + }, + } + batch2 := ð.RPCRollupBatch{ + Version: 2, + Signatures: []eth.RPCBatchSignature{ + { + Signature: []byte("signature2"), + }, + }, + } + + cache.Set(5, batch1) + cache.Set(6, batch2) + + cache.Clear() + + // Setup mocks for fetching after clear + mockFetcher.On("GetRollupBatchByIndex", uint64(5)).Return(nil, assert.AnError).Once() + mockFetcher.On("GetRollupBatchByIndex", uint64(6)).Return(nil, assert.AnError).Once() + + gotBatch, ok := cache.Get(5) + assert.False(t, ok) + assert.Nil(t, gotBatch) + + gotBatch, ok = cache.Get(6) + assert.False(t, ok) + assert.Nil(t, gotBatch) + + mockFetcher.AssertExpectations(t) + }) + + t.Run("Concurrent access", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + // Pre-set a batch to avoid nil pointer in concurrent access + testBatch := ð.RPCRollupBatch{ + Version: 7, + Signatures: []eth.RPCBatchSignature{ + { + Signature: []byte("signature"), + }, + }, + } + cache.Set(7, testBatch) + + // Setup mock expectation to allow any number of calls + mockFetcher.On("GetRollupBatchByIndex", uint64(7)).Return(testBatch, nil).Maybe() + + var wg sync.WaitGroup + for i := 0; i < 10; i++ { + wg.Add(1) + go func() { + defer wg.Done() + + batch, ok := cache.Get(7) + if ok && batch != nil { + cache.Set(7, batch) + } + }() + } - cache := NewBatchCache() - cache.Set(1, nil) - _, ok := cache.Get(1) - require.True(t, ok) - cache.Delete(1) - _, ok = cache.Get(1) - require.False(t, ok) - _, ok = cache.Get(2) - require.False(t, ok) + wg.Wait() + // Final validation of cache state + batch, ok := cache.Get(7) + assert.True(t, ok) + assert.NotNil(t, batch) + assert.Equal(t, testBatch.Version, batch.Version) + }) } diff --git a/tx-submitter/types/batch_cache_validation_test.go b/tx-submitter/types/batch_cache_validation_test.go new file mode 100644 index 000000000..c809b5e5e --- /dev/null +++ b/tx-submitter/types/batch_cache_validation_test.go @@ -0,0 +1,135 @@ +package types + +import ( + "testing" + + "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/eth" + "github.com/stretchr/testify/assert" +) + +func TestBatchValidation(t *testing.T) { + t.Run("Get - Valid batch with signatures is cached", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + // Create valid batch with signatures + validBatch := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{ + { + Signer: common.HexToAddress("0x1234567890123456789012345678901234567890"), + Signature: []byte("test-signature"), + }, + }, + } + + mockFetcher.On("GetRollupBatchByIndex", uint64(1)).Return(validBatch, nil).Once() + + // Get should return the batch and cache it + batch, ok := cache.Get(1) + assert.True(t, ok) + assert.Equal(t, validBatch, batch) + assert.Equal(t, 1, len(batch.Signatures)) + + // Second get should use cache without calling fetcher + batch, ok = cache.Get(1) + assert.True(t, ok) + assert.Equal(t, validBatch, batch) + + mockFetcher.AssertExpectations(t) + }) + + t.Run("Get - Invalid batch without signatures is not cached", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + // Create invalid batch without signatures + invalidBatch := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{}, // Empty signatures + } + + mockFetcher.On("GetRollupBatchByIndex", uint64(2)).Return(invalidBatch, nil).Once() + mockFetcher.On("GetRollupBatchByIndex", uint64(2)).Return(invalidBatch, nil).Once() // Second call because not cached + + // Get should return the batch but not cache it + batch, ok := cache.Get(2) + assert.True(t, ok) // Still returns true because batch was found, just not cached + assert.Equal(t, invalidBatch, batch) + assert.Equal(t, 0, len(batch.Signatures)) + + // Second get should call fetcher again since it wasn't cached + batch, ok = cache.Get(2) + assert.True(t, ok) + assert.Equal(t, invalidBatch, batch) + + mockFetcher.AssertExpectations(t) + }) + + t.Run("Set - Valid batch with signatures is stored", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + // Create valid batch with signatures + validBatch := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{ + { + Signer: common.HexToAddress("0x1234567890123456789012345678901234567890"), + Signature: []byte("test-signature"), + }, + }, + } + + // Set should store the batch + cache.Set(3, validBatch) + + // Get should retrieve from cache + batch, ok := cache.Get(3) + assert.True(t, ok) + assert.Equal(t, validBatch, batch) + }) + + t.Run("Set - Invalid batch without signatures is not stored", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + // Create invalid batch without signatures + invalidBatch := ð.RPCRollupBatch{ + Version: 1, + Signatures: []eth.RPCBatchSignature{}, // Empty signatures + } + + // Set should not store the batch + cache.Set(4, invalidBatch) + + // Setup mock for fetching since batch shouldn't be in cache + mockFetcher.On("GetRollupBatchByIndex", uint64(4)).Return(nil, assert.AnError).Once() + + // Get should try to fetch from node and fail + batch, ok := cache.Get(4) + assert.False(t, ok) + assert.Nil(t, batch) + + mockFetcher.AssertExpectations(t) + }) + + t.Run("Set - Nil batch is not stored", func(t *testing.T) { + mockFetcher := new(MockBatchFetcher) + cache := NewBatchCache(mockFetcher) + + // Set with nil batch should not store anything + cache.Set(5, nil) + + // Setup mock for fetching since nothing should be in cache + mockFetcher.On("GetRollupBatchByIndex", uint64(5)).Return(nil, assert.AnError).Once() + + // Get should try to fetch from node and fail + batch, ok := cache.Get(5) + assert.False(t, ok) + assert.Nil(t, batch) + + mockFetcher.AssertExpectations(t) + }) +} diff --git a/tx-submitter/types/tx.go b/tx-submitter/types/tx.go new file mode 100644 index 000000000..45ec9644a --- /dev/null +++ b/tx-submitter/types/tx.go @@ -0,0 +1,13 @@ +package types + +import ( + "github.com/morph-l2/go-ethereum/core/types" +) + +// TxRecord represents a transaction record with metadata +type TxRecord struct { + Tx *types.Transaction + SendTime uint64 + QueryTimes uint64 // missing tx query times + Confirmed bool // Track if transaction has been confirmed in a block +} diff --git a/tx-submitter/utils/methods.go b/tx-submitter/utils/methods.go index b2e19782a..65a96c15a 100644 --- a/tx-submitter/utils/methods.go +++ b/tx-submitter/utils/methods.go @@ -135,3 +135,15 @@ func ParseStringToType[T any](s string) (T, error) { return result, nil } + +// WeiToGwei converts wei value to gwei string representation +func WeiToGwei(wei *big.Int) string { + if wei == nil { + return "0" + } + gwei := new(big.Float).Quo( + new(big.Float).SetInt(wei), + new(big.Float).SetInt64(1e9), + ) + return gwei.Text('f', 9) +} diff --git a/tx-submitter/utils/methods_test.go b/tx-submitter/utils/methods_test.go index 381cb65e4..ed050dda6 100644 --- a/tx-submitter/utils/methods_test.go +++ b/tx-submitter/utils/methods_test.go @@ -2,6 +2,7 @@ package utils import ( "fmt" + "math/big" "testing" "github.com/stretchr/testify/require" @@ -84,3 +85,71 @@ func TestParseStringToType(t *testing.T) { }) } } + +func TestWeiToGwei(t *testing.T) { + tests := []struct { + name string + input *big.Int + expected string + }{ + { + name: "nil input", + input: nil, + expected: "0", + }, + { + name: "zero wei", + input: big.NewInt(0), + expected: "0.000000000", + }, + { + name: "1 wei", + input: big.NewInt(1), + expected: "0.000000001", + }, + { + name: "1000 wei", + input: big.NewInt(1000), + expected: "0.000001000", + }, + { + name: "1 million wei", + input: big.NewInt(1000000), + expected: "0.001000000", + }, + { + name: "1 gwei", + input: big.NewInt(1e9), + expected: "1.000000000", + }, + { + name: "1.5 gwei", + input: big.NewInt(1.5e9), + expected: "1.500000000", + }, + { + name: "precise small number", + input: big.NewInt(123456789), + expected: "0.123456789", + }, + { + name: "large number", + input: new(big.Int).Mul(big.NewInt(1e18), big.NewInt(1000)), + expected: "1000000000000.000000000", + }, + { + name: "max precision test", + input: big.NewInt(1234567891), + expected: "1.234567891", + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + result := WeiToGwei(tt.input) + if result != tt.expected { + t.Errorf("WeiToGwei(%v) = %v, want %v", tt.input, result, tt.expected) + } + }) + } +} diff --git a/tx-submitter/utils/utils.go b/tx-submitter/utils/utils.go index bcfc02051..06de87e6e 100644 --- a/tx-submitter/utils/utils.go +++ b/tx-submitter/utils/utils.go @@ -5,6 +5,7 @@ import ( "context" "encoding/binary" "fmt" + "math/big" "reflect" "regexp" "strconv" @@ -36,10 +37,32 @@ func Loop(ctx context.Context, period time.Duration, f func()) { } func ParseFBatchIndex(calldata []byte) uint64 { - abi, _ := bindings.RollupMetaData.GetAbi() - parms, _ := abi.Methods["finalizeBatch"].Inputs.Unpack(calldata[4:]) - batchHeader, _ := ntype.DecodeBatchHeader(parms[0].([]byte)) - return batchHeader.BatchIndex + if len(calldata) < 4 { + return 0 + } + + abi, err := bindings.RollupMetaData.GetAbi() + if err != nil { + return 0 + } + + method, exists := abi.Methods["finalizeBatch"] + if !exists { + return 0 + } + + parms, err := method.Inputs.Unpack(calldata[4:]) + if err != nil || len(parms) == 0 { + return 0 + } + + batchBytes, ok := parms[0].([]byte) + if !ok || len(batchBytes) < 9 { + return 0 + } + + // 1-9 is batch index + return binary.BigEndian.Uint64(batchBytes[1:9]) } func ParseParentBatchIndex(calldata []byte) uint64 { @@ -56,6 +79,46 @@ func ParseParentBatchIndex(calldata []byte) uint64 { return batchIndex } +// SetFBatchIndex sets the batch index in the calldata while preserving all other data +func SetFBatchIndex(calldata []byte, batchIndex uint64) error { + if len(calldata) < 4 { + return fmt.Errorf("calldata too short") + } + + abi, err := bindings.RollupMetaData.GetAbi() + if err != nil { + return fmt.Errorf("failed to get ABI: %w", err) + } + + method, exists := abi.Methods["finalizeBatch"] + if !exists { + return fmt.Errorf("finalizeBatch method not found in ABI") + } + + parms, err := method.Inputs.Unpack(calldata[4:]) + if err != nil || len(parms) == 0 { + return fmt.Errorf("failed to unpack parameters: %w", err) + } + + batchBytes, ok := parms[0].([]byte) + if !ok || len(batchBytes) < 9 { + return fmt.Errorf("invalid batch bytes") + } + + // Modify only the batch index (bytes 1-9) while keeping other data unchanged + binary.BigEndian.PutUint64(batchBytes[1:9], batchIndex) + + // Re-encode the parameters + encodedParams, err := method.Inputs.Pack(batchBytes) + if err != nil { + return fmt.Errorf("failed to pack parameters: %w", err) + } + + // Update only the parameter portion, keeping the method ID unchanged + copy(calldata[4:], encodedParams) + return nil +} + // ParseL1Mempool parses the L1 mempool and returns the transactions. func ParseL1Mempool(rpc *rpc.Client, addr common.Address) ([]*types.Transaction, error) { @@ -121,10 +184,10 @@ func ParseBusinessInfo(tx *types.Transaction, a *abi.ABI) []interface{} { if err != nil { log.Error("unpack finalizeBatch error", "err", err) } - batchHeader, _ := ntype.DecodeBatchHeader(parms[0].([]byte)) + batchIndex, _ := ntype.BatchHeaderBytes(parms[0].([]byte)).BatchIndex() res = append(res, "method", method, - "finalizedIndex", batchHeader.BatchIndex, + "finalizedIndex", batchIndex, ) } @@ -185,3 +248,12 @@ func ParseL1MessageCnt(blockContexts hexutil.Bytes) uint64 { return l1msgcnt } + +// FormatTime formats a timestamp into RFC3339 format string. +// Returns "N/A" for nil or non-positive timestamps. +func FormatTime(timestamp *big.Int) string { + if timestamp == nil || timestamp.Int64() <= 0 { + return "N/A" + } + return time.Unix(timestamp.Int64(), 0).Format(time.RFC3339) +} diff --git a/tx-submitter/utils/utils_test.go b/tx-submitter/utils/utils_test.go index 71cf61114..75f2382f2 100644 --- a/tx-submitter/utils/utils_test.go +++ b/tx-submitter/utils/utils_test.go @@ -9,8 +9,35 @@ import ( // test ParseBatchIndex func TestParseBatchIndex(t *testing.T) { - calldata := "7c41b6ac00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000006a01569a961a135cd518f1d60b16690ed77cbb57ff41f140666ffb0b1938147c8531e7b0d46e12a1124700d67365d60df674e29aedc1aebfab8a2516418dcb3bf2227ae5ba08d7291c96c8cbddcc148bf48a6d68c7974b94356f53754ef6171d757000000000000000000000000000000000000000000000000000000000000007900000000000000001000000000000000000000000000000004990fbff45d7e8597d187ce8259265d90fe605c7d19e9988e1bf8f7d66cc7758f01a327088bb2b13151449d8313c281d0006d12e8453e863637b746898b6ad5a63ca0f329a4dd37e80ce4b871ad90e271ea9c989cb1c3fc0a8b7e2b597f9309d4000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004b114000000000000012e00000000665d92ba0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000012f00000000665d92c10000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013000000000665d92c70000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013100000000665d92cd0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013200000000665d92d40000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013300000000665d92da0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013400000000665d92e00000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013500000000665d92e70000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013600000000665d92ed0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013700000000665d92f40000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013800000000665d92fa0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013900000000665d93000000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013a00000000665d93040000000000000000000000000000000000000000000000000000000000000000000000000098968000010000000000000000013b00000000665d930b0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013c00000000665d93110000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013d00000000665d93180000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013e00000000665d931e0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000013f00000000665d93240000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000014000000000665d932b0000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000014100000000665d93310000000000000000000000000000000000000000000000000000000000000000000000000098968000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000004000000000000000000000000310824aa27a29d269d2f9c0a8563c0e3c98dd226000000000000000000000000343c5154ffe47c8a07df5ea6846404e68e9809a2000000000000000000000000783698dcdebdc96785c5c60ed96113612ba09c2b000000000000000000000000aac606d51de6a5abf0d1b9dbd5ed5ff2ac2e521b00000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000783698dcdebdc96785c5c60ed96113612ba09c2b000000000000000000000000310824aa27a29d269d2f9c0a8563c0e3c98dd226000000000000000000000000343c5154ffe47c8a07df5ea6846404e68e9809a2000000000000000000000000aac606d51de6a5abf0d1b9dbd5ed5ff2ac2e521b0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000783698dcdebdc96785c5c60ed96113612ba09c2b000000000000000000000000310824aa27a29d269d2f9c0a8563c0e3c98dd226000000000000000000000000343c5154ffe47c8a07df5ea6846404e68e9809a2000000000000000000000000aac606d51de6a5abf0d1b9dbd5ed5ff2ac2e521b0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000783698dcdebdc96785c5c60ed96113612ba09c2b000000000000000000000000310824aa27a29d269d2f9c0a8563c0e3c98dd226000000000000000000000000343c5154ffe47c8a07df5ea6846404e68e9809a2000000000000000000000000aac606d51de6a5abf0d1b9dbd5ed5ff2ac2e521b0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000523732e2d1bd32915c305d4c1c444a45d8d86bfac774ebe433fe9189e2e19e9191d060297472b470e78145e09b3572600000000000000000000000000000000039635922129044f931b0ae73aa7c0f1d4224f0ec6d72bd87ab0d436bbf26e0ca7e2bf29ee3ee94850a87be7c6c77deb" + calldata := "4a8d544f00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000008f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001e02c48c62b7604ecf508766324cd85afdc5faeb86de53f12dee5c24c7e25957b02018f517672a7760905227d4f085cf88d82b4793497846bb366b6cedd69af06aae5857a041c5a53ed68439ff4c9b8a79b9b749eb93f1e07ed07f58d60ebcf737300000000000000000000000000000000000000000000000000000000000000f900000000000000377b00000000000000000000000000001d987eb22c17eea2e2e3f3756599686586cbc42883ceedded826bc8508c13539cf6e017301c53247c7de720dd18b7d668cbcc17cb711a7aae46fbc43224203e0bca62c74b38e4c32df8e0656c3bd6acedc0ec57684327c99d10a1247f00ab8d3dece2c48c62b7604ecf508766324cd85afdc5faeb86de53f12dee5c24c7e25957b02e5857a041c5a53ed68439ff4c9b8a79b9b749eb93f1e07ed07f58d60ebcf7373a4d7461c3b8d74650efdca322d5fe15e699d534ee47ec9321bcb82bc7a9ec6e97bf7c21d9929b9d5d906a163a1dd8e74341ef11f7b84681b67d76953ee6ee3fb000000000000000000000000000000000000000000000000000000000000000000000000008ca2025800000000006acc320000000067d1c5aa00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc330000000067d1c5ab00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc340000000067d1c5ac00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc350000000067d1c5ad00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc360000000067d1c5ae00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc370000000067d1c5af00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc380000000067d1c5b000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800004000000000000006acc390000000067d1c5b100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc3a0000000067d1c5b200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc3b0000000067d1c5b300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc3c0000000067d1c5b500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc3d0000000067d1c5b600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc3e0000000067d1c5b700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc3f0000000067d1c5b900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc400000000067d1c5ba00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc410000000067d1c5bc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc420000000067d1c5bd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc430000000067d1c5be00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc440000000067d1c5bf00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc450000000067d1c5c000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc460000000067d1c5c100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc470000000067d1c5c200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc480000000067d1c5c300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc490000000067d1c5c400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc4a0000000067d1c5c500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc4b0000000067d1c5c600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc4c0000000067d1c5c700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc4d0000000067d1c5c800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc4e0000000067d1c5c900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc4f0000000067d1c5ca00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc500000000067d1c5cc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc510000000067d1c5cd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc520000000067d1c5ce00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc530000000067d1c5cf00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc540000000067d1c5d000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800005000000000000006acc550000000067d1c5d100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc560000000067d1c5d200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc570000000067d1c5d300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc580000000067d1c5d400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc590000000067d1c5d500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc5a0000000067d1c5d600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc5b0000000067d1c5d700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc5c0000000067d1c5d800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc5d0000000067d1c5d900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc5e0000000067d1c5da00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc5f0000000067d1c5db00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc600000000067d1c5dc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc610000000067d1c5dd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc620000000067d1c5de00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc630000000067d1c5df00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc640000000067d1c5e000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc650000000067d1c5e200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc660000000067d1c5e300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc670000000067d1c5e400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc680000000067d1c5e500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc690000000067d1c5e600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc6a0000000067d1c5e700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc6b0000000067d1c5e800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc6c0000000067d1c5e900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc6d0000000067d1c5ea00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc6e0000000067d1c5eb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc6f0000000067d1c5ec00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc700000000067d1c5ed00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc710000000067d1c5ee00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc720000000067d1c5ef00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc730000000067d1c5f000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc740000000067d1c5f300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc750000000067d1c5f400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc760000000067d1c5f500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc770000000067d1c5f600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc780000000067d1c5f700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc790000000067d1c5f800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc7a0000000067d1c5f900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc7b0000000067d1c5fa00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc7c0000000067d1c5fb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc7d0000000067d1c5fc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc7e0000000067d1c5fd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc7f0000000067d1c5ff00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc800000000067d1c60000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc810000000067d1c60200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc820000000067d1c60300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc830000000067d1c60400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc840000000067d1c60600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc850000000067d1c60700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc860000000067d1c60800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc870000000067d1c60a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc880000000067d1c60c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc890000000067d1c60e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc8a0000000067d1c60f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc8b0000000067d1c61000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc8c0000000067d1c61200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc8d0000000067d1c61300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc8e0000000067d1c61400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc8f0000000067d1c61500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc900000000067d1c61600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc910000000067d1c61700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc920000000067d1c61800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc930000000067d1c61900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc940000000067d1c61a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc950000000067d1c61b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc960000000067d1c61d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc970000000067d1c61e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc980000000067d1c61f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc990000000067d1c62000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc9a0000000067d1c62100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc9b0000000067d1c62200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acc9c0000000067d1c62300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc9d0000000067d1c62500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acc9e0000000067d1c62600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acc9f0000000067d1c62700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca00000000067d1c62800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca10000000067d1c62a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca20000000067d1c62b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca30000000067d1c62c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca40000000067d1c62d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca50000000067d1c62e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca60000000067d1c63000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca70000000067d1c63300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acca80000000067d1c63400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acca90000000067d1c63600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accaa0000000067d1c63900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accab0000000067d1c63a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accac0000000067d1c63d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accad0000000067d1c63e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accae0000000067d1c63f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accaf0000000067d1c64100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb00000000067d1c64300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb10000000067d1c64500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accb20000000067d1c64700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb30000000067d1c64900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb40000000067d1c64b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb50000000067d1c64c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb60000000067d1c64e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb70000000067d1c64f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb80000000067d1c65000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accb90000000067d1c65200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accba0000000067d1c65300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accbb0000000067d1c65400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accbc0000000067d1c65500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accbd0000000067d1c65600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accbe0000000067d1c65700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accbf0000000067d1c65900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc00000000067d1c65a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accc10000000067d1c65b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc20000000067d1c65c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc30000000067d1c65d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc40000000067d1c65e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc50000000067d1c65f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc60000000067d1c66000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006accc70000000067d1c66100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc80000000067d1c66200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accc90000000067d1c66300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accca0000000067d1c66400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acccb0000000067d1c66500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acccc0000000067d1c66600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acccd0000000067d1c66700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006accce0000000067d1c66800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acccf0000000067d1c66900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accd00000000067d1c66a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accd10000000067d1c66b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accd20000000067d1c66c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accd30000000067d1c66d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accd40000000067d1c66e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accd50000000067d1c66f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accd60000000067d1c67000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accd70000000067d1c67200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accd80000000067d1c67300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accd90000000067d1c67400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accda0000000067d1c67500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accdb0000000067d1c67600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accdc0000000067d1c67700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accdd0000000067d1c67800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accde0000000067d1c67900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accdf0000000067d1c67a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acce00000000067d1c67b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acce10000000067d1c67c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acce20000000067d1c67d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acce30000000067d1c67e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acce40000000067d1c67f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acce50000000067d1c68000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acce60000000067d1c68100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acce70000000067d1c68200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acce80000000067d1c68300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acce90000000067d1c68400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accea0000000067d1c68500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acceb0000000067d1c68600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accec0000000067d1c68700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acced0000000067d1c68800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accee0000000067d1c68900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accef0000000067d1c68b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accf00000000067d1c68d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accf10000000067d1c68e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accf20000000067d1c68f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accf30000000067d1c69000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006accf40000000067d1c69100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accf50000000067d1c69200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accf60000000067d1c69300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accf70000000067d1c69400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accf80000000067d1c69500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accf90000000067d1c69600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accfa0000000067d1c69700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accfb0000000067d1c69800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accfc0000000067d1c69900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accfd0000000067d1c69a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006accfe0000000067d1c69b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006accff0000000067d1c69c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd000000000067d1c69d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd010000000067d1c69e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd020000000067d1c69f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd030000000067d1c6a000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd040000000067d1c6a100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd050000000067d1c6a300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd060000000067d1c6a400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd070000000067d1c6a500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd080000000067d1c6a600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd090000000067d1c6a700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd0a0000000067d1c6a800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd0b0000000067d1c6a900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd0c0000000067d1c6aa00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd0d0000000067d1c6ab00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd0e0000000067d1c6ac00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd0f0000000067d1c6af00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd100000000067d1c6b100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd110000000067d1c6b200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd120000000067d1c6b300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd130000000067d1c6b500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd140000000067d1c6b800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd150000000067d1c6bb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd160000000067d1c6bd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd170000000067d1c6bf00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd180000000067d1c6c100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd190000000067d1c6c300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd1a0000000067d1c6c400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd1b0000000067d1c6c500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd1c0000000067d1c6c600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd1d0000000067d1c6c700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd1e0000000067d1c6c800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd1f0000000067d1c6ca00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd200000000067d1c6cb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd210000000067d1c6cd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd220000000067d1c6ce00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd230000000067d1c6cf00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd240000000067d1c6d100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd250000000067d1c6d300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd260000000067d1c6d400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd270000000067d1c6d500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd280000000067d1c6d600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd290000000067d1c6d800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd2a0000000067d1c6da00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd2b0000000067d1c6dc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd2c0000000067d1c6de00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd2d0000000067d1c6df00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd2e0000000067d1c6e000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd2f0000000067d1c6e200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd300000000067d1c6e300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd310000000067d1c6e400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd320000000067d1c6e500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd330000000067d1c6e600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd340000000067d1c6e800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd350000000067d1c6e900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd360000000067d1c6eb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd370000000067d1c6ed00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd380000000067d1c6ef00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd390000000067d1c6f100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd3a0000000067d1c6f200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd3b0000000067d1c6f300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd3c0000000067d1c6f500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd3d0000000067d1c6f600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd3e0000000067d1c6f700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd3f0000000067d1c6f800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd400000000067d1c6fa00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd410000000067d1c6fb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd420000000067d1c6fc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd430000000067d1c6fd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd440000000067d1c6fe00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd450000000067d1c6ff00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd460000000067d1c70000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd470000000067d1c70100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd480000000067d1c70200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd490000000067d1c70300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd4a0000000067d1c70400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd4b0000000067d1c70500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd4c0000000067d1c70600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd4d0000000067d1c70700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd4e0000000067d1c70800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd4f0000000067d1c70900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd500000000067d1c70b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd510000000067d1c70c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd520000000067d1c70d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd530000000067d1c70e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd540000000067d1c70f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd550000000067d1c71000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd560000000067d1c71100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd570000000067d1c71300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd580000000067d1c71500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd590000000067d1c71600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd5a0000000067d1c71700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd5b0000000067d1c71800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd5c0000000067d1c71900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd5d0000000067d1c71a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800004000000000000006acd5e0000000067d1c71b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd5f0000000067d1c71c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd600000000067d1c71d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd610000000067d1c71e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd620000000067d1c71f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd630000000067d1c72000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd640000000067d1c72100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd650000000067d1c72200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd660000000067d1c72300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd670000000067d1c72400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd680000000067d1c72500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd690000000067d1c72600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd6a0000000067d1c72700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd6b0000000067d1c72800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd6c0000000067d1c72900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd6d0000000067d1c72a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd6e0000000067d1c72b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800004000000000000006acd6f0000000067d1c72c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd700000000067d1c72e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd710000000067d1c72f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd720000000067d1c73000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd730000000067d1c73100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd740000000067d1c73200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd750000000067d1c73300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd760000000067d1c73400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd770000000067d1c73500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd780000000067d1c73600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd790000000067d1c73700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd7a0000000067d1c73800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd7b0000000067d1c73900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd7c0000000067d1c73a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd7d0000000067d1c73b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd7e0000000067d1c73c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd7f0000000067d1c73e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd800000000067d1c73f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd810000000067d1c74000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd820000000067d1c74100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd830000000067d1c74200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd840000000067d1c74300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd850000000067d1c74400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd860000000067d1c74500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd870000000067d1c74600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd880000000067d1c74700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acd890000000067d1c74800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd8a0000000067d1c74900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acd8b0000000067d1c74a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd8c0000000067d1c74b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd8d0000000067d1c74c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd8e0000000067d1c74d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd8f0000000067d1c74f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd900000000067d1c75000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd910000000067d1c75100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd920000000067d1c75200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd930000000067d1c75300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd940000000067d1c75500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd950000000067d1c75600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd960000000067d1c75700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd970000000067d1c75800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd980000000067d1c75900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd990000000067d1c75a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd9a0000000067d1c75b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd9b0000000067d1c75c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd9c0000000067d1c75d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd9d0000000067d1c75e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd9e0000000067d1c75f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acd9f0000000067d1c76000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acda00000000067d1c76200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda10000000067d1c76300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acda20000000067d1c76500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda30000000067d1c76600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda40000000067d1c76700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda50000000067d1c76800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda60000000067d1c76a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda70000000067d1c76b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda80000000067d1c76c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acda90000000067d1c76d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdaa0000000067d1c76e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdab0000000067d1c76f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdac0000000067d1c77000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdad0000000067d1c77100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdae0000000067d1c77200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdaf0000000067d1c77300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdb00000000067d1c77400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdb10000000067d1c77500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdb20000000067d1c77600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdb30000000067d1c77700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdb40000000067d1c77800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdb50000000067d1c77900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdb60000000067d1c77a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdb70000000067d1c77b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdb80000000067d1c77c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdb90000000067d1c77e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdba0000000067d1c78000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdbb0000000067d1c78200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdbc0000000067d1c78300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdbd0000000067d1c78400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdbe0000000067d1c78600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdbf0000000067d1c78700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc00000000067d1c78800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc10000000067d1c78b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc20000000067d1c78c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc30000000067d1c78d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc40000000067d1c78f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc50000000067d1c79100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc60000000067d1c79300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc70000000067d1c79400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc80000000067d1c79500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdc90000000067d1c79700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdca0000000067d1c79800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdcb0000000067d1c79900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdcc0000000067d1c79b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdcd0000000067d1c79c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdce0000000067d1c79e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdcf0000000067d1c79f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd00000000067d1c7a000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd10000000067d1c7a200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd20000000067d1c7a400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd30000000067d1c7a600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd40000000067d1c7a700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd50000000067d1c7a800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd60000000067d1c7a900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd70000000067d1c7aa00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd80000000067d1c7ab00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdd90000000067d1c7ac00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdda0000000067d1c7ad00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acddb0000000067d1c7ae00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acddc0000000067d1c7af00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acddd0000000067d1c7b000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdde0000000067d1c7b100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acddf0000000067d1c7b200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde00000000067d1c7b300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde10000000067d1c7b500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde20000000067d1c7b700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde30000000067d1c7b800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde40000000067d1c7b900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde50000000067d1c7bb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde60000000067d1c7bc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde70000000067d1c7bd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acde80000000067d1c7bf00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acde90000000067d1c7c000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdea0000000067d1c7c200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdeb0000000067d1c7c300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdec0000000067d1c7c400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acded0000000067d1c7c500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006acdee0000000067d1c7c600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdef0000000067d1c7c800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf00000000067d1c7c900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdf10000000067d1c7ca00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf20000000067d1c7cb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf30000000067d1c7cc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf40000000067d1c7cd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf50000000067d1c7ce00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf60000000067d1c7d000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf70000000067d1c7d100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf80000000067d1c7d200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdf90000000067d1c7d300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdfa0000000067d1c7d400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006acdfb0000000067d1c7d500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdfc0000000067d1c7d600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdfd0000000067d1c7d700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdfe0000000067d1c7d800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006acdff0000000067d1c7d900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace000000000067d1c7da00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace010000000067d1c7db00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace020000000067d1c7dd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace030000000067d1c7df00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace040000000067d1c7e000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace050000000067d1c7e100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800005000000000000006ace060000000067d1c7e200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace070000000067d1c7e300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace080000000067d1c7e400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace090000000067d1c7e500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace0a0000000067d1c7e600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace0b0000000067d1c7e700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace0c0000000067d1c7e800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace0d0000000067d1c7e900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace0e0000000067d1c7ea00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace0f0000000067d1c7eb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace100000000067d1c7ec00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace110000000067d1c7ed00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace120000000067d1c7ee00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace130000000067d1c7ef00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace140000000067d1c7f000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace150000000067d1c7f100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace160000000067d1c7f200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace170000000067d1c7f300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace180000000067d1c7f400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace190000000067d1c7f500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace1a0000000067d1c7f700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace1b0000000067d1c7f800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace1c0000000067d1c7f900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace1d0000000067d1c7fa00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace1e0000000067d1c7fb00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace1f0000000067d1c7fc00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace200000000067d1c7fd00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace210000000067d1c7fe00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace220000000067d1c7ff00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace230000000067d1c80000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace240000000067d1c80100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace250000000067d1c80200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace260000000067d1c80300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace270000000067d1c80400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace280000000067d1c80500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace290000000067d1c80600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace2a0000000067d1c80800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace2b0000000067d1c80900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace2c0000000067d1c80a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace2d0000000067d1c80c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace2e0000000067d1c80d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace2f0000000067d1c80e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace300000000067d1c81000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace310000000067d1c81100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace320000000067d1c81200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace330000000067d1c81300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace340000000067d1c81400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace350000000067d1c81500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace360000000067d1c81600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace370000000067d1c81700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace380000000067d1c81800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace390000000067d1c81900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800004000000000000006ace3a0000000067d1c81b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace3b0000000067d1c81c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace3c0000000067d1c81d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace3d0000000067d1c81f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace3e0000000067d1c82100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace3f0000000067d1c82300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace400000000067d1c82400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace410000000067d1c82500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace420000000067d1c82600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace430000000067d1c82700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace440000000067d1c82800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace450000000067d1c82900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace460000000067d1c82a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace470000000067d1c82b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace480000000067d1c82c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace490000000067d1c82d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace4a0000000067d1c82e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace4b0000000067d1c83000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace4c0000000067d1c83100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace4d0000000067d1c83200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace4e0000000067d1c83400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace4f0000000067d1c83500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace500000000067d1c83600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace510000000067d1c83700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace520000000067d1c83800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace530000000067d1c83900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace540000000067d1c83a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace550000000067d1c83b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace560000000067d1c83c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace570000000067d1c83d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace580000000067d1c83e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace590000000067d1c83f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace5a0000000067d1c84100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace5b0000000067d1c84200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace5c0000000067d1c84300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace5d0000000067d1c84400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace5e0000000067d1c84500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace5f0000000067d1c84700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace600000000067d1c84900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace610000000067d1c84a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace620000000067d1c84b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace630000000067d1c84c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace640000000067d1c84d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace650000000067d1c84e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace660000000067d1c84f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace670000000067d1c85000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace680000000067d1c85100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace690000000067d1c85200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace6a0000000067d1c85300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace6b0000000067d1c85400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace6c0000000067d1c85600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace6d0000000067d1c85800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace6e0000000067d1c85900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace6f0000000067d1c85a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace700000000067d1c85b00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace710000000067d1c85c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace720000000067d1c85d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace730000000067d1c85e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace740000000067d1c85f00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace750000000067d1c86000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace760000000067d1c86100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace770000000067d1c86300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace780000000067d1c86400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace790000000067d1c86500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace7a0000000067d1c86700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace7b0000000067d1c86800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace7c0000000067d1c86900000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace7d0000000067d1c86a00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace7e0000000067d1c86c00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace7f0000000067d1c86d00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace800000000067d1c86e00000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace810000000067d1c87000000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace820000000067d1c87100000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace830000000067d1c87200000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800003000000000000006ace840000000067d1c87300000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace850000000067d1c87400000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace860000000067d1c87500000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace870000000067d1c87600000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800002000000000000006ace880000000067d1c87700000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000006ace890000000067d1c87800000000000000000000000000000000000000000000000000000000000f42400000000001c9c3800001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fe0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000003c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000000070000000000000000000000006ab0e960911b50f6d14f249782ac12ec3e7584a0000000000000000000000000bba36cdf020788f0d08d5688c0bee3fb30ce1c8000000000000000000000000034e387b37d3adeaa6d5b92ce30de3af3dca39796000000000000000000000000a59b26db10c5ca26a97aa2fd2e74cb8da9d1eb65000000000000000000000000f834ffbeb6bb3f4841afc6b5fb40b94cd580fa2300000000000000000000000061f2945d4bc9e40b66a6376d1094a50438f613e2000000000000000000000000b6cf39ee72e0127e6ea6059e38b8c197227a6ac700000000000000000000000000000000000000000000000000000000000000070000000000000000000000006ab0e960911b50f6d14f249782ac12ec3e7584a0000000000000000000000000bba36cdf020788f0d08d5688c0bee3fb30ce1c8000000000000000000000000034e387b37d3adeaa6d5b92ce30de3af3dca39796000000000000000000000000a59b26db10c5ca26a97aa2fd2e74cb8da9d1eb65000000000000000000000000f834ffbeb6bb3f4841afc6b5fb40b94cd580fa2300000000000000000000000061f2945d4bc9e40b66a6376d1094a50438f613e2000000000000000000000000b6cf39ee72e0127e6ea6059e38b8c197227a6ac700000000000000000000000000000000000000000000000000000000000000070000000000000000000000006ab0e960911b50f6d14f249782ac12ec3e7584a0000000000000000000000000bba36cdf020788f0d08d5688c0bee3fb30ce1c8000000000000000000000000034e387b37d3adeaa6d5b92ce30de3af3dca39796000000000000000000000000a59b26db10c5ca26a97aa2fd2e74cb8da9d1eb65000000000000000000000000f834ffbeb6bb3f4841afc6b5fb40b94cd580fa2300000000000000000000000061f2945d4bc9e40b66a6376d1094a50438f613e2000000000000000000000000b6cf39ee72e0127e6ea6059e38b8c197227a6ac700000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000015f903b2fe6b812c9c5b4882525df682e2a26238bdd18badf5a4d3bf2dc2ec8acd600d92182181e25359a631da62585b00000000000000000000000000000000022a08b55fac8d2669fb3a47977ac43b2b9918d953532cab1625c9e94f49c333b7160442a38e8399a285646df4081c60" bs, err := hex.DecodeString(calldata) require.NoError(t, err) - require.EqualValues(t, ParseParentBatchIndex(bs), 16) + require.EqualValues(t, ParseParentBatchIndex(bs), 14203) +} + +func TestParseFBatchIndex(t *testing.T) { + // Test case 1: Original test case + calldata := "13361101000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000f90000000000000036a700000000000000000000000000001d630ed957794a607e274cdd09fd72217c7c2d9c0be5c11f993d66bf58f1ba098d950170e28b2b52dabe6efe96dbcfe85f691872adb80af292efbb7ded8e53ada1a000d75f5b0490922155046b8428750e9eede0df103c264d67434112e0b4320b8702e53bafa072ec3bbdafbbed9601a82f193d6d64db604ed931a0617779ccebb63d83b92dd5879bfb5e44ba433bafbb65afc822c7d000210ec0d296c59446d2cfa4d7461c3b8d74650efdca322d5fe15e699d534ee47ec9321bcb82bc7a9ec6e9260ff211c1f2db0cf21655a25035100797bc47c339502a0f1a791c0739d4e96000000000000000" + bs, err := hex.DecodeString(calldata) + require.NoError(t, err) + require.EqualValues(t, ParseFBatchIndex(bs), 13991) + + // Test case 2: Modify batch index + err = SetFBatchIndex(bs, 13992) + require.NoError(t, err) + require.EqualValues(t, ParseFBatchIndex(bs), 13992) + + // Test case 3: Test with invalid calldata + invalidCalldata := []byte{0x12, 0x34} // Too short + require.EqualValues(t, ParseFBatchIndex(invalidCalldata), 0) + + // Test case 4: Test with large batch index + err = SetFBatchIndex(bs, 999999) + require.NoError(t, err) + require.EqualValues(t, ParseFBatchIndex(bs), 999999) + + // Test case 5: Test with zero batch index + err = SetFBatchIndex(bs, 0) + require.NoError(t, err) + require.EqualValues(t, ParseFBatchIndex(bs), 0) } From a1e77833a79c02927519c23f2397adacf870964a Mon Sep 17 00:00:00 2001 From: FletcherMan Date: Tue, 15 Apr 2025 18:02:30 +0800 Subject: [PATCH 32/33] upgrade dependency (#749) --- .gitmodules | 2 +- Makefile | 4 ++-- bindings/go.mod | 4 ++-- bindings/go.sum | 4 ++-- contracts/go.mod | 4 ++-- contracts/go.sum | 4 ++-- go-ethereum | 2 +- node/go.mod | 4 ++-- node/go.sum | 8 ++++---- ops/l2-genesis/go.mod | 4 ++-- ops/l2-genesis/go.sum | 4 ++-- ops/tools/go.mod | 4 ++-- ops/tools/go.sum | 8 ++++---- oracle/go.mod | 4 ++-- oracle/go.sum | 8 ++++---- tx-submitter/go.mod | 7 ++++--- tx-submitter/go.sum | 10 ++++++---- 17 files changed, 44 insertions(+), 41 deletions(-) diff --git a/.gitmodules b/.gitmodules index e14290d97..8e8091378 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +1,4 @@ [submodule "go-ethereum"] path = go-ethereum url = https://github.com/morph-l2/go-ethereum.git -branch = feature/block_context +branch = release/2.0.x diff --git a/Makefile b/Makefile index 59a959ce4..f672c84a1 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ ################## update dependencies #################### -ETHEREUM_TARGET_VERSION := v1.10.14-0.20241226065029-3b9465a03a8c -TENDERMINT_TARGET_VERSION := v0.3.2-0.20250115141431-c84dfe5c8533 +ETHEREUM_TARGET_VERSION := morph-v2.0.4 +TENDERMINT_TARGET_VERSION := v0.3.2 ETHEREUM_MODULE_NAME := github.com/morph-l2/go-ethereum TENDERMINT_MODULE_NAME := github.com/morph-l2/tendermint diff --git a/bindings/go.mod b/bindings/go.mod index 746274140..bcdc726e7 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -2,9 +2,9 @@ module morph-l2/bindings go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 -require github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c +require github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb require ( github.com/VictoriaMetrics/fastcache v1.12.2 // indirect diff --git a/bindings/go.sum b/bindings/go.sum index 2d2d93023..ee808bcf4 100644 --- a/bindings/go.sum +++ b/bindings/go.sum @@ -109,8 +109,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= diff --git a/contracts/go.mod b/contracts/go.mod index c1f676f6e..1b8bf5a9f 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -2,11 +2,11 @@ module morph-l2/contract go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 require ( github.com/iden3/go-iden3-crypto v0.0.16 - github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c + github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb github.com/stretchr/testify v1.9.0 ) diff --git a/contracts/go.sum b/contracts/go.sum index df3e167c5..32a747f7f 100644 --- a/contracts/go.sum +++ b/contracts/go.sum @@ -25,8 +25,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= diff --git a/go-ethereum b/go-ethereum index 3b9465a03..13225617e 160000 --- a/go-ethereum +++ b/go-ethereum @@ -1 +1 @@ -Subproject commit 3b9465a03a8cebd3e499cd5c0ea110dfc0fbefaf +Subproject commit 13225617e0fb479314183e54148458f543479b8b diff --git a/node/go.mod b/node/go.mod index 560d05a0f..d921a6776 100644 --- a/node/go.mod +++ b/node/go.mod @@ -2,7 +2,7 @@ module morph-l2/node go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 require ( github.com/cenkalti/backoff/v4 v4.1.3 @@ -10,7 +10,7 @@ require ( github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/golang-lru v1.0.2 github.com/klauspost/compress v1.17.9 - github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c + github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb github.com/prometheus/client_golang v1.17.0 github.com/spf13/viper v1.13.0 github.com/stretchr/testify v1.9.0 diff --git a/node/go.sum b/node/go.sum index 0791c3e4f..82da85dd8 100644 --- a/node/go.sum +++ b/node/go.sum @@ -360,10 +360,10 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= +github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index baee14bf0..053ad7e84 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -2,11 +2,11 @@ module morph-l2/morph-deployer go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 require ( github.com/holiman/uint256 v1.2.4 - github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c + github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb github.com/stretchr/testify v1.9.0 github.com/urfave/cli v1.22.14 ) diff --git a/ops/l2-genesis/go.sum b/ops/l2-genesis/go.sum index e8a16264d..b5dd3ed27 100644 --- a/ops/l2-genesis/go.sum +++ b/ops/l2-genesis/go.sum @@ -143,8 +143,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/tools/go.mod b/ops/tools/go.mod index 348b937a5..e45ce72be 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -2,10 +2,10 @@ module morph-l2/tools go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 require ( - github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c + github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb github.com/tendermint/tendermint v0.35.9 ) diff --git a/ops/tools/go.sum b/ops/tools/go.sum index 22b9bac33..becd486d8 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -163,10 +163,10 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= +github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/oracle/go.mod b/oracle/go.mod index 5622af61e..e8a0f9eab 100644 --- a/oracle/go.mod +++ b/oracle/go.mod @@ -2,12 +2,12 @@ module morph-l2/oracle go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 require ( github.com/go-kit/kit v0.12.0 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c + github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/oracle/go.sum b/oracle/go.sum index d087a3498..0fd4345cc 100644 --- a/oracle/go.sum +++ b/oracle/go.sum @@ -175,10 +175,10 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= +github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/tx-submitter/go.mod b/tx-submitter/go.mod index ed2e824bd..07d22fb7d 100644 --- a/tx-submitter/go.mod +++ b/tx-submitter/go.mod @@ -2,14 +2,15 @@ module morph-l2/tx-submitter go 1.22 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 require ( github.com/holiman/uint256 v1.2.4 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c + github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 + github.com/syndtr/goleveldb v1.0.1-0.20220614013038-64ee5596c38a github.com/tendermint/tendermint v0.35.9 github.com/urfave/cli v1.22.14 gopkg.in/natefinch/lumberjack.v2 v2.2.1 @@ -71,8 +72,8 @@ require ( github.com/scroll-tech/zktrie v0.8.4 // indirect github.com/shirou/gopsutil v3.21.11+incompatible // indirect github.com/status-im/keycard-go v0.3.2 // indirect + github.com/stretchr/objx v0.5.2 // indirect github.com/supranational/blst v0.3.11 // indirect - github.com/syndtr/goleveldb v1.0.1-0.20220614013038-64ee5596c38a // indirect github.com/tklauser/go-sysconf v0.3.13 // indirect github.com/tklauser/numcpus v0.7.0 // indirect github.com/tyler-smith/go-bip39 v1.1.0 // indirect diff --git a/tx-submitter/go.sum b/tx-submitter/go.sum index f47a4ef96..27faa1c08 100644 --- a/tx-submitter/go.sum +++ b/tx-submitter/go.sum @@ -164,10 +164,10 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c h1:We0UnGcfs8wOSegGa97NjUE/6dZHE4ASuIWDuYBa+u8= -github.com/morph-l2/go-ethereum v1.10.14-0.20241226065029-3b9465a03a8c/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533 h1:qhBMCyTQ/ezOpeqHGKjr4qSN/B/bGFByuYjQqDt5wiw= -github.com/morph-l2/tendermint v0.3.2-0.20250115141431-c84dfe5c8533/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= +github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= @@ -239,6 +239,8 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+ github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= From 9ee2c201469c73a778e0d0f8881710d567a10279 Mon Sep 17 00:00:00 2001 From: corey Date: Fri, 25 Apr 2025 15:23:58 +0800 Subject: [PATCH 33/33] Get all blobs corresponding to this timestamp when filter failed (#745) (#752) Co-authored-by: FletcherMan --- Makefile | 2 +- bindings/go.mod | 2 +- bindings/go.sum | 4 +- contracts/go.mod | 2 +- contracts/go.sum | 4 +- go-ethereum | 2 +- node/derivation/batch_info.go | 14 ++--- node/derivation/beacon.go | 32 +++++++++++ node/derivation/beacon_test.go | 1 + node/derivation/derivation.go | 89 ++++++++++++++++++++++++++---- node/derivation/derivation_test.go | 10 +--- node/go.mod | 2 +- node/go.sum | 4 +- ops/l2-genesis/go.mod | 2 +- ops/l2-genesis/go.sum | 4 +- ops/tools/go.mod | 2 +- ops/tools/go.sum | 4 +- ops/tools/multisend/main.go | 4 +- oracle/go.mod | 2 +- oracle/go.sum | 4 +- tx-submitter/go.mod | 2 +- tx-submitter/go.sum | 4 +- 22 files changed, 144 insertions(+), 52 deletions(-) create mode 100644 node/derivation/beacon_test.go diff --git a/Makefile b/Makefile index f672c84a1..bf959f0d4 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ ################## update dependencies #################### -ETHEREUM_TARGET_VERSION := morph-v2.0.4 +ETHEREUM_TARGET_VERSION := morph-v2.0.5 TENDERMINT_TARGET_VERSION := v0.3.2 ETHEREUM_MODULE_NAME := github.com/morph-l2/go-ethereum diff --git a/bindings/go.mod b/bindings/go.mod index bcdc726e7..dc0b9c5da 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -4,7 +4,7 @@ go 1.22 replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 -require github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb +require github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 require ( github.com/VictoriaMetrics/fastcache v1.12.2 // indirect diff --git a/bindings/go.sum b/bindings/go.sum index ee808bcf4..23fc6b9ee 100644 --- a/bindings/go.sum +++ b/bindings/go.sum @@ -109,8 +109,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 h1:Mtl4361Zdc8w3SgCI7L/NuPeLaVdX1L/uP/D4ur/9Yw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= diff --git a/contracts/go.mod b/contracts/go.mod index 1b8bf5a9f..620cffe96 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -6,7 +6,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/iden3/go-iden3-crypto v0.0.16 - github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb + github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 github.com/stretchr/testify v1.9.0 ) diff --git a/contracts/go.sum b/contracts/go.sum index 32a747f7f..f63fadb08 100644 --- a/contracts/go.sum +++ b/contracts/go.sum @@ -25,8 +25,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 h1:Mtl4361Zdc8w3SgCI7L/NuPeLaVdX1L/uP/D4ur/9Yw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= diff --git a/go-ethereum b/go-ethereum index 13225617e..a8c90556c 160000 --- a/go-ethereum +++ b/go-ethereum @@ -1 +1 @@ -Subproject commit 13225617e0fb479314183e54148458f543479b8b +Subproject commit a8c90556cea1e233429a183ca61eeaaec42e043b diff --git a/node/derivation/batch_info.go b/node/derivation/batch_info.go index 4c1470aa0..d795092b8 100644 --- a/node/derivation/batch_info.go +++ b/node/derivation/batch_info.go @@ -80,6 +80,9 @@ func (bi *BatchInfo) TxNum() uint64 { // ParseBatch This method is externally referenced for parsing Batch func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { + if len(batch.Sidecar.Blobs) == 0 { + return fmt.Errorf("blobs length can not be zero") + } parentBatchHeader := types.BatchHeaderBytes(batch.ParentBatchHeader) parentBatchIndex, err := parentBatchHeader.BatchIndex() if err != nil { @@ -104,9 +107,6 @@ func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { return fmt.Errorf("decode batch header version error:%v", err) } if parentVersion == 0 { - if len(batch.Sidecar.Blobs) == 0 { - return fmt.Errorf("blobs length can not be zero") - } blobData, err := types.RetrieveBlobBytes(&batch.Sidecar.Blobs[0]) if err != nil { return err @@ -200,11 +200,9 @@ func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { } var txs []*eth.Transaction var err error - if len(batch.Sidecar.Blobs) != 0 { - txs, err = tq.dequeue(int(block.txsNum) - int(block.l1MsgNum)) - if err != nil { - return fmt.Errorf("decode txsPayload error:%v", err) - } + txs, err = tq.dequeue(int(block.txsNum) - int(block.l1MsgNum)) + if err != nil { + return fmt.Errorf("decode txsPayload error:%v", err) } txsNum += uint64(block.txsNum) l1MsgNum += uint64(block.l1MsgNum) diff --git a/node/derivation/beacon.go b/node/derivation/beacon.go index ab35a373a..d94101d63 100644 --- a/node/derivation/beacon.go +++ b/node/derivation/beacon.go @@ -241,3 +241,35 @@ func dataAndHashesFromTxs(txs types.Transactions, targetTx *types.Transaction) [ } return hashes } + +// Note: ForceGetAllBlobs is defined in derivation.go in the same package + +// GetBlobSidecarsEnhanced is an enhanced version of GetBlobSidecars method, combining two approaches to fetch blob data +// If the first method fails or returns no blobs, it will try the second method +func (cl *L1BeaconClient) GetBlobSidecarsEnhanced(ctx context.Context, ref L1BlockRef, hashes []IndexedBlobHash) ([]*BlobSidecar, error) { + // First try using the original GetBlobSidecars method + blobSidecars, err := cl.GetBlobSidecars(ctx, ref, hashes) + if err != nil || len(blobSidecars) == 0 { + // If failed or no blobs retrieved, try the second method + slotFn, err := cl.GetTimeToSlotFn(ctx) + if err != nil { + return nil, fmt.Errorf("failed to get timeToSlotFn: %w", err) + } + + slot, err := slotFn(ref.Time) + if err != nil { + return nil, fmt.Errorf("failed to calculate slot: %w", err) + } + + // Build request URL and use apiReq method directly + method := fmt.Sprintf("%s%d", sidecarsMethodPrefix, slot) + var blobResp APIGetBlobSidecarsResponse + if err := cl.apiReq(ctx, &blobResp, method); err != nil { + return nil, fmt.Errorf("failed to request blob sidecars: %w", err) + } + + return blobResp.Data, nil + } + + return blobSidecars, nil +} diff --git a/node/derivation/beacon_test.go b/node/derivation/beacon_test.go new file mode 100644 index 000000000..2f79aa0c9 --- /dev/null +++ b/node/derivation/beacon_test.go @@ -0,0 +1 @@ +package derivation diff --git a/node/derivation/derivation.go b/node/derivation/derivation.go index a3fc43fbe..25afbc0d9 100644 --- a/node/derivation/derivation.go +++ b/node/derivation/derivation.go @@ -13,8 +13,10 @@ import ( "github.com/morph-l2/go-ethereum/accounts/abi" "github.com/morph-l2/go-ethereum/accounts/abi/bind" "github.com/morph-l2/go-ethereum/common" + "github.com/morph-l2/go-ethereum/common/hexutil" eth "github.com/morph-l2/go-ethereum/core/types" "github.com/morph-l2/go-ethereum/crypto" + "github.com/morph-l2/go-ethereum/crypto/kzg4844" geth "github.com/morph-l2/go-ethereum/eth" "github.com/morph-l2/go-ethereum/ethclient" "github.com/morph-l2/go-ethereum/ethclient/authclient" @@ -297,26 +299,91 @@ func (d *Derivation) fetchRollupDataByTxHash(txHash common.Hash, blockNumber uin if err != nil { return nil, err } - // query blob - block, err := d.l1Client.BlockByNumber(d.ctx, big.NewInt(int64(blockNumber))) - if err != nil { - return nil, err - } - indexedBlobHashes := dataAndHashesFromTxs(block.Transactions(), tx) + + // Get block header to retrieve timestamp header, err := d.l1Client.HeaderByNumber(d.ctx, big.NewInt(int64(blockNumber))) if err != nil { return nil, err } - var bts eth.BlobTxSidecar - if len(indexedBlobHashes) != 0 { - bts, err = d.l1BeaconClient.GetBlobSidecar(context.Background(), L1BlockRef{ + + // Get transaction blob hashes + blobHashes := tx.BlobHashes() + if len(blobHashes) > 0 { + d.logger.Info("Transaction contains blobs", "txHash", txHash, "blobCount", len(blobHashes)) + + // Initialize indexedBlobHashes as nil + var indexedBlobHashes []IndexedBlobHash + + // Only try to build IndexedBlobHash array if not forcing get all blobs + // Try to get the block to build IndexedBlobHash array + block, err := d.l1Client.BlockByNumber(d.ctx, big.NewInt(int64(blockNumber))) + if err == nil { + // Successfully got the block, now build IndexedBlobHash array + d.logger.Info("Building IndexedBlobHash array from block", "blockNumber", blockNumber) + indexedBlobHashes = dataAndHashesFromTxs(block.Transactions(), tx) + d.logger.Info("Built IndexedBlobHash array", "count", len(indexedBlobHashes)) + } else { + d.logger.Info("Failed to get block, will try fetching all blobs", "blockNumber", blockNumber, "error", err) + } + + // Get all blobs corresponding to this timestamp + blobSidecars, err := d.l1BeaconClient.GetBlobSidecarsEnhanced(d.ctx, L1BlockRef{ Time: header.Time, }, indexedBlobHashes) if err != nil { - return nil, fmt.Errorf("getBlockSidecar error:%v", err) + return nil, fmt.Errorf("failed to get blobs, continuing processing:%v", err) + } + if len(blobSidecars) > 0 { + // Create blob sidecar + var blobTxSidecar eth.BlobTxSidecar + matchedCount := 0 + + // Match blobs + for _, sidecar := range blobSidecars { + var commitment kzg4844.Commitment + copy(commitment[:], sidecar.KZGCommitment[:]) + versionedHash := KZGToVersionedHash(commitment) + + for _, expectedHash := range blobHashes { + if bytes.Equal(versionedHash[:], expectedHash[:]) { + matchedCount++ + d.logger.Info("Found matching blob", "index", sidecar.Index, "hash", versionedHash.Hex()) + + // Decode and process blob data + var blob Blob + b, err := hexutil.Decode(sidecar.Blob) + if err != nil { + d.logger.Error("Failed to decode blob data", "error", err) + continue + } + copy(blob[:], b) + + // Verify blob + if err := VerifyBlobProof(&blob, commitment, kzg4844.Proof(sidecar.KZGProof)); err != nil { + d.logger.Error("Blob verification failed", "error", err) + continue + } + + // Add to sidecar + blobTxSidecar.Blobs = append(blobTxSidecar.Blobs, *blob.KZGBlob()) + blobTxSidecar.Commitments = append(blobTxSidecar.Commitments, commitment) + blobTxSidecar.Proofs = append(blobTxSidecar.Proofs, kzg4844.Proof(sidecar.KZGProof)) + break + } + } + } + + d.logger.Info("Blob matching results", "matched", matchedCount, "expected", len(blobHashes)) + if matchedCount == 0 { + return nil, fmt.Errorf("no matching versionedHash was found") + } + batch.Sidecar = blobTxSidecar + } else { + return nil, fmt.Errorf("not matched blob,txHash:%v,blockNumber:%v", txHash, blockNumber) } } - batch.Sidecar = bts + + // Get L2 height l2Height, err := d.l2Client.BlockNumber(d.ctx) if err != nil { return nil, fmt.Errorf("query l2 block number error:%v", err) diff --git a/node/derivation/derivation_test.go b/node/derivation/derivation_test.go index 653ce96ce..69eb750d6 100644 --- a/node/derivation/derivation_test.go +++ b/node/derivation/derivation_test.go @@ -34,16 +34,10 @@ func TestUnPackData(t *testing.T) { require.Error(t, err) legacyTxData, err := hexutil.Decode(legacyData) require.NoError(t, err) - legacyBatch, err := d.UnPackData(legacyTxData) - require.NoError(t, err) - LegacyBatchInfo := new(BatchInfo) - err = LegacyBatchInfo.ParseBatch(legacyBatch) + _, err = d.UnPackData(legacyTxData) require.NoError(t, err) beforeMoveBctxTxData, err := hexutil.Decode(beforeMoveBctxData) require.NoError(t, err) - beforeMoveBctxBatch, err := d.UnPackData(beforeMoveBctxTxData) - require.NoError(t, err) - beforeMoveBctxBatchInfo := new(BatchInfo) - err = beforeMoveBctxBatchInfo.ParseBatch(beforeMoveBctxBatch) + _, err = d.UnPackData(beforeMoveBctxTxData) require.NoError(t, err) } diff --git a/node/go.mod b/node/go.mod index d921a6776..b28269b88 100644 --- a/node/go.mod +++ b/node/go.mod @@ -10,7 +10,7 @@ require ( github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/golang-lru v1.0.2 github.com/klauspost/compress v1.17.9 - github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb + github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 github.com/prometheus/client_golang v1.17.0 github.com/spf13/viper v1.13.0 github.com/stretchr/testify v1.9.0 diff --git a/node/go.sum b/node/go.sum index 82da85dd8..b2b21adf7 100644 --- a/node/go.sum +++ b/node/go.sum @@ -360,8 +360,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 h1:Mtl4361Zdc8w3SgCI7L/NuPeLaVdX1L/uP/D4ur/9Yw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index 053ad7e84..8f84307d5 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -6,7 +6,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/holiman/uint256 v1.2.4 - github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb + github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 github.com/stretchr/testify v1.9.0 github.com/urfave/cli v1.22.14 ) diff --git a/ops/l2-genesis/go.sum b/ops/l2-genesis/go.sum index b5dd3ed27..8eeef9b97 100644 --- a/ops/l2-genesis/go.sum +++ b/ops/l2-genesis/go.sum @@ -143,8 +143,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 h1:Mtl4361Zdc8w3SgCI7L/NuPeLaVdX1L/uP/D4ur/9Yw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/tools/go.mod b/ops/tools/go.mod index e45ce72be..d5f3153f2 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -5,7 +5,7 @@ go 1.22 replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.2 require ( - github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb + github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 github.com/tendermint/tendermint v0.35.9 ) diff --git a/ops/tools/go.sum b/ops/tools/go.sum index becd486d8..803010fac 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -163,8 +163,8 @@ github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqky github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 h1:Mtl4361Zdc8w3SgCI7L/NuPeLaVdX1L/uP/D4ur/9Yw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/ops/tools/multisend/main.go b/ops/tools/multisend/main.go index c32653651..a7f58bc98 100644 --- a/ops/tools/multisend/main.go +++ b/ops/tools/multisend/main.go @@ -22,7 +22,7 @@ var ( chainId *big.Int fundPrivKey = crypto.ToECDSAUnsafe(hexutil.MustDecode("0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80")) urls = []string{"http://localhost:8945", "http://localhost:8545", "http://localhost:8645", "http://localhost:8745", "http://localhost:8845"} - senderNum = 50 + senderNum = 10 duration = 120 * time.Minute ) @@ -67,7 +67,7 @@ func main() { }(sender, i) } count++ - time.Sleep(300 * time.Millisecond) + time.Sleep(800 * time.Millisecond) fmt.Println() } } diff --git a/oracle/go.mod b/oracle/go.mod index e8a0f9eab..fdc02b6bd 100644 --- a/oracle/go.mod +++ b/oracle/go.mod @@ -7,7 +7,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/go-kit/kit v0.12.0 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb + github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/tendermint/tendermint v0.35.9 diff --git a/oracle/go.sum b/oracle/go.sum index 0fd4345cc..c57d0deeb 100644 --- a/oracle/go.sum +++ b/oracle/go.sum @@ -175,8 +175,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 h1:Mtl4361Zdc8w3SgCI7L/NuPeLaVdX1L/uP/D4ur/9Yw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/tx-submitter/go.mod b/tx-submitter/go.mod index 07d22fb7d..6335257ff 100644 --- a/tx-submitter/go.mod +++ b/tx-submitter/go.mod @@ -7,7 +7,7 @@ replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3. require ( github.com/holiman/uint256 v1.2.4 github.com/morph-l2/externalsign v0.3.1 - github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb + github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 github.com/prometheus/client_golang v1.17.0 github.com/stretchr/testify v1.9.0 github.com/syndtr/goleveldb v1.0.1-0.20220614013038-64ee5596c38a diff --git a/tx-submitter/go.sum b/tx-submitter/go.sum index 27faa1c08..d2a8b941f 100644 --- a/tx-submitter/go.sum +++ b/tx-submitter/go.sum @@ -164,8 +164,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q5O4dQo= github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb h1:CRfw+WGEMjcaO6O+gJcCa2jr4/Y1w5lSJtyZ5pRFQLw= -github.com/morph-l2/go-ethereum v1.10.14-0.20250415093656-13225617e0fb/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1 h1:Mtl4361Zdc8w3SgCI7L/NuPeLaVdX1L/uP/D4ur/9Yw= +github.com/morph-l2/go-ethereum v1.10.14-0.20250424011308-f42440d1ace1/go.mod h1:sMJCfHOBzVRDkM2yF/Hy+oUk2rgC0CQZHTLs0cyzhhk= github.com/morph-l2/tendermint v0.3.2 h1:Gu6Uj2G6c3YP2NAKFi7A46JZaOCdD4zfZDKCjt0pDm8= github.com/morph-l2/tendermint v0.3.2/go.mod h1:TtCzp9l6Z6yDUiwv3TbqKqw8Q8RKp3fSz5+adO1/Y8w= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=

  • 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

    Ml6Zy@DN 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≷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%0ASp9BBO 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

    ZqsN#z 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